带有HTML的JTextPane - 本地图像将无法加载

时间:2012-02-02 18:26:18

标签: java swing icons jtextpane

我正在尝试将本地图像加载到JTextPane中,程序会无情地显示一个损坏的图像图标。这是HTML代码:


    <img src="file:\\C:\farmostrich.gif" width=77 height=777"/>

程序实例化JTextPane并显示html文件的其他部分(例如文本,超链接),但没有图像。

textPane = new JTextPane();
textPane.setContentType("text/html");
textPane.setText(htmlString);

有什么建议吗?非常感谢你们!

2 个答案:

答案 0 :(得分:2)

我喜欢这样:将图像添加到src文件夹

textPane = new JTextPane();
textPane.setContentType("text/html");
String htmlString = "<html><body width=\"595\" height=\"842\">
   <div align=\"left\"><img src=\"" + this.getClass().getClassLoader()
   .getResource("images/logo_html.png").toString()+"\" /></div>.....";
textPane.setText(htmlString);

答案 1 :(得分:1)

  1. 要解释为HTML,代码段需要以<html>
  2. 开头
  3. 显示的代码段不是有效的HTML,有一个尾随"。结束/对于HTML 3.2(Java声称理解的唯一版本)也无效。
  4. 路径错了。 File C:\farmostrich.gif(Java C:\\farmostrich.gif中的String)转换为file:/C:/farmostrich.gif
  5. 的URI

    请注意,编程不是魔术。如果你把垃圾放进去,你就会把垃圾扔掉。