web-dev-qa-db-ja.com

Java-画像をアイコン/ ImageIconに変換しますか?

JTextPaneに追加するためにIconまたはImageIconに変換したいImageオブジェクトがあります。これを行うにはどうすればよいですか? (これはJavaです)

明確化:私の「画像」はファイルではなく画像オブジェクトのインスタンスです。

15
Primm

new ImageIcon(Image) の何が問題になっていますか?

Image img = ...
ImageIcon icon = new ImageIcon(img);
40
Jeffrey

JTextPaneドキュメントに画像を追加します。

Image image = ImageIO.read(new File("myImage.jpg"));

StyleContext context = new StyleContext();
StyledDocument document = new DefaultStyledDocument(context);

Style labelStyle = context.getStyle(StyleContext.DEFAULT_STYLE);

Icon icon = new ImageIcon(image);
JLabel label = new JLabel(icon);
StyleConstants.setComponent(labelStyle, label);

document.insertString(document.getLength(), "Ignored", labelStyle);

JTextPane textPane = new JTextPane(document);
4
Reimeus

これを試して...

Toolkit t = Toolkit.getDefaultToolkit();

Image i = t.getImage("icon.gif");

setIconImage(i);
0

画像をアイコンに変換します。たとえば、アイコンをnetbeansのjLableに設定します。以下のコードを使用して、それをtrueにします。

JLabelname.setIcon(new javax.swing.ImageIcon(getClass().getResource("/slip/images/null_phot.png")));
0
Chauncey Lee
ImageIcon icon=null; 

ImageIcon imageicon = new ImageIcon("C:\\Winter.jpg");

if (imageicon != null) {

    if (imageicon.getIconWidth() > 60) {
        System.out.println(jLabel1.getWidth());
        icon = new ImageIcon(imageicon.getImage().getScaledInstance(26, -1, Image.SCALE_DEFAULT));
    } else {
        icon = imageicon;
}

jLabel1.setIcon((Icon) icon);
0
Shubham Goswami