• Aucun résultat trouvé

Commandes sp´ ecifiques des photos

Lorsqu’une photo est cr´e´ee, Tk cr´ee une nouvelle commande ayant le nom no- mImage qui aura ´et´e donn´e `a la nouvelle image. Cette commande peut ˆetre utilis´ee pour invoquer diverses op´erations concernant l’image. La forme g´en´erale est :

nomImage op´eration?arg arg ...?

Les options qui ´ecrivent des donn´ees dans l’image modifient, si n´ecessaire, les dimensions de l’image pour correspondre aux donn´ees ´ecrites `a moins qu’une valeur non nulle ait ´et´e explicitement sp´ecifi´ee pour les options -width et/ou -height.

Les op´erations reconnues par les composantes de type photo sont les suivantes : nomImage blank

Efface l’image, c’est-`a-dire supprime toutes les donn´ees de l’image enti`ere, la rendant transparente. Tout ce qui pourrait se trouver en arri`ere-plan de cette image deviendra visible.

nomImage cget option

Renvoie la valeur courante de l’option de configuration sp´ecifi´ee par l’argu- ment option. L’argument option peut ˆetre une quelconque des valeurs ac- cept´ees par la commande image create photo.

nomImage configure?option??valeur option valeur ...?

l’argument option n’est pas sp´ecifi´e, la commande renvoie la liste de toutes les options disponibles pour nomImage.

Si l’argument option est sp´ecifi´e sans une valeur correspondante, la commande renvoie une liste d´ecrivant l’option nomm´ee. Si un ou plusieurs couples option- valeur sont sp´ecifi´es, les options en question se voient attribuer la valeur correspondante : la commande renvoie alors une chaˆıne vide. L’argument op- tion peut ˆetre une quelconque des valeurs accept´ees par la commande image create photo.

nomImage copy sourceImage?option valeurs ...?

Copie une r´egion de l’image sourceImage (qui doit ˆetre de type photo) dans l’image nomImage en ex´ecutant ´eventuellement une op´eration de zoom et/ou de sous-´echantillonnage. Si aucune option n’est sp´ecifi´ee, cette commande co- pie l’image sourceImage enti`ere dans l’image nomImage, en partant de l’ori- gine (0,0) de nomImage. Les options suivantes peuvent ˆetre sp´ecifi´ees:

-from x1 y1 x2 y2

Sp´ecifie une sous-r´egion rectangulaire de l’image source `a copier. Les valeurs (x1,y1) et (x2,y2) sp´ecifient des coins diagonalement oppos´es du rectangle. Si x2 et y2 ne sont pas sp´ecifi´es, la valeur par d´efaut sera le coin inf´erieur droit de l’image source. Les pixels copi´es incluent les bords gauche et sup´erieur du rectangle sp´ecifi´e mais pas les bords droit et inf´erieur. Si l’option -from est omise, la r´egion sera l’image source enti`ere.

-to x1 y1 x2 y2

