PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Java + HTML Renderer


RMC
2006-01-07, 18:13:46
Ich möchte in Java eine einfache HTML Seite anzeigen lassen, nix besonderes. Hab auch Source-Code gefunden, der das ganz gut macht, nur Bilder werden irgendwie nicht angezeigt und das wär mir sehr wichtig.

Also <img src="grafik.gif"> funktioniert zb nicht. Es wird einfach angezeigt dass das Bild nicht geladen werden kann. Hier der Code:


private void loadDocument(JFrame container)
{
String htmlString = readHTMLFromFile();
System.out.println(htmlString);
HTMLEditorKit html = new HTMLEditorKit();
JTextPane editor = new JTextPane();
editor.setEditorKit(html);
editor.setEditable(false);
editor.setContentType("text/html");
JScrollPane scroller = new JScrollPane();
scroller.getViewport().add(editor);
container.getContentPane().add(scroller, BorderLayout.CENTER);
try{
html.insertHTML((HTMLDocument)editor.getDocument(), 0, htmlString,0,0,HTML.Tag.HTML);
}
catch (Exception e)
{
e.printStackTrace();
}
}

private String readHTMLFromFile()
{
String html = "";

try
{
String s;
InputStream ins = new FileInputStream("blubb.html");
BufferedReader in = new BufferedReader(new InputStreamReader(ins));
while((s = in.readLine()) != null)
{
html += s;
}
}
catch(Exception e)
{
e.printStackTrace();
}

return html;
}



Das HTML dazu sieht so aus:


<html>
<body>
Bla blau blubb blubb<br> blubb blubb <br><br><b>haha</b>
<img src="grafik.gif"><br><br>
<a href="seite2.html">blubb</a>
</body>
</html>



Alle Tags funktionieren, nur die Grafik kann nicht angezeigt werden. Sie liegt aber im selben Ordner wie das HTML File. Habs mit PNG und GIF versucht.


Woran liegts?

Trap
2006-01-07, 18:25:55
Nicht an dem Code den du geposted hast.

Ich würde vermuten, dass die HTML-Lib diese Art von img-Tag nicht unterstützt. Du scheinst die HTML-Lib aus der JDK zu benutzen, mal nachgucken.

Gast
2006-01-07, 20:52:27
Versuch mal
<img src="..." alt="..." />

Sephiroth
2006-01-07, 23:11:11
Wie der Gast über mir bereits andeutete, muß der IMG-Tag auch wieder geschlossen werden.
Offenbar wird in dem original Dokument <img /> so verwendet und die HTML-Lib kommt wohl nur mit <TAG>bla</TAG> zurecht.

RMC
2006-01-07, 23:36:47
nein leider :(

<img /> kennt er gar nicht (da er das '>' Zeichen dann ausgibt) und <img></img> hilft leider auch nicht weiter. Auch das ALT Tag brachte nicht den gewünschten Erfolg.

Er zeigt zwar an dass hier ein Bild rein soll, aber er rendert nur einen Platzhalter.

Hier ist mal die Ausgabe:

mithrandir
2006-01-08, 08:40:34
Hast du schon einmal eine absolute File-URL im img-Tag verwendet?

RMC
2006-01-08, 13:05:07
Hast du schon einmal eine absolute File-URL im img-Tag verwendet?

ja...aber das wär ja wirklich beschissen wenns daran liegen würde ;) Also nein, funzt auch net :(

Ma, ich versteh net warum...das Tag an sich schafft er ja, weil er weiß dass hier ein Bild rein muss (nachdem er den Platzhalter zusammenbringt). Irgendwas hats da...