J'ai un objet Image que je voudrais convertir en icône ou ImageIcon pour ajouter à un JTextPane. Comment pourrais-je procéder? (c'est en Java)
clarification: mon "Image" est une instance de l'Objet Image, pas un Fichier.
Quel est le problème avec new ImageIcon(Image)
?
Image img = ...
ImageIcon icon = new ImageIcon(img);
Ajoutez l'image à votre document 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);
Essaye ça...
Toolkit t = Toolkit.getDefaultToolkit();
Image i = t.getImage("icon.gif");
setIconImage(i);
convertir l'image en icône, par exemple définir Icon en jLable dans les netbeans, j'utilise le code ci-dessous pour le rendre vrai:
JLabelname.setIcon(new javax.swing.ImageIcon(getClass().getResource("/slip/images/null_phot.png")));
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);