2013-09-02 17 views
5

jestem generowania HTML2PDF korzystając Dompdf i mój kod jestJak dodać nagłówek i stopkę w Dompdf?

$html='<div>--content of pdf--</div>'; 
require_once('resources/dompdf/dompdf_config.inc.php'); 
$dompdf = new DOMPDF(); 
$dompdf->load_html($html); 
$dompdf->render(); 
$output = $dompdf->output(); 
$dompdf->stream("transaction.pdf"); 

Moja pdf generowane powodzeniem teraz chcę dodać zdjęcie w nagłówku tej pdf więc może ktoś mi powiedzieć jak mogę wstawić nagłówek i stopkę dla Dompdf i szczególnie gdzie umieścić kod nagłówka?

+1

możliwe duplikat [Nagłówek na stronie PDF za pomocą DOMPDF w php] (http://stackoverflow.com/questions/7484318/header-in-pdf-page-using-dompdf-in-php) – Foobar

+0

Nie pewnie dlatego, że pół roku później wysyłasz dużo spamu na to pytanie. Ale proszę, nie rób tego. – BoltClock

Odpowiedz

4

Od dompdf FAQ

Q: Jak mogę dodać zdjęcie do nagłówka lub stopki na każdej stronie? A: Możesz dodawać obrazy i kształty (linie, prostokąty itp.) Do każdej strony przy użyciu "obiektów" PDF z . Obiekt PDF przechwytuje wszystkie renderingu polecenia jako rodzaj od szablonu, który można dodać do wielu stron:

<script type="text/php"> 

if (isset($pdf)) { 

    // Open the object: all drawing commands will 
    // go to the object instead of the current page 
    $footer = $pdf->open_object(); 

    $w = $pdf->get_width(); 
    $h = $pdf->get_height(); 

    // Draw a line along the bottom 
    $y = $h - 2 * $text_height - 24; 
    $pdf->line(16, $y, $w - 16, $y, $color, 1); 

    // Add an initals box 
    $font = Font_Metrics::get_font("helvetica", "bold"); 
    $text = "Initials:"; 
    $width = Font_Metrics::get_text_width($text, $font, $size); 
    $pdf->text($w - 16 - $width - 38, $y, $text, $font, $size, $color); 
    $pdf->rectangle($w - 16 - 36, $y - 2, 36, $text_height + 4, array(0.5,0.5,0.5), 0.5); 

    // Add a logo 
    $img_w = 2 * 72; // 2 inches, in points 
    $img_h = 1 * 72; // 1 inch, in points -- change these as required 
    $pdf->image("print_logo.png", "png", ($w - $img_w)/2.0, $y - $img_h, $img_w, $img_h); 

    // Close the object (stop capture) 
    $pdf->close_object(); 

    // Add the object to every page. You can 
    // also specify "odd" or "even" 
    $pdf->add_object($footer, "all"); 
} 

</script> 

EDIT:

Oto instrukcje krok po kroku:

Gdzieś w pliku html, u góry, otwórz tag skryptu typu "text/php":

<script type="text/php"> 

Sprawdź, czy ustawiono zmienną $ pdf. dompdf ustawia tę zmienną podczas oceniania osadzonego PHP.

<script type="text/php"> 

if (isset($pdf)) { 
+0

gdzie umieścić ten skrypt? przed wygenerowaniem pdf lub po wygenerowaniu pdf. czy możemy umieścić ten skrypt w tagu php? –

+0

@nitinkachhadiya Zaktualizowałem swoją odpowiedź. – Foobar

+0

Należy pamiętać, że w przypadku korzystania z skryptu wbudowanego musi on obecnie znajdować się w * treści * kodu HTML. Z powodu tego, jak dokument jest analizowany, będziesz musiał przynajmniej sformatować swój kod HTML jako '

--content of pdf--
'. Jeśli możesz, po prostu utwórz nagłówek/stopkę, używając HTML + CSS. – BrianS

Powiązane problemy