/** * Generate PDF-file of ticket * * @param Ticket $ticket * @param string $html * * @return mixed */ public function generatePdfFile(Ticket $ticket, $html) { // Override default fonts directory for mPDF define('_MPDF_SYSTEM_TTFONTS', realpath($this->kernel->getRootDir() . '/../web/fonts/open-sans/') . '/'); /** @var \TFox\MpdfPortBundle\Service\MpdfService $mPDFService */ $mPDFService = $this->container->get('tfox.mpdfport'); $mPDFService->setAddDefaultConstructorArgs(false); $constructorArgs = array('mode' => 'BLANK', 'format' => 'A5-L', 'margin_left' => 0, 'margin_right' => 0, 'margin_top' => 0, 'margin_bottom' => 0, 'margin_header' => 0, 'margin_footer' => 0); $mPDF = $mPDFService->getMpdf($constructorArgs); // Open Sans font settings $mPDF->fontdata['opensans'] = array('R' => 'OpenSans-Regular.ttf', 'B' => 'OpenSans-Bold.ttf', 'I' => 'OpenSans-Italic.ttf', 'BI' => 'OpenSans-BoldItalic.ttf'); $mPDF->sans_fonts[] = 'opensans'; $mPDF->available_unifonts[] = 'opensans'; $mPDF->available_unifonts[] = 'opensansI'; $mPDF->available_unifonts[] = 'opensansB'; $mPDF->available_unifonts[] = 'opensansBI'; $mPDF->default_available_fonts[] = 'opensans'; $mPDF->default_available_fonts[] = 'opensansI'; $mPDF->default_available_fonts[] = 'opensansB'; $mPDF->default_available_fonts[] = 'opensansBI'; $mPDF->SetDisplayMode('fullpage'); $mPDF->WriteHTML($html); $pdfFile = $mPDF->Output($ticket->generatePdfFilename(), 'S'); return $pdfFile; }