Application
Table of Contents
Classes
Constants
- _CONVERT_COMMAND = 'convert'
- _IMG_CONVERT_QUALITE = _IMG_QUALITE
- _IMG_IMAGICK_QUALITE = 75
- _RESIZE_COMMAND = _CONVERT_COMMAND . ' -quality ' . _IMG_CONVERT_QUALITE . ' -orient Undefined %src -resize %xx%y! %dest'
- _ROTATE_COMMAND = _CONVERT_COMMAND . ' -background none %src -rotate %t %dest'
Functions
- couleur_extraire() : mixed
- Toutes les fonctions couleur_xx de ce fichier : - prennent une couleur hexa sur 6 caracteres en entree (les couleurs web nommees sont admises aussi) - fournissent une couleur hexa en sortie - sont chainables les unes derrieres les autres dans toutes les combinaisons possibles
- couleur_web() : mixed
- couleur_4096() : mixed
- couleur_luminance_relative() : mixed
- couleur_extreme() : mixed
- couleur_inverser() : mixed
- couleur_foncer_si_claire() : mixed
- couleur_eclaircir_si_foncee() : mixed
- couleur_saturation() : string
- Modifie la saturation et parfois la luminosité de la couleur transmise
- couleur_luminance() : string
- Modifie la luminance de la couleur transmise
- filtres_image_process_convert_dist() : array<string|int, string>
- La fonction de base qui déclare le process et detecte si il est utilisable - si non renvoie null - si oui renvoie les formats qu'il sait traiter en entrée et en sortie
- proces_convert_disponible() : mixed
- filtres_image_process_convert_vignette_dist() : string|null
- La fonction qui cree la vignette avec le process extérieur
- image_rotation__process_convert() : string
- Version "convert" du filtre image_rotation si la librairie convert a été selectionnée dans l'admin
- filtres_image_process_imagick_dist() : array<string|int, string>
- La fonction de base qui déclare le process et detecte si il est utilisable - si non renvoie null - si oui renvoie les formats qu'il sait traiter en entrée et en sortie
- filtres_image_process_imagick_vignette_dist() : string|null
- La fonction qui cree la vignette avec le process extérieur
- multiple_de_trois() : mixed
- _couleur_rgb2hsv() : array<string|int, mixed>
- Transformation d'une couleur vectorielle RGB en HSV RGB entiers entre 0 et 255 HSV float entre 0 et 1
- _couleur_hsv2rgb() : array<string|int, mixed>
- Transformation d'une couleur vectorielle HSV en RGB HSV float entre 0 et 1 RGB entiers entre 0 et 255
- _couleur_rgb2hsl() : array<string|int, mixed>
- Transformation d'une couleur RGB en HSL
- _couleur_hsl2rgb() : array<string|int, mixed>
- Transformation d'une couleur HSL en RGB
- _image_couleur_extraire() : mixed
- _image_distance_pixel() : mixed
- _image_decale_composante() : int
- Decale une composante de couleur entier de 0 a 255
- image_oriente_selon_exif() : string
- Un filtre pour re-orienter automatiquement une image selon son exif - si besoin si pas d'exif ou pas d'orientation, le filtre ne fait rien et renvoie l'image d'origine
- image_aplatir() : mixed
- image_format() : mixed
- image_alpha() : mixed
- image_recadre() : string
- Recadre (rogne) une image en indiquant la taille de la découpe souhaitée
- image_recadre_mini() : string
- Recadrer une image dans le rectangle le plus petit possible sans perte de pixels non transparent Le recadrage se fait en conservant le centre de l'image : on recadre symétriquement gauche vs droite et haut vs bas TODO : proposer une option pour vraiment recadrer au plus juste, meme si ca decentre l'image
- image_flip_vertical() : string
- Flip une image selon un axe de symétrie central et vertical (c'est donc un flip horizontal au sens de GD)
- image_flip_horizontal() : string
- Flip une image selon un axe de symétrie central et horizontal (c'est donc un flip vertical au sens de GD)
- image_masque() : mixed
- image_nb() : string
- Passage de l'image en noir et blanc un noir & blanc "photo" n'est pas "neutre": les composantes de couleur sont ponderees pour obtenir le niveau de gris on peut ici regler cette ponderation en "pour mille"
- image_flou() : string
- Calcul d'un flou sur une image.
- dimensions_rotation_image() : array<string|int, mixed>
- Determiner les nouvelles dimensions de l'image apres rotation
- image_rotation() : string
- permet de faire tourner une image d'un angle quelconque le flag "crop" permet de recadrer l'image pour conserver sa taille d'origine
- image_imagick() : string
- Permet d'appliquer un filtre basé sur une méthode Imagick:: a une image par exemple: [(#LOGO_ARTICLE|image_imagick{waveImage,20,60})] Les arguments suivant le nom de la méthode sont ceux de la méthode
- _image_imagick_write() : bool
- Ecriture sur le disque d'une umage générée par Imagick
- image_gamma() : mixed
- image_sepia() : mixed|string
- Passe l'image en "sepia" On peut fixer les valeurs RGB de la couleur "complementaire" pour forcer une dominante
- image_renforcement() : string
- Renforcer la netteté d'une image
- image_fond_transparent() : mixed|null|string
- Transforme la couleur de fond de l'image en transparence Le filtre ne gere pas la notion de contiguite aux bords, et affectera tous les pixels de l'image dans la couleur visee $background_color : couleur cible $tolerance : distance L1 dans l'espace RGB des couleur autour de la couleur $background_color pour lequel la transparence sera appliquee $alpha : transparence a appliquer pour les pixels de la couleur cibles avec la tolerance ci-dessus $coeff_lissage : coeff applique a la tolerance pour determiner la decroissance de la transparence fonction de la distance L1 entre la couleur du pixel et la couleur cible
Constants
_CONVERT_COMMAND
public
mixed
_CONVERT_COMMAND
= 'convert'
_IMG_CONVERT_QUALITE
public
mixed
_IMG_CONVERT_QUALITE
= _IMG_QUALITE
_IMG_IMAGICK_QUALITE
public
mixed
_IMG_IMAGICK_QUALITE
= 75
_RESIZE_COMMAND
public
mixed
_RESIZE_COMMAND
= _CONVERT_COMMAND . ' -quality ' . _IMG_CONVERT_QUALITE . ' -orient Undefined %src -resize %xx%y! %dest'
_ROTATE_COMMAND
public
mixed
_ROTATE_COMMAND
= _CONVERT_COMMAND . ' -background none %src -rotate %t %dest'
Functions
couleur_extraire()
Toutes les fonctions couleur_xx de ce fichier : - prennent une couleur hexa sur 6 caracteres en entree (les couleurs web nommees sont admises aussi) - fournissent une couleur hexa en sortie - sont chainables les unes derrieres les autres dans toutes les combinaisons possibles
couleur_extraire(mixed $img[, mixed $x = 10 ][, mixed $y = 6 ]) : mixed
Parameters
- $img : mixed
- $x : mixed = 10
- $y : mixed = 6
couleur_web()
couleur_web(mixed $couleur) : mixed
Parameters
- $couleur : mixed
couleur_4096()
couleur_4096(mixed $couleur) : mixed
Parameters
- $couleur : mixed
couleur_luminance_relative()
couleur_luminance_relative(mixed $couleur) : mixed
Parameters
- $couleur : mixed
couleur_extreme()
couleur_extreme(mixed $couleur[, mixed $limite = 0.5 ]) : mixed
Parameters
- $couleur : mixed
- $limite : mixed = 0.5
couleur_inverser()
couleur_inverser(mixed $couleur) : mixed
Parameters
- $couleur : mixed
couleur_foncer_si_claire()
couleur_foncer_si_claire(mixed $couleur[, mixed $seuil = 122 ]) : mixed
Parameters
- $couleur : mixed
- $seuil : mixed = 122
couleur_eclaircir_si_foncee()
couleur_eclaircir_si_foncee(mixed $couleur[, mixed $seuil = 123 ]) : mixed
Parameters
- $couleur : mixed
- $seuil : mixed = 123
couleur_saturation()
Modifie la saturation et parfois la luminosité de la couleur transmise
couleur_saturation(string $couleur, float $val[, bool|string $strict = false ]) : string
Opère sur une échelle absolue.
Parameters
- $couleur : string
-
Couleur en écriture hexadécimale, tel que
ff3300
- $val : float
-
Pourcentage désiré (entre 0 et 1)
- $strict : bool|string = false
-
Si true, ne change que la saturation, sans toucher à la luminosité
Tags
Return values
string —Couleur en écriture hexadécimale.
couleur_luminance()
Modifie la luminance de la couleur transmise
couleur_luminance(string $couleur, float $val) : string
Change la luminance en forçant le résultat sur une échelle absolue.
Parameters
- $couleur : string
-
Couleur en écriture hexadécimale, tel que
ff3300
- $val : float
-
Pourcentage désiré (entre 0 et 1)
Tags
Return values
string —Couleur en écriture hexadécimale.
filtres_image_process_convert_dist()
La fonction de base qui déclare le process et detecte si il est utilisable - si non renvoie null - si oui renvoie les formats qu'il sait traiter en entrée et en sortie
filtres_image_process_convert_dist() : array<string|int, string>
Return values
array<string|int, string>proces_convert_disponible()
proces_convert_disponible() : mixed
filtres_image_process_convert_vignette_dist()
La fonction qui cree la vignette avec le process extérieur
filtres_image_process_convert_vignette_dist(string $fichier_source, string $format_source, string $fichier_dest, string $format_dest, int $width, int $height) : string|null
Parameters
- $fichier_source : string
- $format_source : string
- $fichier_dest : string
- $format_dest : string
- $width : int
- $height : int
Return values
string|nullimage_rotation__process_convert()
Version "convert" du filtre image_rotation si la librairie convert a été selectionnée dans l'admin
image_rotation__process_convert(string $im, float $angle[, bool $crop = false ]) : string
Parameters
- $im : string
- $angle : float
- $crop : bool = false
Tags
Return values
stringfiltres_image_process_imagick_dist()
La fonction de base qui déclare le process et detecte si il est utilisable - si non renvoie null - si oui renvoie les formats qu'il sait traiter en entrée et en sortie
filtres_image_process_imagick_dist() : array<string|int, string>
Return values
array<string|int, string>filtres_image_process_imagick_vignette_dist()
La fonction qui cree la vignette avec le process extérieur
filtres_image_process_imagick_vignette_dist(string $fichier_source, string $format_source, string $fichier_dest, string $format_dest, int $width, int $height) : string|null
Parameters
- $fichier_source : string
- $format_source : string
- $fichier_dest : string
- $format_dest : string
- $width : int
- $height : int
Return values
string|nullmultiple_de_trois()
multiple_de_trois(mixed $val) : mixed
Parameters
- $val : mixed
_couleur_rgb2hsv()
Transformation d'une couleur vectorielle RGB en HSV RGB entiers entre 0 et 255 HSV float entre 0 et 1
_couleur_rgb2hsv(int $R, int $G, int $B) : array<string|int, mixed>
Parameters
- $R : int
- $G : int
- $B : int
Return values
array<string|int, mixed>_couleur_hsv2rgb()
Transformation d'une couleur vectorielle HSV en RGB HSV float entre 0 et 1 RGB entiers entre 0 et 255
_couleur_hsv2rgb(float $H, float $S, float $V) : array<string|int, mixed>
Parameters
- $H : float
- $S : float
- $V : float
Return values
array<string|int, mixed>_couleur_rgb2hsl()
Transformation d'une couleur RGB en HSL
(pour SPIP4)
_couleur_rgb2hsl(int $R, int $G, int $B) : array<string|int, mixed>
HSL float entre 0 et 1 RGB entiers entre 0 et 255
Parameters
- $R : int
- $G : int
- $B : int
Tags
Return values
array<string|int, mixed>_couleur_hsl2rgb()
Transformation d'une couleur HSL en RGB
(pour SPIP4)
_couleur_hsl2rgb(float $H, float $S, float $L) : array<string|int, mixed>
HSL float entre 0 et 1 RGB entiers entre 0 et 255
Parameters
- $H : float
- $S : float
- $L : float
Tags
Return values
array<string|int, mixed>_image_couleur_extraire()
_image_couleur_extraire(mixed $img[, mixed $x = 10 ][, mixed $y = 6 ]) : mixed
Parameters
- $img : mixed
- $x : mixed = 10
- $y : mixed = 6
_image_distance_pixel()
_image_distance_pixel(mixed $xo, mixed $yo, mixed $x0, mixed $y0) : mixed
Parameters
- $xo : mixed
- $yo : mixed
- $x0 : mixed
- $y0 : mixed
_image_decale_composante()
Decale une composante de couleur entier de 0 a 255
_image_decale_composante(int $coul, int $gamma) : int
Parameters
- $coul : int
- $gamma : int
Return values
intimage_oriente_selon_exif()
Un filtre pour re-orienter automatiquement une image selon son exif - si besoin si pas d'exif ou pas d'orientation, le filtre ne fait rien et renvoie l'image d'origine
image_oriente_selon_exif(string $img) : string
Parameters
- $img : string
Return values
stringimage_aplatir()
image_aplatir(mixed $im[, mixed $format = 'jpg' ][, mixed $coul = '000000' ][, mixed $qualite = null ][, mixed $transparence = false ]) : mixed
Parameters
- $im : mixed
- $format : mixed = 'jpg'
- $coul : mixed = '000000'
- $qualite : mixed = null
- $transparence : mixed = false
image_format()
image_format(mixed $img[, mixed $format = 'png' ]) : mixed
Parameters
- $img : mixed
- $format : mixed = 'png'
image_alpha()
image_alpha(mixed $im[, mixed $alpha = 63 ]) : mixed
Parameters
- $im : mixed
- $alpha : mixed = 63
image_recadre()
Recadre (rogne) une image en indiquant la taille de la découpe souhaitée
image_recadre(string $im, string|int $width[, string|int $height = '-' ][, string $position = 'center' ][, string $background_color = 'white' ]) : string
On peut indiquer une proportion ou une taille spécifique, une position de rognage et une couleur de fond, si le rognage est de taille plus grande que l'image d'origine.
Parameters
- $im : string
-
Chemin de l'image ou balise html
<img src=... />
- $width : string|int
-
Largeur du recadrage ou ratio sous la forme "16:9"
- $height : string|int = '-'
-
Hauteur du recadrage ou "+" (agrandir) ou "-" (reduire) si un ratio est fourni pour width
- $position : string = 'center'
-
Indication de position de la découpe :
center
,left
,right
,top
,bottom
,- ou combinaisons de plusiers
top left
- ou indication en pixels depuis une position
top=50
ou composéetop=40 left=50
- ou nom d'une fonction spéciale qui calculera et retournera la position souhaitée
- $background_color : string = 'white'
-
Couleur de fond si on agrandit l'image
Tags
Return values
string —balise image recadrée
image_recadre_mini()
Recadrer une image dans le rectangle le plus petit possible sans perte de pixels non transparent Le recadrage se fait en conservant le centre de l'image : on recadre symétriquement gauche vs droite et haut vs bas TODO : proposer une option pour vraiment recadrer au plus juste, meme si ca decentre l'image
image_recadre_mini(string $im) : string
Parameters
- $im : string
Return values
stringimage_flip_vertical()
Flip une image selon un axe de symétrie central et vertical (c'est donc un flip horizontal au sens de GD)
image_flip_vertical(string $im) : string
Parameters
- $im : string
Return values
stringimage_flip_horizontal()
Flip une image selon un axe de symétrie central et horizontal (c'est donc un flip vertical au sens de GD)
image_flip_horizontal(string $im) : string
Parameters
- $im : string
Return values
stringimage_masque()
image_masque(mixed $im, mixed $masque[, mixed $pos = '' ]) : mixed
Parameters
- $im : mixed
- $masque : mixed
- $pos : mixed = ''
image_nb()
Passage de l'image en noir et blanc un noir & blanc "photo" n'est pas "neutre": les composantes de couleur sont ponderees pour obtenir le niveau de gris on peut ici regler cette ponderation en "pour mille"
image_nb(string $im[, int|null $val_r = null ][, int|null $val_g = null ][, int|null $val_b = null ]) : string
Par défaut, si on ne passe pas de pondération, on utilise le filtre IMG_FILTER_GRAYSCALE de GD beaucoup plus rapide
Parameters
- $im : string
- $val_r : int|null = null
- $val_g : int|null = null
- $val_b : int|null = null
Return values
stringimage_flou()
Calcul d'un flou sur une image.
image_flou(mixed $im[, int $niveau = 3 ]) : string
On utilise une matrice de convolution pour le niveau 1 et le niveau 2, qu'on repasse autant de fois que nécessaire pour arriver au niveau de flou souhaité qui est appriximativement le rayon du flou Le filtre préserve la transparence
Parameters
- $im : mixed
- $niveau : int = 3
Return values
stringdimensions_rotation_image()
Determiner les nouvelles dimensions de l'image apres rotation
dimensions_rotation_image(int|float $angle, int $width, int $height[, int $center_x = null ][, int $center_y = null ]) : array<string|int, mixed>
Parameters
- $angle : int|float
-
en degres
- $width : int
- $height : int
- $center_x : int = null
- $center_y : int = null
Return values
array<string|int, mixed> —[int, int]
image_rotation()
permet de faire tourner une image d'un angle quelconque le flag "crop" permet de recadrer l'image pour conserver sa taille d'origine
image_rotation(string $im, float $angle[, bool $crop = false ]) : string
Parameters
- $im : string
- $angle : float
- $crop : bool = false
Return values
stringimage_imagick()
Permet d'appliquer un filtre basé sur une méthode Imagick:: a une image par exemple: [(#LOGO_ARTICLE|image_imagick{waveImage,20,60})] Les arguments suivant le nom de la méthode sont ceux de la méthode
image_imagick() : string
Liste des méthodes: https://www.php.net/manual/en/book.imagick.php
Tags
Return values
string_image_imagick_write()
Ecriture sur le disque d'une umage générée par Imagick
_image_imagick_write(Imagick $imagick, string $fichier[, mixed $qualite = _IMG_GD_QUALITE ]) : bool
Parameters
- $imagick : Imagick
- $fichier : string
-
Le path vers l'image (ex : local/cache-vignettes/L180xH51/image.png).
- $qualite : mixed = _IMG_GD_QUALITE
Tags
Return values
bool —- false si l'image créée a une largeur nulle ou n'existe pas ;
- true si une image est bien retournée.
image_gamma()
image_gamma(mixed $im[, mixed $gamma = 0 ]) : mixed
Parameters
- $im : mixed
- $gamma : mixed = 0
image_sepia()
Passe l'image en "sepia" On peut fixer les valeurs RGB de la couleur "complementaire" pour forcer une dominante
image_sepia(string $im[, string $rgb = '896f5e' ][, bool $legacy = false ]) : mixed|string
Par defaut, on utilise les fonciton de gd pour un résultat plus rapide mais avec un peu moins de piquant que la méthode historique de SPIP, dont on peut retrouver le résultat en passant $legacy = true en argument
Parameters
- $im : string
- $rgb : string = '896f5e'
- $legacy : bool = false
Return values
mixed|stringimage_renforcement()
Renforcer la netteté d'une image
image_renforcement(string $im[, float $k = 0.5 ]) : string
Parameters
- $im : string
-
Code HTML de l'image
- $k : float = 0.5
-
Niveau de renforcement (entre 0 et 1)
Return values
string —Code HTML de l'image
image_fond_transparent()
Transforme la couleur de fond de l'image en transparence Le filtre ne gere pas la notion de contiguite aux bords, et affectera tous les pixels de l'image dans la couleur visee $background_color : couleur cible $tolerance : distance L1 dans l'espace RGB des couleur autour de la couleur $background_color pour lequel la transparence sera appliquee $alpha : transparence a appliquer pour les pixels de la couleur cibles avec la tolerance ci-dessus $coeff_lissage : coeff applique a la tolerance pour determiner la decroissance de la transparence fonction de la distance L1 entre la couleur du pixel et la couleur cible
image_fond_transparent(string $im, string $background_color[, int $tolerance = 12 ][, int $alpha = 127 ][, int $coeff_lissage = 7 ]) : mixed|null|string
Parameters
- $im : string
- $background_color : string
- $tolerance : int = 12
- $alpha : int = 127
-
alpha = 0: aucune transparence alpha = 127: completement transparent
- $coeff_lissage : int = 7