phpbar.de logo

Mailinglisten-Archive

[php] WYSIWYG Editoren und PDF

[php] WYSIWYG Editoren und PDF

Lutz Zetzsche Lutz.Zetzsche at sea-rescue.de
Die Feb 15 11:22:41 CET 2005


Hi Thorsten,

Thorsten Koch schrieb:
> wir planen in einem Projekt den Einsatz von WYSIWYG-Webeditoren (HTML-Area
> und andere). Mit diesen kann der Anwender ja sehr leicht seinen
> eingegebenen Text formatieren. Nun bietet unsere Applikation aber auch die
> Erstellung von PDF-Dokumenten an und die Inhalte kommen auch aus eben so
> formatierten Eingabefeldern. In der PDF-Datei wird dann aber der HTML-Code
> stehen, der vom WYSIWYG-Editor erstellt worden ist.
>
> Nun das spannende: Wie bekomm ich es hin, dass der TEXT im HTML mit dem
> Text in der PDF-Datei identisch ist. Gibt es eine Möglichkeit bei PDF
> Formatierungen auch mit einer TAG-Sprache zu definieren? Oder muss ich mir
> einen HTML-Parser schreiben und dann die Formatierungen mit den
> PDF-Befehlen selber herleiten (mir graust jetzt schon davor, wenn ich mir
> nur vorstelle, dass der Benutzer unterschiedliche Formatierungen in ein
> und derselben Zeile macht).
>
> Oder gibt es gar nochmal eine dritte Möglichkeit?

ich bin gerade mit sowas beschäftigt. ;-) Hier funktioniert das so:

1. Die Daten stehen in der Datenbank, Texte können HTML enthalten. Sie
werden derzeit in Internetseiten und PDFs verwendet.
2. Die Daten werden in XML-Datei exportiert ("&" im Text müssen als
"&" maskiert werden usw. HTML-Tags müssen für Deinen Zweck im Klartext
in der XML-Datei stehen, d.h. "<" und ">" dürfen nicht maskiert sein.)
3. Ich schreibe ein XSL-Stylesheet.
4. XML-Datei (Daten) und XSL-Datei (Stylesheet) werden einem XSLT-Parser
übergeben (bei uns Saxon), der beides zusammenführt und als Ergebnis eine
XSL:FO-Datei ausgibt.
5. Die XSL:FO-Datei wird an einen PDF-Parser verfüttert, der daraus das
PDF generiert. Ich verwende derzeit den kostenfreien FOP, der aber z.B.
kein CYMK beherrscht (jedenfalls meine Version). Der XSLTFormatter soll
ganz gut sein, ist aber kostenpflichtig.


Viele Grüße

Lutz


php::bar PHP Wiki   -   Listenarchive