0

我使用以下方法将 ImageIcon 转换为缩略图:

ImageIcon im = new ImageIcon(url);
Image image = im.getImage().getScaledInstance(80,100,Image.SCALE_DEFAULT);

现在,当我尝试使用 html 在 JLabel 中显示图像时遇到问题。在将 ImageIcon 转换为 Image 之前,以下代码运行良好:

JLabel label = new JLabel("<html>" + im);

但是现在当我尝试使用图像做同样的事情时,它不起作用。关于如何在 JLabel 中使用 html 显示结果图像的任何想法?

4

2 回答 2

1

有什么问题:

JLabel label = new JLabel("<html><img height='" + height + "' width='" + width
               + "' src='" + url + "'></html>");

例如:

JLabel label = new JLabel("<html><img  height='80' width='100' src='https://developer.cdn.mozilla.net/media/img/mdn-logo-sm.png' /></html>");

注意:不要将 px 添加到高度或宽度值

这里的一些文档:

http://docs.oracle.com/javase/7/docs/api/javax/swing/text/html/ImageView.html

于 2013-12-23T11:05:43.840 回答
-1

您不能在 JLabel 中显示 HTML 代码。您将需要使用 htmlPanel。您可以稍后设置它的首选大小,这是您需要添加的内容。

JPanel htmlPanel = new HtmlPanel("<html><body><img src="file path goes here"></body></html>");

这是我编写的完整代码。

JPanel htmlPanel = new HtmlPanel("<html><body><img src="images/file.png"></body></html>");

htmlPanel.setPreferredSize(new Dimension(TheWidthGoesHere, TheHeightGoesHere));

然后,您可以像添加任何其他组件一样将 htmlPanel 添加到您的框架中。

frame.add(htmlPanel);
于 2013-04-24T11:37:39.050 回答