Plugin PDF

Silnik WKHTMLTOPDF:  https://wkhtmltopdf.org/downloads.html

Plugin CakePDF: https://github.com/FriendsOfCake/CakePdf

Instalacja silnika – pobrać dla odpowiedniej wersji debiana

# apt install ./wkhtmltox_0.12.5-1.stretch_amd64(3).deb

/usr/local/bin/wkhtmltopdf

Instalacja pluginu:

# cd /var/www/html/moj_projekt

# composer require friendsofcake/cakepdf

# bin/cake plugin load CakePdf

routes.pdf – w odpowiednich zakresach

$builder->setExtensions(['pdf', 'json', 'csv']);

Konfiguracja:

Configure::write('CakePdf', [
   'engine' => 'CakePdf.WkHtmlToPdf',
   'binary' => '/usr/local/bin/wkhtmltopdf',
   'margin' => [
   'bottom' => 15,
   'left'   => 15,
   'right'  => 15,
   'top'    => 15,
  ],
'orientation' => 'portrait',
// 'download' => true,
]);

Kontroler Transactions

use CakePdf\View\PdfView;

class TransactionsController extends AppController
{
   public function initialize(): void
   {
      parent::initialize();
      $this->addViewClasses([PdfView::class]);
   }

} // TransactionsController