Drucken von Webseiten Konzeption und Realisierung eines Report Generator-Plugin für das Eclipse...

12
Drucken von Webseiten Konzeption und Realisierung eines Report Generator-Plugin für das Eclipse Framework zur dynamischen Generierung eines XSL-FO basierten Outputstreams zur Erzeugung von eReport PDF-Files. DaimlerChrysler ITP/FP Produktionsleittechnik Winfried Höflich DaimlerChrysler Prof Harms FHTE Automatische PDF Generierung - eRepor Achim Schietinger Drucken mit XSL-FO

Transcript of Drucken von Webseiten Konzeption und Realisierung eines Report Generator-Plugin für das Eclipse...

Page 1: Drucken von Webseiten Konzeption und Realisierung eines Report Generator-Plugin für das Eclipse Framework zur dynamischen Generierung eines XSL-FO basierten.

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

Page 2: Drucken von Webseiten Konzeption und Realisierung eines Report Generator-Plugin für das Eclipse Framework zur dynamischen Generierung eines XSL-FO basierten.

Achim Schietinger

HTML für Browser optimiertDrucken•HTML im Browser•HTML zum Drucken•Drucken mit CSS•XSL-FO

eReports

Page 3: Drucken von Webseiten Konzeption und Realisierung eines Report Generator-Plugin für das Eclipse Framework zur dynamischen Generierung eines XSL-FO basierten.

Achim Schietinger

HTML zum Drucken optimiertDrucken•HTML im Browser•HTML zum Drucken•Drucken mit CSS•XSL-FO

eReports

Page 4: Drucken von Webseiten Konzeption und Realisierung eines Report Generator-Plugin für das Eclipse Framework zur dynamischen Generierung eines XSL-FO basierten.

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

Page 5: Drucken von Webseiten Konzeption und Realisierung eines Report Generator-Plugin für das Eclipse Framework zur dynamischen Generierung eines XSL-FO basierten.

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

Page 6: Drucken von Webseiten Konzeption und Realisierung eines Report Generator-Plugin für das Eclipse Framework zur dynamischen Generierung eines XSL-FO basierten.

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&#xFC;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>&#x2022;</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> ...

Page 7: Drucken von Webseiten Konzeption und Realisierung eines Report Generator-Plugin für das Eclipse Framework zur dynamischen Generierung eines XSL-FO basierten.

Achim Schietinger

Editorfunktionalität

eReports erzeugen

LaufzeitumgebungDruckeneReports•Laufzeitumgebung •Editorfunktionalität

Page 8: Drucken von Webseiten Konzeption und Realisierung eines Report Generator-Plugin für das Eclipse Framework zur dynamischen Generierung eines XSL-FO basierten.

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

Page 9: Drucken von Webseiten Konzeption und Realisierung eines Report Generator-Plugin für das Eclipse Framework zur dynamischen Generierung eines XSL-FO basierten.

Achim Schietinger

Data Access Classes liefern Daten

PrintFactory erzeugt InputStream

InputStream wird and FOP weitergeleitet und gerendert

LaufzeitumgebungDruckeneReports•Laufzeitumgebung•Editorfunktionalität

Page 10: Drucken von Webseiten Konzeption und Realisierung eines Report Generator-Plugin für das Eclipse Framework zur dynamischen Generierung eines XSL-FO basierten.

Achim Schietinger

XSL-FOBibliothek

Element

fo:element

fo-style.xsl preview.pdf

FOP Servlet

Editor

Menü

Stylesheet EditorDruckeneReports•Laufzeitumgebung•Editorfunktionalität

Page 11: Drucken von Webseiten Konzeption und Realisierung eines Report Generator-Plugin für das Eclipse Framework zur dynamischen Generierung eines XSL-FO basierten.

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 ...

Page 12: Drucken von Webseiten Konzeption und Realisierung eines Report Generator-Plugin für das Eclipse Framework zur dynamischen Generierung eines XSL-FO basierten.

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