# PDFLib



## fungo (17. Juli 2002)

Also, ich hab mit mal alles in der PHP Manual reingezogen und ein Script zur Erzeugung eines einfachen PDF Dokumentes geschrieben.
Aber es funzt irgendwie nicht, obwohl ich mir ziemlich sicher bin,
das es so richtig ist.


```
<?php

//Neues PDF-Objekt erstellen
$pdf = PDF_new();

//Neues Dokument erstellen
PDF_open_file($pdf);

//Dokumentinformationen hinzufügen (Autor,Titel und Erzeuger)

pdf_set_info($pdf,"author","fungo");

pdf_set_info($pdf,"title","Test der PDFLib");

pdf_set_info($pdf,"creator","fungo");

//Neue Seite innerhalb des Dokumentes erstellen

PDF_begin_page($pdf,450,450);

//Inhalt einfügen

pdf_show_xy($pdf, "Die PDFLib ist spassig",5,225);

//Seitenende festlegen

pdf_end_page($pdf);

//Datei schließen

pdf_close($pdf);

//PDF-Daten aus dem Buffer holen

$buffer = pdf_get_buffer($pdf);

//PDF-Dokument ausgeben

header("Content-type:application/pdf");
header("Content-Lenght:".strlen($buffer));
header("Content-Disposition:inline; filename=test.pdf");
echo $buffer;

//Dokument aus dem Speicher löschen
pdf_delete($pdf);

?>
```


----------



## Neurodeamon (18. Juli 2002)

Ok 2 Probleme wären mir bekannt:

1. achte auf lowercase und UPPERCASE, schreibe einheitlich:

PDF_open_file($pdf);
lieber zu
pdf_open_file($pdf);

2. Die pdf extension ist nicht geladen.

Tipp: Schön wäre eine eventuelle Fehlermeldung die du erhälst hier zu posten, damit man beim Helfen nicht auf Ratespielchen angewiesen ist.

Gruß,
Neuro


----------



## fungo (18. Juli 2002)

php extension ist geladen, da ich es schon überprüft hab.
ich upper und lowercase ausprobiert und es funzt trotzdem nicht.

Es gibt keine Fehlermeldung; einfach eine weiße html seite.

Eigentlich müsste sich nach dem ausführen Acrobat reader mit dem Dokument öffnen.


----------



## Neurodeamon (18. Juli 2002)

jetzt kann ich dir helfen, sitze nicht mehr am grafx-mac sondern an meinem coding-pc:

Ok.. fehler:

du must einen font angeben bevor du die dokumentgröße angibst.

korrigierte version:


```
<?php

//Neues PDF-Objekt erstellen
$pdf = PDF_new();

//Neues Dokument erstellen
PDF_open_file($pdf);

//Dokumentinformationen hinzufügen (Autor,Titel und Erzeuger)

pdf_set_info($pdf,"author","fungo");

pdf_set_info($pdf,"title","Test der PDFLib");

pdf_set_info($pdf,"creator","fungo");

//Neue Seite innerhalb des Dokumentes erstellen

PDF_begin_page($pdf,450,450);

//font auswählen

pdf_set_font($pdf, "Times-Roman", 30, "host");

//Inhalt einfügen

pdf_show_xy($pdf, "Die PDFLib ist spassig",5,225);

//Seitenende festlegen

pdf_end_page($pdf);

//Datei schließen

pdf_close($pdf);

//PDF-Daten aus dem Buffer holen

$buffer = pdf_get_buffer($pdf);

//PDF-Dokument ausgeben

header("Content-type:application/pdf");
header("Content-Lenght:".strlen($buffer));
header("Content-Disposition:inline; filename=test.pdf");
echo $buffer;

//Dokument aus dem Speicher löschen
pdf_delete($pdf);

?>
```

Ich hoffe das hilft dir weiter ,
vote für mich und mach mich wieder grün *werbungmach*


----------



## fungo (18. Juli 2002)

dafür das ich davon vorher keine peilung hatte hab ich es ja fast richtig gemacht :-]

Ein Vote für Dich !


----------



## fungo (19. Juli 2002)

Wie bekomme ich einen Zeilenumbruch innerhalb des Dokumentes hin?

Wenn ich jetzt einen Text mit pdf_show oder pdf_show_xy ausgebe,

wir der Teil des Strings, der länger als das Dokument ist abgeschnitten.

Hat das etwas mit dem Befehl pdf_continue_text zu tun? Ich verstehe

leider nur nicht wie ich diesen sinnvoll einsetzte, habe auch schon viel ausprobiert, aber kein Ergebnis bekommen.


----------



## fungo (19. Juli 2002)

und gleich noch ne Frage:

Befehle, die alle etwas mit grafischen Funktionen zu tun haben, also 
Linien, Kreise usw. funzen generell nicht.
Liegt das daran, das ich noch eine weiteres Modul brauche?

also z.B. pdf_stroke usw. funzen nicht


----------



## melmager (19. Juli 2002)

wenn der text den du schreibst zu lang für die seite ist passiert kein zeilen umbruch
contniue_text machste um in der nächsten zeile zu schreiben

grafik und text aufrufe der funktionen darfst du nicht mischen

erst grafik abschliessen dann text schreiben ..


----------



## fungo (19. Juli 2002)

und wie mach ich nun nen umbruch?


----------



## THE REAL TOOLKIT (19. Juli 2002)

versuch mal \n


----------



## Bomber (19. Juli 2002)

> Ich dachte nie, ich würde alleine sterben, nach 6 Monaten werde ich vergessen sein. Gebt all meine Sachen zu meinen ganzen Freunden, ihr werdet nie wieder einen Fuß in mein Zimmer setzen. Ihr werdet es abschließen, es zunageln. Bitte sagt meiner Mutter es ist nicht ihre Schuld.



ist das dein ernst?


----------



## fungo (19. Juli 2002)

hat sich erledigt mit dem umbruch:

pdf_show_boxed(...) ist die Lösung


----------



## THE REAL TOOLKIT (19. Juli 2002)

> _Original geschrieben von Bomber _
> *
> 
> ist das dein ernst?  *




rofl
natürlich nicht
ganz so bescheuert bin ich auch nicht
is nen songtext von blink182

ps:sorry für offtopic


----------



## TheMike (5. März 2003)

**arghs**

irgendwie will das net so ... 

ich hab das script von oben übernommen und bei mir lokal getestet.

kommt auch keine fehlermeldung und acrobat scheint aufzustarten - jedenfalls kommt das start-bild.

aber mehr passiert dann nicht ... der browser mit der php bleibt weiss und acrobat ist zwar in im task-manager unter den prozessen aufgeführt, aber nicht bei den anwendungen.

bei der php scheint er aber was zu rechnen ... jedenfalls kann ich den quellcode net angucken.

und nach n paar minuten kommt folgende fehlermeldung:
es ist ein datei-E/A-fehler aufgetreten. das zeitlimit für die verbindung wurde überschritten.

what's wrong?

thx schon jetzt


----------



## socKe|bla (5. März 2003)

hast du überhaupt die pdflib installed Mike?


----------



## TheMike (5. März 2003)

jeppa

aus meiner phpinfo:
PDF Support enabled 
PDFlib GmbH Version 4.0.3 
Revision $Revision: 1.7.2.14 $


----------



## socKe|bla (5. März 2003)

hmm, dumm, aber bei mir gehts und ich hab noch ne ältere pdflib version. aber bei mir hackt das auch manchmal, dass da nix kommt und dann gehts wieder, so ähnlich wie beim real player ^^


----------

