Je peux pas instancier une Image de type com.itextpdf.text.Image

Fermé
yassine - 2 juin 2013 à 11:30
KX Messages postés 16760 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 12 février 2025 - 5 juin 2013 à 15:06
Bonjour,
j'ai la methode getInstance souslignee ..netbeans me donne "cannot find symbole" or mon itext.jar est bien installé dans la librairie;



private void pdfActionPerformed(java.awt.event.ActionEvent evt) throws BadElementException, IOException {
// TODO
try {


OutputStream file = new FileOutputStream(new File("decision.pdf"));

Document document = new Document();
PdfWriter.getInstance(document, file);

document.open();
Image img=new Image.getInstance("a.jpg");
document.add(img);
document.add(new Paragraph("jdhfhdjhjfdjhfhdjhfjhdjfhjdhjfhjdh"));







document.close();




} catch (FileNotFoundException | DocumentException e) {
}
}

aidez moi s'il vous plait c'est trés urgent, Merci d'avance.

4 réponses

KX Messages postés 16760 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 12 février 2025 3 020
5 juin 2013 à 06:05
Regarde la documentation c'est fait pour ça !

https://api.itextpdf.com/itext/com/itextpdf/text/Image.html

Extrait :

Direct Known Subclasses:
          ImgCCITT, ImgJBIG2, ImgRaw, ImgTemplate, ImgWMF, Jpeg, Jpeg2000

public abstract class Image

Comme le disait choubaka, "Image est une classe abstraite... elle ne peut donc pas être instanciée", il faut donc utiliser une de ses classes filles, Jpeg par exemple.

On va donc voir la documentation de la classe Jpeg :
https://api.itextpdf.com/itext/com/itextpdf/text/Jpeg.html

Et là on trouve tout ce qu'il faut pour construire notre image...

URL url = new File("C:/img.jpg").toURI().toURL();
Image img = new Jpeg(url);

Il faut que tu apprennes à utiliser la documentation, parce que tu ne peux pas deviner toutes les classes et méthodes qui existent. La recherche Google que j'ai faite pour te trouver ces informations, la prochaine fois c'est toi qui la fera...

PS. la documentation de Java : https://docs.oracle.com/javase/7/docs/api/
1
choubaka Messages postés 39424 Date d'inscription jeudi 4 avril 2002 Statut Modérateur Dernière intervention 4 avril 2025 2 104
Modifié par choubaka le 3/06/2013 à 11:20
Bonjour

Image est une classe abstraite... elle ne peut donc pas être instanciée..

Essaye avec ImageIcon

https://docs.oracle.com/javase/7/docs/api/javax/swing/ImageIcon.html

c'est un exemple..

Chouba, Bibapeloula / Mon métier est tellement secret que je ne sais même pas ce que je fais.
0
Merci,

mais je veux instancier Image (com.itextpdf.text.Image) pour introduire une image a un pdf ...
0
Merci,

je vais essayer ça, normalement dans tout les exemples que j'ai vu, on fait comme ça :

Image img= Image.getInstance("image.jpg");
document.add(img);

et ça marche pour eux D:
0
KX Messages postés 16760 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 12 février 2025 3 020
5 juin 2013 à 15:06
C'est possible en effet, j'ai compté 18 méthodes "getInstance" dans la documentation, il doit bien y en avoir une ou deux qui servent à quelque chose...
0