drucken von webseiten konzeption und realisierung eines report generator-plugin für das eclipse...
TRANSCRIPT
Drucken von Webseiten
Konzeption und Realisierung eines Report Generator-Plugin für das Eclipse Framework zurdynamischen Generierung eines XSL-FO basierten Outputstreams zur Erzeugung von eReportPDF-Files.
DaimlerChryslerITP/FP ProduktionsleittechnikWinfried Höflich DaimlerChryslerProf Harms FHTE
Automatische PDF Generierung - eReports
Achim Schietinger
Drucken mit XSL-FO
Achim Schietinger
HTML für Browser optimiertDrucken•HTML im Browser•HTML zum Drucken•Drucken mit CSS•XSL-FO
eReports
Achim Schietinger
HTML zum Drucken optimiertDrucken•HTML im Browser•HTML zum Drucken•Drucken mit CSS•XSL-FO
eReports
Achim Schietinger
Cascading Stylessheets http://www.w3c.org/TR/REC-CSS1
+ (fast) Kein zusätzlicher Trafic
- Jedes Tag muss mehrfach definiert werden
- - Webentwickler muss jedes Tag als druckbar / nicht druckbar markieren
Drucken mit CSS
+ Keine zusätzliche Druckversion
Drucken•HTML im Browser•HTML zum Drucken•Drucken mit CSS•XSL-FO
eReports
Achim Schietinger
eXtensible Stylesheet Language - Formatting Objects
FO sind Bestandteil der XSL-Spezifikation http://www.w3c.org/TR/xsl/
XSL-FO
Formatierungsobjekte werden mit einem FOProzessor in das gewünschte Format umgewandelt Unterstützte ausgabeformate sind z.Z.:
AWT, PDF, print, SVG, Text, MIF, Area Tree Representation, PCL und PS
Drucken•HTML im Browser•HTML zum Drucken•Drucken mit CSS•XSL-FO
eReports
Achim Schietinger
<?xml version="1.0" encoding="utf-8"?> <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> <fo:layout-master-set> <fo:simple-page-master master-name="simple" page-height="21cm" page-width="29.7cm" margin-top="1cm" margin-bottom="2cm" margin-left="2.5cm" margin-right="2.5cm"> <fo:region-body margin-top="3cm"/> <fo:region-before extent="3cm"/> <fo:region-after extent="1.5cm"/> </fo:simple-page-master> </fo:layout-master-set> <fo:page-sequence master-reference="simple"> <fo:flow flow-name="xsl-region-body"> <fo:block font-size="20pt" font-family="sans-serif" line-height="24pt" space-after.optimum="15pt" background-color="blue" color="white" text-align="center" padding-top="3pt"> Diplomarbeit - Achim Schietinger </fo:block> <fo:block font-size="20pt" font-family="sans-serif" line-height="20pt" space-before.optimum="10pt" space-after.optimum="5pt" text-align="center" font-weight="bold" padding-top="3pt"> Thema </fo:block> <fo:block font-size="16pt" font-family="sans-serif" line-height="20pt" space-before.optimum="5pt"
space-after.optimum="10pt" text-align="start" border-left="2cm" padding-top="3pt"> Konzeption und Realisierung eines Report Generator-Plugin für das Eclipse Framework zur dynamischen Generierung eines XSL-FO basierten Outputstreams zur Erzeugung von e-Report PDF-Files. </fo:block> <fo:block font-size="16pt" font-family="sans-serif" line-height="20pt" space-before.optimum="5pt" space-after.optimum="5pt" text-align="start" border-left="2cm" padding-top="3pt"> In der Diplomarbeit sind die folgenden Pakete zu konzipieren und zu realisieren: </fo:block> <fo:list-block start-indent="50pt" provisional-distance-between-starts="18pt" space-before.optimum="12pt" > <fo:list-item> <fo:list-item-label end-indent="label-end()"> <fo:block>•</fo:block> </fo:list-item-label> <fo:list-item-body start-indent="body-start()"> <fo:block font-size="16pt"> Untersuchung der <fo:basic-link color="blue" external-destination= "http://www.w3.org/TR/2001/REC-xsl-20011015 /"> XSL - Formating Objects Spezifikation </fo:basic-link> ...
Achim Schietinger
Editorfunktionalität
eReports erzeugen
LaufzeitumgebungDruckeneReports•Laufzeitumgebung •Editorfunktionalität
Achim Schietinger
Applikations-Server
FOP Servlet
FOP Servlet
JSPJSP
XSL-FOStylesheet Datenbank
fo-styles.xsl xml.class
Request
Client -Browser -Applikation
Response
Link
document.fo
LaufzeitumgebungDruckeneReports•Laufzeitumgebung•Editorfunktionalität
Achim Schietinger
Data Access Classes liefern Daten
PrintFactory erzeugt InputStream
InputStream wird and FOP weitergeleitet und gerendert
LaufzeitumgebungDruckeneReports•Laufzeitumgebung•Editorfunktionalität
Achim Schietinger
XSL-FOBibliothek
Element
fo:element
fo-style.xsl preview.pdf
FOP Servlet
Editor
Menü
Stylesheet EditorDruckeneReports•Laufzeitumgebung•Editorfunktionalität
Achim Schietinger
DruckeneReports•Laufzeitumgebung•Editorfunktionalität
Einlesen Datei wird geparst und in das Objektmodell gewandelt
Speichern Dokument wird in Text umgewandelt und in XML-Datei geschrieben
Element erzeugen Liste von möglichen Elementen wird aus DTD erzeugt
Attribut erzeugen Liste von möglichen Attribute wird aus DTD erzeugt
Stylesheet Editor
Elemente manipulieren hinzufügen, verschieben, löschen, ändern ...
Achim Schietinger
eXtensible Stylesheet Language – Formatting Objects http://www.w3c.org/TR/xsl/ XML-basierten Webtechnologien http://www.w3schools.com freier FO Prozessor in Java http://xml.apache.org/fop/
Folien zu diesem Vortrag http://www.schietinger.com/diplomarbeit Noch Fragen [email protected]
Drucken mit XSL-FODrucken•HTML im Browser•HTML zum Drucken•Drucken mit CSS•XSL-FO
eReports•Laufzeitumgebung•Editorfunktionalität