PHP
Referenzliste
PDF_show_boxed
PDF-Funktionen
Befehl:
int PDF_show_boxed ( resource $p , string $text , float $left , float $top , float $width , float $height , string $mode , string $feature )
Beschreibung:
Diese Funktion ist seit PDFlib Version 6 veraltet, verwenden Sie stattdessen PDF_fit_textline() für einzelne Zeilen oder PDF_fit_textflow() für die Formatierung mehrerer Zeilen.
Aktiv in Version:
(PHP 4, PECL pdflib >= 1.0.0)
Siehe auch:
Gibt Text an der aktueller Position aus
Gibt Text an der angegebenen Position aus
PDF_show_boxed() - Beispiel
Eingabe:
<?php $pdf = pdf_new(); pdf_set_parameter($pdf,"license","xxxxxxx-xxxxxx-xxxxxx-xxxxxx"); //den Stempel / Wasserzeichen der erzeugten PDF-Datei zu entfernen. pdf_set_info($pdf, "Creator", "pdf.php"); pdf_set_info($pdf, "Author", "hui"); pdf_open_file($pdf,""); // ohne Dateinamen, wird es die pdf-Datei im Browser direkt öffnen. pdf_begin_page($pdf,595,842); // A4 Seite $font = pdf_findfont($pdf, "Helvetica", "host", 0); $lineHeight = 10; $y = 800; pdf_setfont($pdf, $font, $lineHeight); $text = "Hallo, ich bin Hui.\n\rI bin in IT arbeiten Abt.\nI bin gut in Linux Administration und Programmierung in Java, PHP, Javascript, C und C++."; $ret = pdf_show_boxed($pdf,$text,30,$y,350,$lineHeight,"left",""); $lineSpace = 5; while($ret>0) // schreiben Sie den gesamten Text in der pdf zeilenweise // einschliesslich der neuen Linie Charakter { $y = $y - $lineHeight-$lineSpace; $left = substr($text,-$ret); if($left[0] == "\n" or $left[0] == "\r") $left = substr($left,1); // diese Linie Verringert den $ret von 1. $ret = pdf_show_boxed($pdf,$left,30,$y,350,$lineHeight,"left",""); } pdf_end_page($pdf); pdf_close($pdf); $buf = pdf_get_buffer($pdf); $len = strlen($buf); header("Content-type: application/pdf"); header("Content-Length: $len"); header("Content-Disposition: inline; filename=whatever.pdf"); print $buf; ?>
PDF_show_boxed() - Beispiel 2
Eingabe:
<?php // Raum gelassen zu bekommen zum Ende der Seite $space = (612-$right_margin); // Holen Gesamtlänge von Text-String $length = pdf_stringwidth($pdf, $text); // Überprüfen Sie, ob genügend Platz vorhanden ist, // nur um Text zu Seite Dump if($length > $space) { //Starten Sie einen Parser $count = strlen($text); for($i=o; $i<$count;) { // Holen Sie sich das erste Wort in Text-String for($e=$i; $e<$count && substr($text, $e, 1)!=" "; $e++); // Setzen Sie dieses Wort in einen String (nicht zu vergessen, // ein für den Raum, den wir zu stoppen Marker verwendet $string = substr($text, $i, ($e-$i)+1); // Jetzt erhalten Sie die Länge dieser Zeichenfolge $length = pdf_stringwidth($pdf, $string); if($length < $space) { pdf_show_xy($pdf, $string, $x, $y); $x = $x+$length; // Da diese Routine bekommt zyklisch jedes Mal wenn // Sie Text, um ihn zu senden, stellen Sie sicher // aktualisieren, wie viel Platz auf der Strecke bleibt $space = (612-36)-$x; } else { // Eine Zeile nach unten, da ist kein Platz mehr, // beachten Sie, dass ich "2", wie mein Polsterung // kann Ihnen variieren $y = $y - ($fontsize +2); $x = $left_margin; pdf_show_xy($pdf, $string, $x, $y); $x = $x+$length; $space = (612-36)-$x; } // Bewegen Sie den Schleifenzähler um dieses Wort am //Ende den Raum + wir als Marker verwendet stoppen $i=$e+1; } } else { if($center == "1") { pdf_show_boxed($pdf, $text, 0, $y, 612, $fontsize, "center"); } else { pdf_show_xy($pdf, $text, $x, $y); } $x = $x + $length; } ?>
PDF_show_boxed() - Beispiel 3
Eingabe:
<?php //Create & Open PDF-Object $pdf = pdf_new(); pdf_open_file($pdf); pdf_set_info($pdf, "Author","Bob Nijman"); pdf_begin_page($pdf, 300, 300); pdf_set_font($pdf, "Helvetica", 10, "host"); $text = <<<EOD Unsere Konzepte sind innovativ und kreativ. Sie orientieren sich am Zeitgeist, ohne sich diesem auszuliefern. So auch unsere Arbeitsweise. Für verschiedene Arbeitsmodule werden freie Mitarbeiter herangezogen, damit wir absolute Flexibilität behalten und messerscharf kalkulieren können. Die volle Verantwortung liegt damit beim Projektleiter. Er vergibt Arbeitsmodule, begutachtet deren Werdegang und letztendlich deren Zusammenwachsen. EOD; $nr = pdf_show_boxed($pdf, $text, 10.0, 180.0, 140.0, 100.0, "left"); $nr = pdf_show_boxed($pdf, substr($text, -$nr), 150.0, 180.0, 140.0, 100.0, "left"); //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=myTest.pdf'); header('Content-length: ' . strlen($data)); echo $data; ?>
PDF_show_boxed() - Beispiel 4
Eingabe:
<?php $TextHeight = 10; while ((pdf_show_boxed($pdf,$rstJobs["JobDetails"], 123, $varPosition, 308,$TextHeight,left,blind)) > 1) { $TextHeight = $TextHeight + 10; } ?>
PDF_show_boxed() - Beispiel 5
Eingabe:
<?PHP $file = fopen ( 'php.pdf', 'w' ); $dokument = pdf_open ( $file ); pdf_begin_page ( $dokument, 200, 100 ); pdf_set_font ( $dokument, 'Times-Roman', 14, 'winansi' ); pdf_show_boxed ( $dokument, 'Willi Seiler - Homepage', 20, 20, 100, 50, 'center' ); pdf_end_page ( $dokument ); $dokument = pdf_close ( $dokument ); fclose ( $file ); ?>
Beschreibung:
Mit pdf_show_boxed() schreibt man einen Text (text) in die aktuelle Seite eines PDF-Dokuments (PDF-Dokument). Der Text wird in einem (unsichtbaren) Rahmen platziert und bei Bedarf umbrochen. Dabei wird der Rahmen durch die Koordinaten der linken unteren Ecke (xKoor, yKoor), die Breite (Breite) und die H�he (H�he) definiert.
Die Textausrichtung (Modus) kann folgende Werte annehmen:
H�he und Breite des Rahmens ist Null:
� left
� center
� right
H�he und Breite des Rahmens ist ungleich Null:
� justify
� fulljustify
PDF-Funktionen