Date de publication: le mercredi 11 juillet 2007 à 03h41
Dernière modification: par Pascal BOYER le mercredi 23 février 2011 à 23h45
Summary / Résumé
Validates and stores a digital image.
Contrôle la validité du fichier image et le stocke.
Properties / Propriétés
|
Name Nom |
Internal name Nom interne |
Searchable Interrogeable |
Information collector Collecteur d'information |
|---|---|---|---|
| Image | ezimage | No / Non | No / Non |
Description
This datatype allows the storage of digital images. It is capable of handling virtually any image type. The maximum allowed file size is determined by the "Max file size" class attribute edit parameter and the "upload_max_filesize" directive in the main PHP configuration file ("php.ini"). The following screenshot shows the class attribute edit interface for this datatype.
Ce datatype permet de stocker des images numériques et peut gérer virtuellement n'importe quel type d'image. La taille maximum autorisée des fichiers est déterminée par le paramètre d'attribut de classe Taille maximum de fichier et par la directive upload_max_filesize du fichier de configuration principal php.ini de PHP. La capture d'écran suivante illustre l'interface d'édition d'attribut de classe dans le cas du datatype Image:
Class attribute edit interface for the "Image" datatype
Interface d'édition d'attributs de classe dans le cas du datatype Image
Max file size / Taille maximum de fichier
The "Max file size" parameter makes it possible to set the highest size (in megabytes) that the system will allow. By default, this parameters is zero, which means that eZ Publish will not do any size checking when image files are uploaded. In the example above, the "Max file size" parameter is set to 16 MB, which means that the object edit interface will not allow the upload of images that are larger than 16 megabytes. However, if the value of the "upload_max_filesize" PHP setting is lower than 16 megabytes, the underlying system will cancel the upload.
Le paramètre Taille maximum de fichier permet de paramétrer la taille maximum (en mégaoctet) que le système autorisera. Par défaut, ce paramètre vaut zéro ce qui signifie que eZ Publish n'effectue aucun contrôle de taille de fichier lors du téléchargement d'une image sur le serveur. Dans l'exemple ci-dessus, le paramètre Taille maximum de fichier vaut 16 MB, ce qui veut dire que l'interface d'édition d'objet n'autorise pas le téléchargement d'images dont la taille dépasse 16 mégaoctets. Cependant, si la valeur du paramètre upload_max_filesize du fichier de configuration php.ini de PHP est inférieur à 16 mégaoctets alors le système principal (fondamental) stoppera le téléchargement.
Object attribute edit interface / Interface d'édition d'attribut d'objet
The following screenshot shows the object attribute edit interface when an attribute using this datatype does not contain an image.
La capture d'écran ci-dessous montre l'interface d'édition d'attribut d'objet lorsqu'un attribut basé sur ce datatype ne contient aucune image:
Object attribute edit interface for the "Image" datatype
Interface d'édition d'attributs d'objet dans le cas du datatype Image
The following screenshot shows the object attribute edit interface when an attribute using this datatype contains an actual image. The interface reveals the image itself, the name of the file that was uploaded ("dj_cat.jpg"), the MIME type ("image/jpeg") and the size (29.02 kB).
La capture d'écran ci-dessous montre l'interface d'édition d'attribut d'objet lorsqu'un attribut basé sur ce datatype contient une image. L'interface affiche l'image elle-même, le nom du fichier qui a été téléchargé (dj_cat.jpg), le type MIME (image/peg) ainsi que la taille (29.02kB).
Object attribute edit interface for the "Image" datatype
Interface d'édition d'attributs d'objet dans le cas du datatype Image
Storage / Stockage
The uploaded images are stored on the filesystem. The main reason for this is because the filesystem is much faster than the database when it comes to the storage and retrieval of large data chunks. Having the images on the filesystem allows the webserver to serve them directly without the need of going through the database. In addition, this technique makes it easier to use external tools to manipulate the images and it dramatically decreases the size of the database.
Les images téléchargées sont stockées sur le système de fichiers parce que ce dernier est plus rapide qu'une base de données pour stocker et retrouver des données de taille conséquente. Le fait de placer les images sur le système de fichiers permet au serveur web de les servir directement sans avoir besoin de les extraire de la base de données. De plus, cette technique simplifie l'emploi d'outils externes de manipulation d'images et évite que la taille de la base de données augmente dramatiquement.
All images uploaded through an attribute that makes use of the image datatype will be stored below "storage/images" within the directory specified by the "VarDir" directive in a configuration override for "site.ini". A directory structure is generated for each object that stores an image. The structure will be an exact copy of the actual node path (consisting of the object names) from the root to the main node that references the object which contains images. The following illustration shows the path to a directory on the filesystem in which the different images of an object are stored.
Toutes les images téléchargées à partir d'un attribut basé sur le datatype Image sont stockées sous storage/images/ du répertoire défini par le paramètre VarDir d'un fichier de surcharge de site.ini. Une structure arborescente est générée pour chaque objet stocké en tant qu'image. Cette structure est une copie exacte du chemin du noeud (constitué des noms des objets) depuis la racine jusqu'au nœud principal référençant l'objet contenant les images. L'illustration suivante montre le chemin vers un répertoire du système de fichier dans lequel différentes images d'un objet sont stockées.
Example of image path on the filesystem
Exemple de chemin d'une image dans le système de fichiers
In the example above, an image has been stored by an object called "My Something". The main node of this object is a child of a node called "Example". The var directory used by the siteaccess is "var/my_site". The images stored by the "My Something" object will be located in this directory. For each image, version and translation, a new directory will be created. The following illustration shows the naming convention of the directories under which the actual images are stored.
Dans l'exemple ci-dessus, une image est stockée par un objet nommé My Something. Le noeud principal de cet objet est un fils d'un noeud nommé Example. Le répertoire var utilisé par le siteaccess est var/my_site. Les images stockées par l'objet My Something sont situées dans ce répertoire. Pour chaque image, chaque version et chaque traduction un nouveau répertoire est créé. L'image ci-dessous illustre la convention de nommage des répertoires sous lesquels les images sont stockées.
Example of an image subdirectory
Exemple d'un sous-répertoire d'une image
The example above shows a directory for an image that has been stored by the 1024th object attribute. The image belongs to the British translation for the eight version of the content object. The following illustration shows a complete directory structure with actual image files.
L'exemple ci-dessus montre un répertoire pour une image stockée par le 1024ème attribut d'objet. L'image appartient à la traduction anglaise de la huitième version de l'objet. L'illustration suivante montre une structure arborescente complète et les fichiers image:
Complete directory structure with uploaded image and generated variations
Structure de répertoires complète avec image téléchargée et variantes générées.
As the illustration indicates, the image stored by the 1024th attribute (that belongs to the "My Something" object) is represented by multiple files. The original image is "test.png", the rest of the images are the different image variations.
Comme l'indique cette illustration, l'image stockée par le 1024ème attribut (appartenant à l'objet My Something) est représentée par plusieurs fichiers. L'image original est test.png, les autres images étant les différentes variantes de l'image:
Image variations / Variantes de l'image
With the help of an external application (ImageMagick) or the PHP image library (GD), eZ Publish is capable of generating different variations of an uploaded image. This feature is typically useful when there is a need to show the same image in different ways (for example different sizes). The image variations are controlled by different configuration directives in image.ini. The following table shows the default image variations.
Avec l'aide d'une application externe (ImageMagick) ou de la librairie d'image PHP (GD), eZ Publish peut générer différentes variantes de l'image téléchargée. Cette fonctionnalité est utile lorsque l'on souhaite afficher la même image de différentes manières (par exemple dans différentes tailles). Les variantes de l'images sont contrôlées par différentes directives de configuration du fichier image.ini (ou de l'une de ses surcharges). Le tableau suivant montre les variantes par défaut d'une image:
|
Variation Variantes |
Width Largeur |
Height Hauteur |
|---|---|---|
| reference | max 600 pixels | max 600 pixels |
| small | max 100 pixels | max 100 pixels |
| medium | max 200 pixels | max 200 pixels |
| large | max 300 pixels | max 300 pixels |
| rss | max 88 pixels | max 31 pixels |
When an image variation is created (and the default settings are used), eZ Publish will generate a reference image using the file that was uploaded. The reference image is then used to generate the different image variations (small, medium, large and rss) on-demand using the constraints specified in the table above. The generated variations will be cached on the filesystem.
Lorsqu'une variante d'image est créée (et que les paramètres par défaut sont utilisés), eZ Publish génère une image de référence à partir du fichier image téléchargé. Cette image de référence est ensuite utilisée pour générer, à la demande et en utilisant une des contraintes spécifiées dans le tableau ci-dessus, les autres variantes de l'image (small, medium, large et rss). Toutes les variantes sont mises en cache sur le système de fichiers.
Depending on the image system used, eZ Publish is capable of generating image variations that consist of much more than just scaling. For example, it is possible to generate sharpened grayscale images for the thumbnails of a photo album. Please refer to the documentation of the image.ini configuration file for more information about the different possibilities.
En fonction du système image utilisé, eZ Publish peut générer des variantes d'images qui ne consistent pas simplement en images de taille différente. Par exemple, il est possible de générer des vignettes N&B pour un album photos. Référez-vous à la documentation du fichier de configuration image.ini pour plus d'informations sur les différentes possibilités.
Raw output / Sortie brute
The ".content" of an ezcontentobjectattribute object using this datatype returns an ezimagealiashandler object.
La partie .content d'un objet
ezcontentobjectattribute
utilisant un attribut basé sur ce datatype renvoie un objet
ezimagealiashandler
.














