akyos/mpdf-bundle

A wrapper for mPDF class which allows to use mPDF in Symfony2 projects

dev-master 2025-03-20 11:26 UTC

This package is auto-updated.

Last update: 2025-03-20 11:26:53 UTC


README

Using Composer (Symfony 2.x, Symfony 3.0.x)

  • Run a command
composer require akyos/mpdf-bundle
  • Add a new line to app/AppKernel.php:
$bundles = [
  ...
  new Akyos\MpdfBundle\AkyosMpdfBundle(),
]

Using deps-file (Symfony 2.0.x)

  • Add a new entry to your deps file:
[AkyosMpdfBundle]
    git=https://github.com/akyoscommunication/mpdf-bundle.git
    target=/bundles/Akyos/MpdfBundle 
  • Add a new line to app/AppKernel.php:
new Akyos\MpdfBundle\AkyosMpdfBundle(), 
  • Add a new line to app/autoload.php:
'Akyos' => __DIR__.'/../vendor/bundles',
  • Run a command
php bin/vendors install

A Quick Start guide

How to create a Response object

This small example creates a PDF document with format A4 and portrait orientation:

public function indexAction()
{
   return new \Akyos\MpdfBundle\Response\PDFResponse($this->getMpdfService()->generatePdf('Hello World'));
}

/**
 * @return \Akyos\MpdfBundle\Service\PDFService
 */
private function getMpdfService()
{
  return $this->get('akyos_mpdf.pdf');
}

Generate a variable with PDF content

Sometimes it is necessary to get a variable which content is PDF document.

$myVar = $this->getMpdfService()->generatePdf('Hello World');

How to get an instance of \mPDF class

If you would like to work with mPDF class itself, you can use a getMpdf method:

$mpdf = new \Mpdf\Mpdf();

Additional options

Additional options might be passed via the second argument:

public function indexAction()
{
    return new \Akyos\MpdfBundle\Response\PDFResponse($this->getMpdfService()->generatePdf('Hello World', [
            'format' => 'A4-L' // A4 page, landscape orientation
    ]));
}

Detailed description is available on official manual page: https://mpdf.github.io/