2016-04-12 3 views
1

Ich habe eine PDF-Ausgabe in Laravel mit DoomPDF-Paket gemacht. Die erste Zeile der Tabelle scheint jedoch fehl am Platz zu sein und nur auf dem ersten Papier. Weiß jemand warum?Laravel/w Bootstrap PDF

Controller:

public function printPDF(PDF $pdf) 
{ 
    $users = User::all(); 
    $pdf->loadView('pdf.index', compact('users')); 
    return $pdf->setOrientation('landscape')->setPaper('A4')->stream(); 
} 

Layout-Datei:

<!doctype html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>Document</title> 

    <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet"> 

</head> 
<body> 

<table class="table table-striped"> 
    <tbody> 
    @foreach($users as $user) 
     <tr> 
      <td><strong>{{$user->name}}</strong></td> 
      <td>{{$user->address}} <br> {{$user->city}}</td> 
      <td>{{$user->phone_private}} <br> {{$user->phone_work}}</td> 
      <td>{{$user->email}} <br> {{$user->email_private}}</td> 
      <td>{{$user->oib}}</td> 
     </tr> 
    @endforeach 
    </tbody> 
</table> 
</body> 
</html> 

Ergebnis: Image

+0

Also die Ansicht 'pdf.index' enthält nur das'

' und seinen Inhalt und keine andere Markierung? – Bogdan

+0

Nein, es ist voller HTML. Head lädt Bootstrap-Abhängigkeiten, und das war's. Aktualisiert – Norgul

+0

Was passiert, wenn Sie versuchen, die Ansicht in Ihrem Browser und nicht in einer PDF-Datei anzuzeigen? – Hammerbot

Antwort

1

Es scheint an issue with Dompdf zu sein, die Laravel dompdf intern die PDF-Dateien zu erzeugen, verwendet. Es kann durch das Hinzufügen dieser CSS-Regel zu Ihrer Ansicht Datei leicht behoben werden:

<style> 
    thead:before, thead:after, 
    tbody:before, tbody:after, 
    tfoot:before, tfoot:after 
    { 
     display: none; 
    } 
</style> 

Es gibt eine fix committed for this bug vor etwa einer Woche war, aber es ist für dompdf/dompdf v0.7 und the stable v0.6.1 release of barryvdh/laravel-dompdf verwendet die älteren dompdf/dompdf v0.6. Wenn Sie also stabile Versionen verwenden möchten, können Sie den obigen CSS-Fix verwenden, bis barryvdh/laravel-dompdf v0.7 abgeschlossen ist.