Sp´ecifie une sous-r´egion rectangulaire de l’image de destination affect´ee par la copie. Les valeurs (x1,y1) et (x2,y2) sp´ecifient les coins diago- nalement oppos´es du rectangle. Si x2 et y2 ne sont pas sp´ecifi´es, leurs valeurs par d´efaut seront (x1,y1) augment´ees de la taille de la r´egion source (calcul´ee apr`es sous-´echantillonnage et zoom ´eventuels). Si x2 et y2 sont sp´ecifi´es, la r´egion source sera dupliqu´ee si n´ecessaire pour remplir la r´egion de destination `a la mani`ere d’un pavage.

-shrink

Sp´ecifie que la taille de l’image de destination doit ˆetre r´eduite, si n´ecessai- re, afin que la r´egion copi´ee co¨ıncide avec le coin inf´erieur droit de no- mImage. Cette option n’affectera pas la largeur ou la hauteur de l’image si l’utilisateur a sp´ecifi´e une valeur non nulle pour les options -width ou -height respectivement.

-zoom x y

Sp´ecifie que la r´egion source doit ˆetre magnifi´ee d’un facteur x dans la direction des abscisses et y dans la direction des ordonn´ees. Si y est omis, la valeur par d´efaut est celle de x. Avec cette option, chaque pixel de l’image source sera dilat´e en un bloc de x× y pixels (tous de la mˆeme couleur) dans l’image de destination. x et y doivent ˆetre sup´erieurs `a 0. -subsample x y

ment tous les x-i`emes pixels dans la direction des abscisses et les y-i`emes pixels dans la direction des ordonn´ees. Des valeurs n´egatives auront pour effet d’inverser l’image par rapport aux axes des ordonn´ees ou des abs- cisses respectivement. Si y est omis, la valeur par d´efaut est celle de l’argument x.

nomImage data?option valeurs ...?

Renvoie les donn´ees de l’image sous la forme d’une chaˆıne. Les options sui- vantes peuvent ˆetre sp´ecifi´ees:

-background couleur

Si la couleur est sp´ecifi´ee, les donn´ees ne contiendront aucune informa- tion de transparence : dans tous les pixels transparents, la couleur sera remplac´ee par la couleur sp´ecifi´ee.

-format nomFormat

Sp´ecifie le nom du gestionnaire (handler ) de format de fichier d’image `a utiliser. Tr`es exactement, la sous-commande data recherche le premier gestionnaire dont le nom correspond au d´ebut de la chaˆıne nomFor- mat et qui est capable de lire ces donn´ees d’image. Si cet argument est omis, la sous-commande utilise le premier gestionnaire capable de lire ces donn´ees d’image.

-from x1 y1 x2 y2

Sp´ecifie une r´egion rectangulaire de nomImage `a renvoyer. Si seuls x1 et y1 sont sp´ecifi´es, la r´egion s’´etend depuis (x1,y1) jusqu’au coin inf´erieur droit de nomImage. Si les quatre coordonn´ees sont sp´ecifi´ees, elles d´esi- gnent des coins diagonalement oppos´es de la r´egion rectangulaire. Par d´efaut, si cette option est omise, c’est l’image enti`ere qui est utilis´ee. -grayscale

Si cette option est sp´ecifi´ee, les donn´ees ne contiendront pas d’informa- tion de couleur. Tous les pixels seront transform´es en niveaux de gris. nomImage get x y

Renvoie la couleur du pixel de coordonn´ees (x,y) dans l’image sous la forme d’une liste de trois entiers compris entre 0 et 255 et repr´esentant les compo- santes rouge, verte et bleue respectivement.

nomImage put data?option valeurs ...?

Fixe les pixels de imageName `a la valeur sp´ecifi´ee dans l’argument data. Cette commande recherche dans la liste des gestionnaires de format de fichier d’image un gestionnaire capable d’interpr´eter les donn´ees de data, puis lit l’image obtenue pour la placer dans nomImage (l’image destination). Les options suivantes peuvent ˆetre sp´ecifi´ees:

-format nomFormat

Sp´ecifie le format des donn´ees de l’image contenues dans l’argument data. En particulier, seuls les gestionnaires de format de fichier d’image

dont le nom commence par nomFormat seront utilis´es lors de la recherche d’un gestionnaire capable de lire ces donn´ees.

-from x1 y1 x2 y2

Sp´ecifie une sous-r´egion rectangulaire des donn´ees data `a r´ecup´erer. Si seuls x1 et y1 sont sp´ecifi´es, la r´egion s’´etend depuis (x1,y1) jusqu’au coin inf´erieur droit de l’image dans le fichier d’image. Si les quatre coor- donn´ees sont sp´ecifi´ees, elles d´esignent des coins diagonalement oppos´es de la r´egion rectangulaire. Par d´efaut, si cette option est omise, c’est l’image enti`ere repr´esent´ee par data qui est utilis´ee.

-shrink

Avec cette option, la taille de nomImage sera r´eduite, si n´ecessaire, afin que la r´egion dans laquelle les donn´ees provenant de data seront ins´er´ees, co¨ıncide avec le coin inf´erieur droit de nomImage. Cette option n’affec- tera pas la largeur ou la hauteur de l’image si l’utilisateur a sp´ecifi´e une valeur non nulle pour les options -width ou -height respectivement. -to x y

Sp´ecifie les coordonn´ees du coin sup´erieur gauche de la r´egion de no- mImage dans laquelle les donn´ees de data seront plac´ees. La valeur par d´efaut est (0,0).

nomImage read nomFichier?option valeurs ...?

Cette commande lit les donn´ees d’image contenues dans le fichier nomFichier pour les ins´erer dans l’image nomImage. Cette commande recherche dans la liste des gestionnaires de format de fichier d’image un gestionnaire capable d’interpr´eter les donn´ees contenues dans nomFichier, puis lit l’image trouv´ee pour la placer dans nomImage (qui est donc l’image de destination). Les options suivantes peuvent ˆetre sp´ecifi´ees:

-format nomFormat

Sp´ecifie le format des donn´ees de l’image contenues dans l’argument nomFichier. En particulier, seuls les gestionnaires de format de fichier d’image dont le nom commence par nomFormat seront utilis´es lors de la recherche d’un gestionnaire capable de lire ces donn´ees.

-from x1 y1 x2 y2

Sp´ecifie une sous-r´egion rectangulaire des donn´ees du fichier nomFi- chier `a r´ecup´erer pour les copier dans nomImage. Si seuls x1 et y1 sont sp´ecifi´es, la r´egion s’´etend depuis (x1,y1) jusqu’au coin inf´erieur droit de l’image dans le fichier d’image. Si les quatre coordonn´ees sont sp´ecifi´ees, elles d´esignent des coins diagonalement oppos´es de la r´egion rectangu- laire. Par d´efaut, si cette option est omise, c’est l’image enti`ere du fichier d’image qui est utilis´ee.

-shrink

Avec cette option, la taille de nomImage sera r´eduite, si n´ecessaire, afin que la r´egion dans laquelle les donn´ees provenant de nomFichier seront ins´er´ees, co¨ıncide avec le coin inf´erieur droit de nomImage. Cette option

n’affectera pas la largeur ou la hauteur de l’image si l’utilisateur a sp´ecifi´e une valeur non nulle pour les options -width ou -height respectivement. -to x y

Sp´ecifie les coordonn´ees du coin sup´erieur gauche de la r´egion de nomI- mage dans laquelle les donn´ees de nomFichier seront plac´ees. La valeur par d´efaut est (0,0).

nomImage redither

L’algorithme de conversion par matrice de pixellisation (dithering) utilis´e pour l’affichage des photos propage les modifications de quantification d’un pixel `a ses voisins. Il en r´esulte que si les donn´ees d’image pour nomImage sont fournies par morceaux, l’image pixellis´ee peut ne pas ˆetre tout `a fait correcte. Normalement, la diff´erence n’est pas perceptible mais, en cas de probl`eme, cette commande peut ˆetre utilis´ee pour recalculer l’image pixellis´ee dans chacune des fenˆetres o`u elle est affich´ee.

nomImage write nomFichier?option valeurs ...?

Cette commande ´ecrit des donn´ees d’image provenant de nomImage dans un fichier d´esign´e par l’argument nomFichier. Les options suivantes peuvent ˆetre sp´ecifi´ees:

-format nomFormat -from x1 y1 x2 y2 -shrink

-to x y

Elles ont exactement la mˆeme signification qu’avec la commande data vue ci-dessus.