Du bist hier: Tips » Scripte » PHP
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