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...

Komentáře

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

19.08.2024 [1]
Ahoj,

řeším tisk z php nette, kdy potřebuji v latte šabloně nějak ošetřit to, že chci skrýt element s id #element když se dá tisk. Jedná se o klasické html a já tedy ten #element nechci v tisku ukazovat.

Jinak řečeno, chci na vytisknuté stránce #element skrýt, ale v prohlížeči aby byl vidět :-)

Díky

Hanz
#1937

19.08.2024 [2]
Poslední komentář Reakce na komentář #1934
Ahoj,

všechno co bys chtěl v html při tisku skrýt můžeš v CSS obalit do "@media print" takto:

@media print{
#element{
display: none;
}
}

Související obsah

programovani

nette

pdf

php

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.