[PHP] Server-side HTML/CSS naar PDF

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Een tijdje al zoek ik software om gegenereerde HTML + CSS in een geautomatiseerd proces te converteren naar PDF. Het liefste met PHP.

De webserver waar het straks op moet draaien draait Windows 2003 Professional.
Ik heb hier op GoT gezocht voor antwoorden, maar niets kunnen vinden wat goed in de buurt kwam van wat ik zoek en ook nog werkte... ;)

Daarnaast heb ik ook op Google gezocht en o.a. de volgende open source scripts gevonden;De HTML pagina die ik wil converteren wordt gegenereerd door PHP en bevat semantische HTML, de opmaak heb ik met CSS aangepast. Alle HTML naar PDF converters struikelen hier over....

Toen kreeg ik de tip om eens te kijken op adobe.com waarop de Adobe PDF Online service staat. Met het doorgeven van de URL bleek al snel dat de output PDF verreweg de beste was, en de plaatjes en CSS werden beiden bijna volledig goed geïnterpreteerd.
Het probleem met deze service is dat ik de genereerde PDF direct aan klanten aan wil bieden, dus zonder enige overbodige stappen.

Het grootste probleem is dus het vinden van een script dat HTML + CSS correct interpreteert. Heeft iemand hier ervaring mee? Alvast bedankt!

Acties:
  • 0 Henk 'm!

  • AtleX
  • Registratie: Maart 2003
  • Niet online

AtleX

Tyrannosaurus Lex 🦖

Ik heb vrij goede resultaten met HTML2PS/PDF, de image quality is standaard niet best, maar met pdflib wordt die wel een stuk beter. Vrij veel CSS dingen worden ook gewoon ondersteunt, maar met dingen als overflow:auto gaat hij nog de mist in.

Sole survivor of the Chicxulub asteroid impact.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
AtleX schreef op dinsdag 16 augustus 2005 @ 11:30:
Ik heb vrij goede resultaten met HTML2PS/PDF, de image quality is standaard niet best, maar met pdflib wordt die wel een stuk beter. Vrij veel CSS dingen worden ook gewoon ondersteunt, maar met dingen als overflow:auto gaat hij nog de mist in.
Bedankt voor de link, dit script ziet er goed uit... Ik ben alleen bezig met het configureren en testen en ik krijg de volgende error:
Ghostscript executable not found. You will not be able to generate PDF using PDF (Ghostscript, level 1.2) or PDF (Ghostscript, level 1.4) options, as these output methods require GNU Ghostscript or AFPL Ghoscript to be installed on your server.
Ik heb GhostScript AFPL geïnstalleerd, PHP's safe mode uit, etc etc...

Daarna heb ik de path naar GS aangepast in 'writer.class.php'
PHP:
1
 define('GS_PATH','c:\webserver\gs\gs8.51\bin\gswin32c.exe');

Dit pad klopt gewoon wanneer ik hem uitvoer bij Start Menu > Run...

Ik ben vast iets vergeten maar ik heb geen idee wat. Ik draai Win2000 met Apache 2 en PHP 5.

Acties:
  • 0 Henk 'm!

  • Gert
  • Registratie: Juni 1999
  • Laatst online: 07-11-2024
De IIS gebruiker heeft wel execute rechten?

Acties:
  • 0 Henk 'm!

  • Slagroom
  • Registratie: Juni 2001
  • Laatst online: 05-10-2024
is het niet \\ of // in je path?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Gert schreef op dinsdag 16 augustus 2005 @ 13:57:
De IIS gebruiker heeft wel execute rechten?
Zoals ik zei draai ik Apache 2 en geen IIS, moet ik daar ook nog gebruikersrechten voor instellen?
Beiden heb ik al geprobeerd, en volgens mij hoef je \ niet te escapen in enkele quotes.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Heb wat zitten testen en ik krijg echt niks normaal aan de praat, vreselijk irritant. Had niet verwacht dat het HTML naar PDF proces nog zo in de kinderschoenen stond...

Ik ben nu aan het klooien met html2ps. De PHP versie bleek ongelooflijk traag, dus ik heb toen maar de Perl versie van html2ps geprobeerd. PDFlib gaf een watermark over het hele PDF document heen.
Perl is nooit echt mijn ding geweest... Ik werd er gelijk weer aan herinnerd waarom. Ik moet lachen en huilen tegelijk als ik die syntax lees. ;)

Anyway, ik vraag me af of er mensen zijn die html2ps werkend hebben gekregen op Windows. Iemand?

Mijn situatie is als volgt:
- Windows platform
- Webserver => IIS (op de doel-server), Apache 2 (op mijn lokale test-server; onbelangrijke info dus)
- ActivePerl geïnstalleerd in C:\perl\
- GhostScript AFPL geïnstalleerd in C:\gs\
- html2ps uitgepakt in c:\html2ps\
- PHP 5.0.4 geïnstalleerd met o.a. Zlib, GD & DOM XML extensions

Geconverteerd moet worden:
- valid HTML pagina met CSS, er zit 1 plaatje in en een externe stylesheet

Kan iemand me a.u.b. in stappen vertellen wat er moet gebeuren om html2ps correct aan de praat te krijgen? Alvast bedankt!

[edit] Dit is trouwens de error die ik krijg van html2ps: (servernaam vervangen door localhost wegens privacy)
code:
1
2
3
4
5
6
7
8
9
10
11
DEBUG: html2ps command run: perl "c:\html2ps\html2ps  -f C:\Accounts\localhost\html2pdf\CONF0.tmp -o C:\Accounts\localhost\html2pdf\PS-F2.tmp C:\Accounts\localhost\html2pdf\HTMF1.tmp.html" 2>&1

DEBUG: html2ps output: 

DEBUG: config file: C:\Accounts\localhost\html2pdf\CONF0.tmp (not removed)

DEBUG: html file: C:\Accounts\localhost\html2pdf\HTMF1.tmp.html (not removed)

DEBUG: ps file: C:\Accounts\localhost\html2pdf\PS-F2.tmp (not removed)

Error: there was a problem running the html2ps command. Error code returned: 128. setDebug() for more information.

PS die quotes na perl zijn er expres bijgezet, maar de code werkt ook zonder de quotes (standaard) niet...

[ Voor 34% gewijzigd door Verwijderd op 22-08-2005 14:52 ]

Pagina: 1