PdfResponse nenačítají se obrázky img a z css backgroud
- ondrusu
- Člen | 118
Ahojte, dělám generování nějakých voucherů. Stáhl jsem si knihovnu
PdfResponse\PdfResponse
. Je to taková vychytávka na práci s
mPDF
knihovnou.
voucher.latte
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="voucher.css">
</head>
<body>
<div id="voucher">
<img src="/images/darkovy-poukaz/zvonky.png">
<div>Název kuónu</div>
</div>
</body>
</html>
voucher.css
#voucher {
float: left;
width: 100%;
height: 100%;
background: url('/images/darkovy-poukaz/darkovy_poukaz.png') no-repeat;
}
Presenter
$template = $this->createTemplate();
$template->setFile(/cesta_k_sablone/voucher.latte);
$pdf = new PdfResponse($template);
$pdf->pageOrientation = PdfResponse::ORIENTATION_PORTRAIT;
$pdf->pageFormat = array(150, 100);
$pdf->documentTitle = "Dárkový poukaz";
$pdf->documentAuthor = "";
$pdf->pageMargins = "0,0,0,0, 0,0";
$pdf->displayZoom = 'fullwidth';
$this->sendResponse($pdf);
HTML kód do PDFka se načte, když napíšu background: gray
tak se stránka obarví na šedou, ale pozadí darkovy_poukaz.png
nebo obrázek v šabloně zvonky.png
se nechce načíst.
Vůbec nevím proč. Bohužel jsem na nic nepřišel.
Šablona se nachází v template/voucher/voucher.latte
, když si
dám adresu localhost/voucher/voucher
tak se vše načte
správně.
A vypadá to, že za to nemůže knihovna PdfResponse
protože
jsem zkusil načíst přímo mPDF, ale ten samí problém. Nevíte někdo co
dělám špatně?
Děkuji, mockrát.
- igor.pocta
- Člen | 100
Zkus tohle
@page {
background: url("/static/image/pdf_img/big_logo.gif") 50% 0 no-repeat;
}
- ondrusu
- Člen | 118
Hmm už jsem asi přišel napříčinu. CSS ani HTML ty obrázky nenajde. Asi jak se to volá z toho
$template->setFile(/cesta_k_sablone/voucher.latte);
Vložil jsem tam obrázek z nějakýho webu a to zabralo. Ted je otázka jaká ta url k těm obrázkům musí být.
Nebo možná nějaký práva ..
Editoval ondrusu (8. 7. 2017 20:11)