Du bist hier: Tips » Scripte » PHP
PHP
Referenzliste

PDF_restore

PDF-Funktionen

    Befehl:
bool PDF_restore ( resource $p )


    Beschreibung:
Stellt den zuletzt im Stack gespeicherten Grafikzustand wieder her. Gibt bei Erfolg TRUE zurück. Im Fehlerfall wird FALSE zurückgegeben.


    Aktiv in Version:
(PHP 4, PECL pdflib >= 1.0.0)

PDF_restore() - Beispiel


Eingabe:
<?php

// Erstellt & Öffnet PDF-Object
$pdf = pdf_new();
pdf_open_file($pdf);
pdf_set_info($pdf, "Author","Bob Nijman");
pdf_set_info($pdf, "Title","Sponsored by www.nijman.de");
pdf_set_info($pdf, "Creator", "See Author");
pdf_set_info($pdf, "Subject", "pdf_restore");
pdf_begin_page($pdf, 300, 300);


/*
Durch die Kapselung die Änderungen, die wir machen, um das
Koordinatensystem (pdf_translate() und PDF_rotate()) zwischen
PDF_save() und PDF_restore geben wir diese Änderungen nur
lokalen Bereich.
*/

/*
SMALL RECTANGLE
*/

pdf_save($pdf);
// Bewegen Sie den Ursprung des Koordinatensystems auf (100,100)
pdf_translate($pdf, 100, 100);
// Drehung des Koordinatensystems um 45 Grad.
pdf_rotate($pdf, 45);
//Zeichnen Sie ein kleines Rechteck
pdf_rect($pdf, 0, 0, 20, 20);
pdf_stroke($pdf);
// Stellen Sie die Grafiken Zustand in den, wie es war,
// bevor wir zu übersetzen begonnen und drehen
pdf_restore($pdf);


/*
LARGER RECTANGLE
*/

pdf_save($pdf);
// bewegen den Ursprung des Koordinatensystems (10,20)
pdf_translate($pdf, 10, 20);
// Drehung des Koordinatensystems um 15 Grad.
pdf_rotate($pdf, 15);
// Zeichnen Sie ein grösseres Rechteck.
pdf_rect($pdf, 0, 0, 40, 40);
pdf_stroke($pdf);
// Stellen Sie die Grafiken Zustand in den, wie es war,
// bevor wir zu übersetzen begonnen und drehen
pdf_restore($pdf);



//close it up
pdf_end_page($pdf);
pdf_close($pdf);
$data = pdf_get_buffer($pdf);
header('Content-type: application/pdf');
header('Content-disposition: inline; filename=nijman.pdf');
header('Content-length: ' . strlen($data));
echo $data;

?>

PDF_restore() - Beispiel 2


Eingabe:
<?PHP
$file = fopen ( 'php.pdf', 'w' );
$dokument = pdf_open ( $file );
pdf_begin_page ( $dokument, 200, 100 );
pdf_set_font ( $dokument, 'Times-Roman', 24, 'winansi' );
pdf_setgray_fill ( $dokument, 0.7 );
pdf_show_xy ( $dokument, '1.Ein kurzer Text', 0, 30 );
pdf_save ( $dokument );
pdf_skew ( $dokument, 20, 10 );
pdf_setgray_fill ( $dokument, 0 );
pdf_show_xy ( $dokument, '2.Ein kurzer Text', 0, 30 );
pdf_set_font ( $dokument, 'Times-Roman', 18, 'winansi' );
pdf_setgray_fill ( $dokument, 0.5 );
pdf_continue_text ( $dokument, '3.Ein kurzer Text' );
pdf_restore ( $dokument );
pdf_show_xy ( $dokument, '4.Ein kurzer Text', 30, 5 );
pdf_end_page ( $dokument );
pdf_close ( $dokument );
fclose ( $file );
?>


Beschreibung:
Mit pdf_restore() kann man den Schutz, welcher mittels pdf_save() auf das aktuelle Dokument (PDF-Dokument) gesetzt wurde, wieder aufheben. Das ist oftmals sehr n�tzlich, um nach �nderungen im Koordinatensystem in den urspr�nglichen Zustand des Dokuments zu gelangen. Im unteren Beispiel wurde zuerst ein Text (1) in horizontaler Richtung geschrieben. Danach wurde die Funktion pdf_save() aufgerufen, um die letzten Einstellungen zu sch�tzen. Anschliessend wurden dann die Texte 2 und 3 mittels pdf_skew() im Koordinatensystem geschert. Um die urspr�ngliche Umgebung wieder herzustellen, wurde die Funktion pdf_restore() benutzt. Abschliessend wurde dann noch einmal ein Text (4) in horizontaler Richtung geschrieben.
PDF-Funktionen