2017-01-13 3 views
0

Ich habe eine Funktion zum Erstellen von PDF mit Fpdf in Laravel. Meine Probleme sind:Wie kann Höhe reduziert und PDF mit FPDF heruntergeladen werden?

  1. Nach allem Cell habe ich etwas mehr Platz. Ich muss das entfernen. Bitte finden Sie das Bild unten.
  2. Wie kann ich diese pdf-Datei in mein System herunterladen. Zur Zeit wird nur im Browser angezeigt. Codebeispiele sind unten angegeben.

-Code

Controller: Controller.php

public function index() 
    { 
     $orders = Order::select('firstname', 'lastname', 'street', 'postal', 'country')->get(); 
     foreach ($orders as $order){ 
      Fpdf::SetMargins(5, 5, 5); 
      Fpdf::AddPage('L', array(60,90), 'A4'); 
      Fpdf::SetAutoPageBreak(TRUE, 0); 
      Fpdf::SetFont('helvetica', '', 7); //IF bold letter SetFont('Arial','B',14) 
      Fpdf::SetTextColor(0, 0, 0); 
      Fpdf::Cell(10,5,iconv('UTF-8', 'windows-1252', 'Falls unzustellbar, zurück an Absender'),0,"1","L"); 
      Fpdf::SetFont('','U'); 
      Fpdf::Cell(10,5,iconv('UTF-8', 'windows-1252', 'schrillALARM.jetzt c/o 365group • Grasgasse 2 • 93047 Regensburg'),0,"1","L"); 
      Fpdf::SetFont('helvetica', '', 11); 
      Fpdf::Cell(10,5,$order->firstname,0,1,"L"); 
      Fpdf::Cell(10,5,$order->lastname,0,1,"L"); 
      Fpdf::Cell(10,5,$order->street,0,1,"L"); 
      Fpdf::Cell(10,5,$order->postal,0,1,"L"); 
      Fpdf::Cell(10,5,$order->country,0,1,"L"); 
     } 
     Fpdf::Output(); 
     exit; 
    } 

Route: Strecke :: get ('/ Test' 'Controller @ Index');

enter image description here

Antwort

0

Keine Erfahrung mit FDPF, aber Sie können auf diese Weise herunterladen:

Route::get(
    'download/pdf/{pdf}', 
    function ($pdf) { 
     $file = // Get file 
     return response()->download($file); 
    } 
); 

Oder einfach von Ihrem Controller mit

return response()->download($pdf); 
0

für das Speichern, nur Ausgabepfad und den Dateinamen in Ihrer Ausgabeaufrufzeichenfolge

Fpdf::Output([string dest [, string name [, boolean isUTF8]]]) 

Für Ihren Leerraum können Sie beim Erstellen Ihres PDF-Dokuments jedoch eine der folgenden Standardgrößen verwenden: A3, A4, A5, Letter, Legal, wobei A4 die Standardeinstellung ist. Sie können jedoch auch benutzerdefinierte Größen deklarieren. Dies ist mehr als wahrscheinlich, was Sie suchen, wie Sie mit den Größen spielen möchten, um es mit der Menge an Leerraum zu bekommen, die Sie suchen. FPDF löscht zuerst die Zeichenfläche und füllt sie dann aus, so dass der weiße Bereich von einer zu großen Zeichenfläche kommt. Dies kann im Konstruktor oder AddPage geschehen, wie Sie es getan haben.

VIA Constructor:

//(L)andscape or (P)ortrait, unit type (mm millimeters), array size in mm 
$pdf = new FPDF('L','mm',array(100,150)); 

VIA AddPage (muss wahrscheinlich, was Sie suchen): zur Zeit Sie haben:

Fpdf::AddPage('L', array(60,90), 'A4'); 

sind jedoch params soll Landschaft/Porträt sein, Vordefinierte oder benutzerdefinierte Größe Array, dann Rotation. Also versuchen Sie dies:

Fpdf::AddPage('L', array(60,90)); 

Jetzt müssen Sie mit diesen Zahlen spielen, mehr als wahrscheinlich, die 90, und dass verkürzen bis Sie sich von dem weißen Raum zu befreien.