![]() |
| | Themen-Optionen | Thema durchsuchen |
| | Nach oben #1 |
| Gast
Beiträge: n/a
|
Hallo, ich bin verzweifelt, ich muss ein Programm schreiben das möglichst fehlerfrei ein HTML Dokument interpretiert und diese Interpretation in eine PDF schreibt. Als erstes habe ich mir dafür den Reportmanager sowie den PDF schreiber von http://big.faceless.org angesehen... musste aber feststellen, das ein dummer roter demo stempel immer in der Mitte auftaucht... (ist ansonsten nach mein geschmack eine echt schöne libary)... dann habe ich auf der seite http://128.146.118.49/ etwas über das die klasse Html2pdf gelesen die auf Itext aufbaut... Super dachte ich mir, hab es ausprobiert, funktionierte, hab eine etwas komplexere html datei (nein kein browserseitigen script, nicht mal css nur eine tabelle) und bumm es funktionierte nicht mehr richtig... dann habe ich mir gedacht es selber zu programmieren... und zum reinschreiben die APIs von Itext zu benutzen... Aber wäre wegen der unzälligen vielfalt der HTML Tags eine mühsame aufgabe. Dann habe ich es mit IText ausprobiert... aber wie schon mit Html2Pdf hat es so seine probleme... zwar andere aber auch welche... Code: public static void main(String[] args) {
// Erzeugt eine Neue Dokument Instanz
Document doc = new Document(PageSize.A4, 80, 60, 60, 60);
try {
// Erzeugt ein PdfWriter in dem der Inhalt aus dem Dokument in die Datei xml3pdf.pdf geschrieben wird
PdfWriter.getInstance(doc, new FileOutputStream("xml3pdf.pdf"));
// Parst die htmldatei und kopiert den Inhalt in die PDF
HtmlParser.parse(doc, "dasistWahr.htm");
}
catch (DocumentException e)
{
e.printStackTrace();
}
catch(IOException e)
{
e.printStackTrace();
}
}
der Interpretiert teilweise ganz anders als z.B. der InternetExplorer.... Code: <html>
<head>
<!-- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
!-->
</head>
<body>
<table width="200" border="0">
<tr>
<td>hier</td>
<td>und</td>
</tr>
<tr>
<td>da</td>
<td><div align="center">das</div></td>
</tr>
</table>
ist <em>wahr haha </em>
<div align="center">das</div>
<div align="right"><img src="bla.JPG" width="131" height="68"></img>
</div>
</body>
</html>
unterschiedlich zentriert ist (die attribute in den div tags) und wiederrum dadrunter wird die datei "bla" eingespielt und rechts zentriert.... im PDF sieht das nun so anders aus... die Tabellenbreite bezieht sich auf das ganze Formular (width wird nicht akzeptiert) die ausrichtung des textes und der bilder wird ignoriert (probleme mit dem tag align) und das merkwürdigste das bild ist über dem Text (keine erklärung dafür...) Wie man sieht bringt mir das nicht viel weiter, also frage ich mich, gibt es was womit ich vielleicht eine html datei in eine xml konventieren kann... da ich eine xml mit DTD auch in eine pdf konventieren kann... Die libary muss aber die html sauber konventieren... oder vielleicht habt ihr eine alternative? ich wäre für hilfe dankbar |
|
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | Thema durchsuchen |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| [CSS] Div + CSS + IE6 -> Problem | Binary | HTML, XML und CSS | 5 | 14.02.2007 16:24 |