JTextPane с HTML - локальное изображение не загружается - PullRequest
0 голосов
/ 02 февраля 2012

Я пытаюсь загрузить локальное изображение в JTextPane, и программа неустанно отображает значок испорченного изображения. Это HTML-код:


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

Программа создает экземпляр JTextPane и отображает другие части html-файла (например, текст, гиперссылки), но без изображения.

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

Есть предложения? Спасибо всем большое!

Ответы [ 2 ]

2 голосов
/ 02 февраля 2012

Мне нравится: добавление изображения в папку 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 голос
/ 02 февраля 2012
  1. Для интерпретации как HTML, фрагмент должен начинаться с <html>
  2. Показанный фрагмент кода не является допустимым HTML, есть трейлинг ". Закрытие / также недопустимо для HTML 3.2 (единственная версия, которую, как утверждает Java, понимает).
  3. Путь неправильный. File из C:\farmostrich.gif (C:\\farmostrich.gif в Java String) преобразуется в URI file:/C:/farmostrich.gif

Обратите внимание, что программирование не волшебство. Если вы положите мусор, вы получите мусор.

...