2016-12-20 149 views
0

我添加$pdf->set_option('isPhpEnabled', true);是这样的:如何在laravel dompdf中添加页码?

public function listdata() 
{ 
    $data = User::all(); 

    $pdf=PDF::loadView('print_tests.test_pdf', ['data' => $data]); 
    $pdf->set_option('isPhpEnabled', true); 
    $pdf->setPaper('L', 'landscape'); 
    return $pdf->stream('test_pdf.pdf'); 
} 

在车身(查看)我添加这样的:

<script type="text/php"> 
    if (isset($pdf)) { 
     // OLD 
     // $font = Font_Metrics::get_font("helvetica", "bold"); 
     // $pdf->page_text(72, 18, "{PAGE_NUM} of {PAGE_COUNT}", $font, 6, array(255,0,0)); 
     // v.0.7.0 and greater 
     $x = 72; 
     $y = 18; 
     $text = "{PAGE_NUM} of {PAGE_COUNT}"; 
     $font = $fontMetrics->get_font("helvetica", "bold"); 
     $size = 6; 
     $color = array(255,0,0); 
     $word_space = 0.0; // default 
     $char_space = 0.0; // default 
     $angle = 0.0; // default 
     $pdf->page_text($x, $y, $text, $font, $size, $color, $word_space, $char_space, $angle); 
    } 
</script> 

有存在错误是这样的:

FatalThrowableError in PrintTestController.php line 21: Call to undefined method Barryvdh\DomPDF\PDF::set_option() 

注:

我使用barryvdh/laravel-dompdf“:”^ 0.7.0“(v0.7 )

有没有人可以帮助我?

+0

@Ohgodwhy,我还是很困惑。这:'$ dompdf-> set_option(“isPhpEnabled”,true);'。它被放置在控制器或哪里? –

+0

这是正确的。在运行时(当前你是如何在控制器中)是很好的。 – Ohgodwhy

+0

@Ohgodwhy,但为什么还是错误。它看起来像我的代码是正确 –

回答

0

请使用setOptions()代替set_option()

public function listdata() 
{ 
    $data = User::all(); 

    $pdf = PDF::loadView('print_tests.test_pdf', ['data' => $data]); 
    $pdf->setOptions(['isPhpEnabled' => true]); 
    $pdf->setPaper('L', 'landscape'); 
    return $pdf->stream('test_pdf.pdf'); 
} 

和页码,

  1. 首先请不要使用类似<script type="text/php"> ...
  2. 没有功能如page_text和$是传递给视图,而不是数据。

的唯一方法页码可以使用page-breaks

<style> 
.page-break { 
    page-break-after: always; 
} 
</style> 

是添加到您的视图,然后自行添加页码为文字添加。

+0

存在这样的错误:'调用未定义的方法Barryvdh \ DomPDF \ PDF :: setOptions()' –

+0

@samueltoh似乎在0.7.0中没有'setOptions()'...请执行'composer remove barryvdh/laravel-dompdf',然后'composer require barryvdh/laravel-dompdf' – prateekkathal

+0

失败。看这里:http://postimg.org/image/8glbaktz1 –