Ouvrir une image

lyko

Membre confirmé
17 Décembre 2002
12
0
bonjour je voudrais savoir comment ouvrir une image dans un NSImageview...??

enfin je pense que fait louvrir dans un imageview...en fait le but de lapplication est de faire de la stéganographie, et donc je dois modifier quelques bits de limage...

merci davance pr le coup de main
a+

Lyko
 
Tout d'abord il te faut un IBOutlet pour l'objet NSImageView dans ton fichier .h :

IBOutlet NSImageView *monImageView;

Puis tu implementes dans la méthode que tu veux :

NSImage *monImage; /* Tu peux aussi déclarer ton objet image dans ton .h si tu l'utilises dans plusieurs méthodes */

image=[[NSImage alloc] initByReferencingFile:@"Chemin de ton fichier image"]; /* Initialisation de ton objet image */

[monImageView setImage:monImage]; /* Transmet l'image à la view */

Normalement ca marche....

N'oublies pas dans ta méthode déalloc de releaser l'image :
-(void)dealloc
{
[monImage release];
}
 
Comme ma question (de méga-débutant) parait trés proche de cet ancien post, je me permet de la pauser à la suite...
Une fois l'image "chargée", comment "l'interroger" pour connaitre les caractéristiques de l'image : a-t-elle une couche alpha? est-elle en 8 ou 16 bits ? etc...
 
Pour cela il faut utiliser une autre classe que NSImage, c'est à dire la classe NSImageRep ou héritante. Ensuite tu peux obtenir les données voulues dont tu parles dans ton post, et bien plus encore, toutes les méthodes nécessaires sont dans cette classe.
 
ok, merci.
En effet j'ai pu obtenir quelques infos sur l'image de cette façon, précisement en "interrogeant" la "NSBitmapImageRep" de mon fichier (je sais sur combien de bits est définie chaque couleur RVB et combien de "sample" contient chaque pixel et donc indirectement s'il a une couche alpha)...mais j'ai crue comprendre que c'était en effet la "class" "NSimageRep" la plus riche en infos sur l'image...le probleme c'est que je ne comprend pas encore ce que "représente" toutes ces "class"...je vais creuser...