2016-04-15 14 views
0

Welche Einstellung muss ich ändern und was, damit die gerenderte PDF-Datei exakt 11 Zoll x 8,5 Zoll groß ist? Aus irgendeinem Grund ist die PDF, die ich generiere, 11,69 Zoll und 8,27 Zoll.Wie erzwingen Sie FPDF-Ausgabe um genau 11 Zoll um 8,5 Zoll?

Der obige Code ist das einzige, was bei der Erstellung einer PDF funktioniert, habe ich "neue FPDF" anstelle von "neuen FPDI" versucht und alles, was ich bekomme, sind Fehler. Wie kann ich diesen Code auf 11x8.5 ändern?

<?php 
ob_clean(); 
ini_set("session.auto_start", 0); 
define('FPDF_FONTPATH','font/'); 
define('FPDI_FONTPATH','font/'); 
require('fpdf.php'); 
require('fpdi.php'); 
$pdf = new FPDI(); 
$pdf->setSourceFile("Flyer.pdf"); 
$tplIdx = $pdf->importPage(1); 
$specs = $pdf->getTemplateSize($tplIdx); 
$pdf->addPage($specs['h'] > $specs['w'] ? 'P' : 'L'); 
$pdf->useTemplate($tplIdx, 0, 0, 297, 210); 
$pdf->SetFont('helvetica'); 
$pdf->SetTextColor(255, 0, 0); 
$pdf->SetXY(30, 30); 
$pdf->Write(0, 'This is just a simple text'); 
ob_end_clean(); 
$pdf->Output('marketing.pdf', 'F'); 
?> 

Antwort

1

11.69 x 8.27 Zoll ist A4 Größe standardmäßig durch FPDF (die Dokumentation says: Default value is A4.) verwendet setzen es

11 x 8.5 Zoll ist das Letter Papierformat, so dass Sie sollten nur als Parameter für den Konstruktor:

$pdf = new FPDF('P','inch','Letter');

+0

Hey, ich habe gerade meine Frage bearbeitet, damit du dir meinen Code ansehen kannst. Ich habe Ihre Option ausprobiert, aber es erzeugt eine zweite Seite und die ursprüngliche PDF wird nicht korrekt formatiert. – NoReceipt4Panda

+0

können Sie '$ pdf-> addPage versuchen ($ specs ['h']> $ specs ['w']? 'P': 'L', 'Buchstabe');'. Wenn Sie die Größe der Vorlage ändern möchten, dann bin ich mir nicht sicher, ob Sie dies mit PDF-Vorlage tun können. –

+0

Das hat den Trick, danke! – NoReceipt4Panda