PyRTF

Häufig wünscht man sich, aus einer Menge von Daten Informationen extrahieren und neu zusammenstellen zu können. Möchte man Text-Daten ansehnlich formatieren und in einer Datei abspeichern, bleiben aber nurnoch wenig Wege das zu tun. Zwar könnte man die Informationen in einer HTML-Seite darstellen und durchaus brauchbar formatieren, allerdings eignet sich das denkbar schlecht, möchte man die Daten später drucken. Plain-Text kommt selten in Frage, ebenso der Umweg über (La)TeX. Ein PDF wäre wünschenswert, die entsprechenden PDF-Libraries unterstützen aber nur das gezielte Setzen einzelner Textblöcke, sodass man sich quasi eine eigene Rendering-Engine schreiben müsste, will man längere und mehrfach untergliederte Texte strukturiert und ansehnlich formatiert zu Papier bringen.

In diese Bresche springt RTF. Ursprünglich in Redmond entwickelt existieren viele freie Implementationen und gängige Textverarbeitungsprogramme wie OpenOffice und Abiword unter Linux können damit ebenso umgehen wie Word und das bei Windows gratis mitgelieferte WordPad. RTF erscheint somit als brauchbares plattformunabhängiges Format, mit dem sich Text ansehnlich formatieren und strukturieren lässt, ohne viel Aufwand zu betreiben, da die eigentliche Umsetzung in ein Layout erst beim Öffnen des fertigen Dokuments vom entsprechenden Programm vorgenommen wird.

PyRTF ermöglicht es, mit Python RTF Dateien zu erstellen. Das Projekt wurde ursprünglich auf SourceForce (http://pyrtf.sourceforge.net/) entwickelt, scheint aber seit Mai 2005 nichtmehr betreut zu werden. Die Klassen-, Attribut- und Methodennamen weisen eine seltsame Groß-/Kleinschreibung auf und entsprechen so längst nichtmehr den Empfehlungen. PyGTK-NG hat versucht, sich dieses und anderer Probleme anzunehmen, ist inzwischen aber offenbar auch bereits eingestellt worden. Zu beiden Projekten existiert keinerlei Dokumentation, sodass der geneigte Programmierer mit den mitgelieferten "Examples" Vorlieb nehmen und daraus seine Erkenntnisse herleiten muss.

Dennoch ist PyRTF eine empfehlenswerte Bibliothek, möchte man RTF zum Textaustausch verwenden, was in manchen Fällen so ziemlich der einzige Weg ist. Mit "Ted" (http://www.nllgg.nl/Ted) soll es angeblich auch möglich sein, RTF Dateien mittels Kommandozeilenprogramm in PDF Dateien umzuwandeln.

Tags: Python