Récupérer width & height d'une image [Solution inside] [JAVA] - Java - Programmation
Marsh Posté le 02-08-2002 à 10:38:01
Aussi loin que je me souvienne, tu peux créer une instance d'Image (ou un objet du genre) qui te permet de connaitre sa taille. Mais attention, il faut utiliser la synchronisation via une ImageObbserver un ou autre truc du genre.
Bon c'est brouillon je vais regarder dans mes brols
2sec
Marsh Posté le 02-08-2002 à 10:39:33
ou bien ImageIcon ?
Marsh Posté le 02-08-2002 à 10:40:41
DarkLord a écrit a écrit : Aussi loin que je me souvienne, tu peux créer une instance d'Image (ou un objet du genre) qui te permet de connaitre sa taille. Mais attention, il faut utiliser la synchronisation via une ImageObbserver un ou autre truc du genre. Bon c'est brouillon je vais regarder dans mes brols 2sec |
Toujours aussi rapide dis moi !!!!!
Si tu me trouve un moyen quelconque de récupérer un ImageObserver, C gagné !!!
Marsh Posté le 02-08-2002 à 10:48:28
DarkLord a écrit a écrit : ou bien ImageIcon ? |
Euh non je pense pas..
J'ai AUCUN composant graphique dans mon appli..
Que JSP et Servlet donc je bloque un peu pas mal..
Je suis sur que ca doit être jouable en JavaScript mais j'ai absolument de faire ca en Java pour stocker les params dans ma BD..
Marsh Posté le 02-08-2002 à 10:55:09
Bin t'as pas besoin d'un composant graphique pour faire une image
de quoi tu parles toi
et pour l'imageobserver c'est une interface à la con t'as qu'a l'implémenter et c'est tout
Marsh Posté le 02-08-2002 à 10:59:17
Citation : |
Ca je sais bien.. Mais d'apres ce que j'ai compris, l'ImageObserver "se récupère" à partir d'un contexte graphique (Graphics..)
Citation : |
C bien beau d'implementer une classe mais je mets koi a l'intérieur moi ??
J'suis en train de lire ca sur le net
http://etna.int-evry.fr/~bernard/s [...] ode63.html
Mais ca m'a l'air d'une véritable usine a gaz !!!!
Marsh Posté le 02-08-2002 à 11:00:56
mais tu te compliques la vie inutiliement. Attends deux secondes --greg-- arrive.
Il va t'expliquer comment faire, il l'a déjà fait.
Sinon imageobserver est une interface et à ce titre tu peux l'implémenter si ca te change. Tu as regarder à quoi elle sert au moins?
Sinon une ImageIcon se construit à partir d'une URL et tu as des méthodes pour récupérer la taille
DONC ARRETE DE TE COMPLIQUER LA VIE
Marsh Posté le 02-08-2002 à 11:07:37
DarkLord a écrit a écrit : mais tu te compliques la vie inutiliement. Attends deux secondes --greg-- arrive. Il va t'expliquer comment faire, il l'a déjà fait. Sinon imageobserver est une interface et à ce titre tu peux l'implémenter si ca te change. Tu as regarder à quoi elle sert au moins? Sinon une ImageIcon se construit à partir d'une URL et tu as des méthodes pour récupérer la taille DONC ARRETE DE TE COMPLIQUER LA VIE |
Marsh Posté le 02-08-2002 à 11:15:36
ouais bin c pas compliqué ce qu'il veut faire et tu l'as déjà fait pour le censured non ?
Marsh Posté le 02-08-2002 à 11:30:00
DarkLord a écrit a écrit : ouais bin c pas compliqué ce qu'il veut faire et tu l'as déjà fait pour le censured non ? |
non, ma servlet elle crée un gif, c tout
par contre, "mesurer" une image (jpg ou autre), on va le faire ce we, coco
Marsh Posté le 02-08-2002 à 11:42:43
Dis, je dis peut-être une connerie, mais ton Image, tu peux pas la construire directement à partir de l'InputStream que tu utilise pour l'upload ?
C'est que ca m'interresse, je vais être confronté au même genre de problème d'ici peut de temps.
Marsh Posté le 02-08-2002 à 11:46:14
--greg-- a écrit a écrit : non, ma servlet elle crée un gif, c tout par contre, "mesurer" une image (jpg ou autre), on va le faire ce we, coco |
bin wé je sais. Justement je comprends pas où est le problème
Marsh Posté le 02-08-2002 à 11:47:17
DarkLord a écrit a écrit : bin wé je sais. Justement je comprends pas où est le problème |
ben là il veut "mesurer" une image existante, à partir d'un inputstream ou autre quoi. pas une Image crée par ses soins.
Marsh Posté le 02-08-2002 à 12:01:58
R3g a écrit a écrit : Dis, je dis peut-être une connerie, mais ton Image, tu peux pas la construire directement à partir de l'InputStream que tu utilise pour l'upload ? C'est que ca m'interresse, je vais être confronté au même genre de problème d'ici peut de temps. |
Ca C deja fait..
Mais bon, je bloque toujours sur la récupération de la taille de cette image (après les tests sur le mime-type pour vérifier qu'il s'agit bien d'une image..)
Citation : |
Mais bon j'ai focalisé sur la classe Image car ca me semblait la plus pertinente non ????
Marsh Posté le 02-08-2002 à 12:06:47
Dephi a écrit a écrit : Mais bon j'ai focalisé sur la classe Image car ca me semblait la plus pertinente non ???? |
pas vraiment
public abstract class Image
Marsh Posté le 02-08-2002 à 12:11:48
J'suis en train de regarder du cote de JAI, ca m'a l'air intéressant, je vous tiens au courant !!
(après avoir fait miam-miam..)
Marsh Posté le 02-08-2002 à 12:28:31
Dephi a écrit a écrit : J'suis en train de regarder du cote de JAI, ca m'a l'air intéressant, je vous tiens au courant !! (après avoir fait miam-miam..) |
sinon, si tu peux utiliser le jdk1.4, regarde là dans imageio . (y'a eu un topic de el_gringo(je crois) à ce sujet, et devinez qui lui a repondu )
Marsh Posté le 02-08-2002 à 13:02:13
--greg-- a écrit a écrit : sinon, si tu peux utiliser le jdk1.4, regarde là dans imageio . (y'a eu un topic de el_gringo(je crois) à ce sujet, et devinez qui lui a repondu ) |
Pas droit au 1.4...
Marsh Posté le 02-08-2002 à 13:46:39
Yop, je réponds a moi-même..
C possible en utilisant la librairie JAI...
http://java.sun.com/products/java-media/jai/
Je l'ai un peu parcouru, C une véritable boite à outils pour (faire un peu tout mais dans mon cas) la gestion des images !!
(mais bon, j'ai pas tout pigé.. )
On peut donc simplement récupérer les params d'une image avec :
RenderedOp rImg = (RenderedOp) JAI.create("fileload", fileName);
rImg.getHeight());
rImg.getWidth());
Ca marche donc, je vais pouvoir faire ce que je veux par contre..
C une vraie usine a gaz !!!
C limite si tu entends pas le CPU raler lorsque tu fais ca...
Donc si quelqu'un a une autre solution en 1.3, je suis preneur !!!
Marsh Posté le 02-08-2002 à 14:04:34
http://www.geocities.com/marcoschm [...] -info.html
...tintin !
Merci qui ?
Marsh Posté le 02-08-2002 à 14:12:34
...Et jai c pas une unsine à gaz !
Par contre, c sur que c lourd pour le peu de choses que tu veux faire de ton image. (par contre, pr bosser sur les images, JAI c génial !)
Marsh Posté le 02-08-2002 à 14:17:03
vérifie : y a une version optimisée pour windows avec des dll et tou !
Marsh Posté le 02-08-2002 à 14:28:06
Citation : |
Pour ce que je veux en faire oui !!!!
En tout cas merci bcp, je vais plutot utiliser ImageInfo, ca fait exactement ce que je demande, C el bonheur complet !!
(et puis 23 Ko Vs plus de 5Mo, y'a pas photo...)
Encore une fois merci el_gringo (et aux autres aussi..)
Marsh Posté le 02-08-2002 à 14:55:36
bien vu gringo
Marsh Posté le 05-08-2002 à 10:45:30
moi pour recuperer les mesures de mon images j ai fait comme toi au debut
Image img = ToolKit.getDefaultToolkit().getImage("adressedemonimage" );
apres je fais pour la largeur int largeur = (int ) img.getWidth(null);
pareil pour la hauteur......
avant de demander la largeur et la hauteur j ai creer un media tracker pour etre sur que l image soit charge (pour obtenir ses proprietes).
Ca marche plutot bien...
bruno ;-}
Marsh Posté le 05-08-2002 à 10:46:53
ah voiloa MediaTracker c'est le nom que je cherchais
Marsh Posté le 05-08-2002 à 11:52:27
bruno5678 a écrit a écrit : moi pour recuperer les mesures de mon images j ai fait comme toi au debut Image img = ToolKit.getDefaultToolkit().getImage("adressedemonimage" ); apres je fais pour la largeur int largeur = (int ) img.getWidth(null); pareil pour la hauteur...... avant de demander la largeur et la hauteur j ai creer un media tracker pour etre sur que l image soit charge (pour obtenir ses proprietes). Ca marche plutot bien... bruno ;-} |
Ouais, par contre, si on cherche juste à récupérer les propriétés de l'image, c dommage de la charger (c plus long, ça occupe de la ram). D'ou l'intéret de l'adresse que g filé : ça charge pas l'image en mémoire.
Marsh Posté le 02-08-2002 à 10:35:47
[:hello:
J'ai une partie de mon appli écrite en JSP/Servlet qui permet à l'utilisateur d'uploader (entre autre) des images depuis son DD vers la BD du serveur..
L'Upload fonctionne, y'a pas de souci, mais je suis confronté à un autre pbr...
J'ai besoin de connaître les paramêtres de cette image comme par exemple sa largeur et hauteur..
J'ai pas mal cherché, le seul moyen que j'ai trouvé pour créer une image est :
Image img = Toolkit.getDefaultToolkit().getImage("NomDuFichierImage" );
A partir de img, j'ai accès à getWidth(ImageObserver) mais je bloque sur ImageObserver..
Comment récupérer un contexte graphique a partir d'une servlet ??
En Applet ou composant graphique , d'acord, C pas dur, mais en Servlet.. (je vois même pas ce qu'un composant graphique viendrait y faire mais bon..)
Comment k'on fait alors ??
J'dois me vautrer lamentablement, doit y avoir un autre moyen mais bon je trouve pas..
Merciiiiii !!!!!
Message édité par Dephi le 02-08-2002 à 14:59:23
---------------