For the image all I get is a broken image, is it possible to nest img tags inside a JLabel
Это возможно отображать изображения в тексте JLabel. Вы получаете испорченные изображения, потому что путь неверен . Вам нужно либо добавить префикс к вашему пути с file:
, либо, желательно, получить Java, чтобы сделать это для вас с class.getResource("/your/path")
. Вот рабочий пример, просто вставьте допустимые пути к ресурсам.
import java.awt.BorderLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class MultipleImagesExample
{
public static void main(String[] args)
{
JFrame frame = new JFrame();
frame.setLayout(new BorderLayout());
JLabel label = new JLabel(
"<html>"
+ "<img src=\""
+ MultipleImagesExample.class.getResource("/resource/path/to/image1")
+ "\">"
+ "<img src=\""
+ MultipleImagesExample.class.getResource("/resource/path/to/image2")
+ "\">"
+ "The text</html>");
frame.add(label, BorderLayout.CENTER);
frame.setBounds(100, 100, 200, 100);
frame.setVisible(true);
}
}
Для более сложного HTML в Java, я рекомендую xhtmlrenderer .