~~META:date created=2009-10-10~~ ~~NOTOC~~ {{tag>programmation web}} ======Resizer====== Générateur de miniatures PHP paramétrable ^ Télécharger|{{travaux:resizer:p01resizer.zip}} | | {{travaux:resizer:p01resizer.txt|Voir la source}} || =====Utilisation===== p01resizer.php doit être appelé comme une image, et requiert au minimum deux paramètres: la hauteur h et la largeur w de la miniature. Le chemin vers l'image à redimensionner (relatif) doit être renseigné avec imgSrc. =====Paramètres optionnels===== ^ Paramètre ^ Valeur ^ Valeur par défaut ^ Exemple ^ Précision ^ ^ imgType | auto jpg png | auto | imgType=png | Format de la miniature | ^ resizeType | default keep force crop | default | resizeType=keep | Type de redimensionnement. | ^ bgColor | r,g,b | 255,255,255 | bgColor=125,12,12 | Couleur du fond, en RGB | ^ txt | texte | txt=Hello! | Texte ajouté au-dessus de l'image | ^ txtSize | small default big | default | txtSize=small | Taille du texte | ^ txtColor | r,g,b | 255,255,255 | txtColor=0,0,200 | Couleur du texte, en RGB | ^ txtBgColor | r,g,b | 0,0,0 | txtColor=255,255,255 | Couleur du fond du texte, en RGB | ^ txtBgAlpha | nombre | 80 | txtBgAlpha=0 | Opacité du fond du texte, de 0 (mat) à 125 (invisible). | =====Format de l'image===== {{ travaux:resizer:graph.png}} * Auto: le format est automatiquement choisi afin d'optimiser le poid du fichier. * jpg: sortir une image au format JPG. Le JPG est conseillé pour des images contenant beaucoup de couleurs (photographies...) au dessus de 50x50px. * png: sortir une image au format PNG. Le PNG est conseillé pour des images ayant très peu de couleurs (shémas...) et/ou inférieures à 50x50px. Le graphique de gauche montre le rapport taille/poid d'une miniature de photographie en diverses tailles et formats. A aucun moment le GIF ne s'avère avantageux de ce point de vue, en plus d'être extrêmement destructif. =====Types de redimensionnement===== * Par défaut: Adapte la taille de l'image au ratio de l'image source, en ne respectant pas les paramètres w et h si nécessaire: ils sont interpretés comme des maximums. * keep: Crée une image de la taille demandée contenant la miniature au même ratio que l'image source. Le fond apparaît si l'image demandée et l'image source n'ont pas le même ratio. force: Force la miniature à remplir toute la surface demandée, en la déformant autant que nécessaire. * crop: La miniature remplis toute la surface demandée en conservant le ratio de l'image source, et est coupée si nécessaire. =====Exemples===== [{{ travaux:resizer:srcImg.jpg?650 |Image source}}] Comparaison des types d'images et de redimensionnement avec w=100 et h=100 : ^ ^ default ^ force ^ keep ^ crop ^ ^ jpg |{{http://nliautaud.fr/resizer/p01resizer.php?imgSrc=srcImg.jpg&h=100&w=100&resizeType=default&imgType=jpg&.jpg?}} | {{http://nliautaud.fr/resizer/p01resizer.php?imgSrc=srcImg.jpg&h=100&w=100&resizeType=force&imgType=jpg&.jpg?}} | {{http://nliautaud.fr/resizer/p01resizer.php?imgSrc=srcImg.jpg&h=100&w=100&resizeType=keep&imgType=jpg&.jpg?}} | {{http://nliautaud.fr/resizer/p01resizer.php?imgSrc=srcImg.jpg&h=100&w=100&resizeType=crop&imgType=jpg&.jpg?}} | ^ ::: | 100x50 2.2Ko | 100x100 3.2Ko | 100x100 3.6Ko | 100x100 4.2Ko | ^ png |{{http://nliautaud.fr/resizer/p01resizer.php?imgSrc=srcImg.jpg&h=100&w=100&resizeType=default&imgType=png&.png?}} | {{http://nliautaud.fr/resizer/p01resizer.php?imgSrc=srcImg.jpg&h=100&w=100&resizeType=force&imgType=png&.png?}} | {{http://nliautaud.fr/resizer/p01resizer.php?imgSrc=srcImg.jpg&h=100&w=100&resizeType=keep&imgType=png&.png?}} | {{http://nliautaud.fr/resizer/p01resizer.php?imgSrc=srcImg.jpg&h=100&w=100&resizeType=crop&imgType=png&.png?}} | ^ ::: | 100x50 20Ko | 100x100 27Ko | 100x100 21Ko | 100x100 27Ko |