HTML als Ausgabeformat - lohnt sich eine templating engine?

Django, Flask, Bottle, WSGI, CGI…
Antworten
bb1898
User
Beiträge: 216
Registriert: Mittwoch 12. Juli 2006, 14:28

Für verschiedene Zwecke brauche ich Jahreskalender auf einer oder zwei DIN A4-Seiten. Einen davon erzeuge ich zur Zeit als Unterklasse von LocalHTMLCalendar (Modul calendar), muss da aber etwas ändern. Und ich hätte lieber HTML5 (Doctype, meta-Tag). Den anderen hole ich mir zur Zeit aus dem Netz, muss dann aber noch daran herumfummeln; lieber würde ich auch den selbst erzeugen.
Außerdem könnte ich mir auch für andere Zwecke HTML als Ausgabeformat vorstellen. Alles statisch, alles mit Endziel Drucker.
Lohnt es sich da, Lernaufwand in eine der Templating Engines für Python zu investieren? Oder sind die nur für richtige Webanwendungen nützlich?
BlackJack

@bb1898: Ich würde sagen da lohnt sich eine Template Engine auf jeden Fall. So wirklich hoch ist der Lernaufwand doch auch gar nicht. Man muss doch im Grunde nur wissen wie man Schleifen und Werte in der Templatesprache ausdrückt, und dann wie man im Code ein Template und die Daten zusammen bekommt.
Sirius3
User
Beiträge: 18255
Registriert: Sonntag 21. Oktober 2012, 17:20

@bb1898: ob sich der Aufwand lohnt, mußt Du selbst entscheiden. Meiner Meinung nach ist der Lernaufwand für eine Templating Engine eher gering, einmal die wichtigen Abschnitte der Dokumentation von Jinja durchzulesen ist in einer Stunde erledigt. Sobald Du selbst etwas schreiben mußt, um Blöcke zusammenzusetzen und Schleifen durchzulaufen, hat sich diese Stunde gleich gelohnt.
Benutzeravatar
MagBen
User
Beiträge: 799
Registriert: Freitag 6. Juni 2014, 05:56
Wohnort: Bremen
Kontaktdaten:

bb1898 hat geschrieben:Alles statisch, alles mit Endziel Drucker.
Ist da HTML wirklich das geeignete Format?
Hast Du Dir mal überlegt pdf oder LaTeX mit Python zu generieren? Insbesondere bei mehrseitigen Dokumenten wird das mit Kopf- und Fußzeile sowie Seitennummern einfacher.
a fool with a tool is still a fool, www.magben.de, YouTube
bb1898
User
Beiträge: 216
Registriert: Mittwoch 12. Juli 2006, 14:28

MagBen hat geschrieben:
bb1898 hat geschrieben:Alles statisch, alles mit Endziel Drucker.
Ist da HTML wirklich das geeignete Format?
Hast Du Dir mal überlegt pdf oder LaTeX mit Python zu generieren? Insbesondere bei mehrseitigen Dokumenten wird das mit Kopf- und Fußzeile sowie Seitennummern einfacher.
HTML hat den Riesenvorteil, dass ich es wenigstens einigermaßen verstehe. Ich habe in anderem Zusammenhang mal versucht, durch die Reportlab-Dokumentation durchzusteigen, das ist mir aber überhaupt nicht gelungen. Gibt es denn Python-Moduln, mit denen man PDF (oder evtl. auch LaTeX, das ich genauso wenig kenne) erzeugen kann und die nicht voraussetzen, dass man sich mit dem Format schon auskennt?
BlackJack

@bb1898: Ich würde mal sagen nein, aber das ist auch nicht wirklich verwunderlich. Wenn man eine bestimmte Technik verwenden möchte, muss man die halt kennen(lernen). :-)
Benutzeravatar
noisefloor
User
Beiträge: 4181
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

bei ReportLab muss du ja auch nicht wissen, wie ReportLab das PDF an sich baut, sondern nur, wie du das Aussehen hinkriegst. Entweder low-level mit direktem Zeichnen auf den Canvas oder High-Level mit Platypus. Da ReportLab ziemlich mächtig ist und PDF-Dokumente an sich auch ziemlich viel "können", ist da am Anfang halt schon eine Lernkurve vorhanden.

Wie MagBen schon sagt, kannst du bei HTML nicht wirklich sicher sein, dass das auf jedem System und jedem Drucker so aussieht, wie es soll. Zwar bieten HTML5/CSS3 ziemlich viele Möglichkeiten, dass Druckbild zu beeinflussen - aber einfach zu verstehen ist das IMHO auch nicht mehr.

Gruß, noisefloor
bb1898
User
Beiträge: 216
Registriert: Mittwoch 12. Juli 2006, 14:28

noisefloor hat geschrieben:Hallo,

bei ReportLab muss du ja auch nicht wissen, wie ReportLab das PDF an sich baut, sondern nur, wie du das Aussehen hinkriegst. Entweder low-level mit direktem Zeichnen auf den Canvas oder High-Level mit Platypus. Da ReportLab ziemlich mächtig ist und PDF-Dokumente an sich auch ziemlich viel "können", ist da am Anfang halt schon eine Lernkurve vorhanden.
Wie wahr. Aber vielleicht probiere ich es doch noch mal. Aus Dabo heraus habe ich schon erfolgreich Reports produziert; das benutzt auch Reportlab, vereinfacht die Verwendung aber erheblich.
Wie MagBen schon sagt, kannst du bei HTML nicht wirklich sicher sein, dass das auf jedem System und jedem Drucker so aussieht, wie es soll.
Das wäre nicht so sehr das Problem, alles Eigenbedarf. Ganz auszuschließen ist es aber auch nicht, dass mir da plötzlich einer mit dem IE dazwischenpfuscht.
Antworten