2012-02-02 70 views
0

我试图加载到JTextPane本地图像,并且该程序无情地显示一个破碎的图像图标。这是HTML代码:JTextPane与HTML - 本地图像将不会加载


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

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

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

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

+0

该HTML代码段无效(对于任何HTML版本)。 – 2012-02-02 18:36:14

回答

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. 被解释为HTML中,摘录需要开始与<html>
  2. 的显示的代码段是无效的HTML,有是一个尾随"。结束/对于HTML 3.2(Java声称理解的唯一版本)也是无效的。
  3. 路径错误。的C:\farmostrich.gifC:\\farmostrich.gif在Java String)一个File转换为一个URI的file:/C:/farmostrich.gif

注意,编程并不神奇。如果你把垃圾放进去,你会得到垃圾。

+0

1.这是一个片段,而不是整个HTML文件,它明显以html,body开头。 2.实际的代码没有结尾“我试过/>和>,都没有工作 3.从至少从一个文件读入时,html不需要转义字符。 ,垃圾注释掉 – 2012-02-02 18:51:39

+1

很明显你也许很明显,如果你发布[SSCCE](http://sscce.org/),注意大多数程序员不能写HTML来挽救他们的生命,所以我不打算假定你是有能力的。尤其是当单行HTML片段发布时,在两个方面都是错误的;) – 2012-02-02 18:56:37