PHP Nette - jak tisknout / exportovat do PDF (mPDF)

PHP Nette - jak tisknout / exportovat do PDF (mPDF)

Dobrý den, jaké řešení byste mně doporučili pro tisknutí (export) do PDF z Nette frameworku? Jde mi jen o prostý výstup výpisu, ideálně do nějaké latte šablony, nepotřebuji tam ani grafické prvky, stačí text.

ODPOVĚĎ


Dobrý den,



pro výstup (export, tisk) do PDF používám v Nette balíček mPDF. Pro zprovoznění mPDF v Nette je třeba toto:




1.) Instalace rozšíření mPDF přes composer:

composer require mpdf/mpdf





2.) V presenteru do hlavičky:

use Mpdf\Mpdf as mPDF;
use Nette\Application\UI\ITemplateFactory;

/** @var ITemplateFactory @inject */
public $templateFactory;





3.) Handle (action) na export do PDF


public function handleExportPdf($id)
{
$zaznam = $this->database->table('table')->get($id);
if (!$zaznam) {
$this->error('Záznam nenalezen');
}

$this->template->zaznam = $zaznam;

$t = $this->templateFactory->createTemplate();
$t->setFile(__DIR__ . '/templates/Homepage/exportPdf.latte');
$t->zaznam = $zaznam;

$pdf = new mPDF();
$pdf->ignore_invalid_utf8 = true;
$pdf->WriteHTML(file_get_contents('__DIR__/../../www/css/bootstrap.min.css'), 1);
$pdf->setFooter('Text do zápatí');
$pdf->WriteHTML($t);
$pdf->Output('Záznam id ' . $id, 'D');
$this->redirect('this');
}





4.) Vytvořit klasickou latte šablonu exportPdf.latte jako předlohu pro výsledný soubor PDF a to je vše...

Související obsah

programovani

nette

pdf

php

Komentáře

Vaše reakce na PHP Nette - jak tisknout / exportovat do PDF (mPDF)

Reference

Podívejte se na naše reference

Prohlédnout

Aplikace

Podívejte se na naše aplikace

Prohlédnout

Co umíme?

Podívejte se co umíme

Prohlédnout

Co umíme?

Vytváříme sofistikované aplikace pro náročné

Od webových aplikací přes android až po převodové můstky či složité informační systémy.

Podívejte se k nám

Máte ještě čas? Podívejte se na další rubriky

Tento web používá soubory cookie. Dalším procházením tohoto webu vyjadřujete souhlas s jejich používáním.. Více informací zde.