Tisk PDF A4 pomocí Joseki\PdfResponse + bootstrap

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
phoniq
Člen | 17
+
0
-

Ahoj, pokud vygeneruji a následně otevřu PDF kódem viz níže, DIVy se šířkou .col-md-6 se nevejdou na stránku, ale naskládají se pod sebe. Zřejmě je tam nějaký problém s definicí A4 nebo okraji stránky v PDFResponse. Řešil někdo tisk do A4 pomocí bootstrap?

public function handleGenerujPDF() {
	$sablonaHTML = $this->sablonyModel->fetchSingle(['nazev' => 'test']);
	$pdf = new PdfResponse($sablonaHTML->html);

	$pdf->styles = file_get_contents('https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css');
	$pdf->pageOrientation = PdfResponse::ORIENTATION_PORTRAIT;
	$pdf->pageFormat = "A4-P";
	$pdf->displayLayout = 'single';
	$pdf->pageMargins = "0,0,0,0, 0,0";
	$pdf->displayZoom = 'fullpage';
	$pdf->setSaveMode(PdfResponse::INLINE);

	$this->sendResponse($pdf);
}

HTML kód šablony:

<div class="container"  style="background-color: yellow;">

	<div class="row"  style="background-color: gray;">
		<div class="col-md-6" style="background-color: green;">
		</div>

		<div class="col-md-6"  style="background-color: blue;">
		</div>
	</div>

</div>
Šaman
Člen | 2659
+
0
-

Nebude tyo tím, že md jsou pro středně velké obrazovky a A4 možná není považována za středně velkou?
Zkus to přepsat na sm. Je to jen tip od boku. Jinak s Nette to moc nesouvisí.

phoniq
Člen | 17
+
0
-

Díky za tip, ovšem tím to není. Vyzkoušel jsem všechny možnosti, včetně SM. Problém nejspíš bude až někde v hlouby MPDF

Šaman
Člen | 2659
+
0
-

Já měl s mPDF problém, že se na stránku nevešla tabulka složená ze sloupců s celkovým součtem 100%. Asi nějaká chyba zaokrouhlování při přepočtu % na mm, či co. Bezpečná šířka byla asi 97%, ale záviselo na šířkách jednotlivých sloupců, při některých hodnotách to bralo i 99%.
Možná to bude v jádru stejný problém.

Editoval Šaman (21. 11. 2015 17:14)

phoniq
Člen | 17
+
0
-

Vyřešeno, pomohlo doupravit nastavení CSS a následně používat pro tvorbu sloupců výhradně třídy …XS…

.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
	float: left;
}
.col-xs-12 {width: 100%;}
.col-xs-11 {width: 91.66666666666666%;}
.col-xs-10 {width: 83.33333333333334%;}
.col-xs-9 {width: 75%;}
.col-xs-8 {width: 66.66666666666666%;}
.col-xs-7 {width: 58.333333333333336%;}
.col-xs-6 {width: 46%;}
.col-xs-5 {width: 41.66666666666667%;}
.col-xs-4 {width: 33.33333333333333%;}
.col-xs-3 {width: 25%;}
.col-xs-2 {width: 16.666666666666664%;}
.col-xs-1 {width: 8.333333333333332%;}
castamir
Člen | 629
+
0
-

@phoniq díky za post s řešením. Kaskádové styly v mPDF jsou trošku problémové a člověk musí občas vložit nějaký ten styl navíc.