Documentation du code de SPIP et de ses plugins

Images

Application

Table of Contents

Classes

ImagePixel
Classe de manipulation des pixels envoyé en argument de la callback par _image_map() Les couleur Red Green et Blue sont exprimées en entiers de 0 à 255 L'opacité Alpha est exprimée en floatant de 0 (transparent) à 1 (opaque)
ImagePixelImagick
Classe de manipulation des pixels envoyé en argument de la callback par _image_map() Les couleur Red Green et Blue sont exprimées en entiers de 0 à 255 L'opacité Alpha est exprimée en floatant de 0 (transparent) à 1 (opaque)
ImagePixelGd
Classe de manipulation des pixels envoyé en argument de la callback par _image_map() Les couleur Red Green et Blue sont exprimées en entiers de 0 à 255 L'opacité Alpha est exprimée en floatant de 0 (transparent) à 1 (opaque)
ImagesPurger

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

action_image_process_changer_dist()  : void
Une action qui permet de changer le image_process via un simple bouton utilisée par la page de demo/filtres_images
demo_liste_formats_supportes()  : mixed
demo_liste_images_types()  : mixed
demo_liste_filtres()  : mixed
demo_liste_images()  : mixed
demo_affiche_image()  : mixed
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
_image_process_config()  : mixed
_image_imagick_write()  : bool
Exporter l'image dans un fichier Cette fonction est automatiquement appelée par _image_gd_ouptput via _image_write quand l'image passée est de la classe \Imagick
_image_intervention_manager()  : ImageManager
Preparer un ImageManager de la librairie intervention, en fonction de la configuration image_process de SPIP Peut être utilisée directement pour creer/lire des images via la lib intervention
_image_intervention_createfrom()  : ImageInterface
Lire une image à l'aide de la librairie Intervention
_image_intervention_image_image_write()  : bool
Exporter l'image dans un fichier Cette fonction est automatiquement appelée à partir de `_image_object_ouptput()` (qui appelle d'autres fonctions) via `_image_write()` quand l'image passée est de la classe \Intervention\Image\Image
_image_disable_alpha_blending()  : mixed
_image_importe_gif_transparent()  : mixed
_image_colorize()  : mixed
_image_map()  : GdImage|Imagick
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|string
A partir d'une image, recupere une couleur renvoit sous la forme hexadecimale ("F26C4E" par exemple).
_image_distance_pixel()  : mixed
_image_decale_composante()  : int
Decale une composante de couleur entier de 0 a 255
_image_masque_prepare_masque()  : mixed
_image_masque_merge_transparent_pixels()  : array<string|int, mixed>
Calcule le mélange de 2 pixels transparents (pixel masque sur pixel image) fonction support pour les fonctions _image_masque_pixel_mode_xxx()
_image_masque_pixel_mode_masque()  : array<string|int, mixed>
_image_masque_pixel_mode_normal()  : array<string|int, mixed>
_image_masque_pixel_mode_produit()  : array<string|int, mixed>
_image_masque_pixel_mode_difference()  : array<string|int, mixed>
_image_masque_pixel_mode_superposer()  : array<string|int, mixed>
_image_masque_pixel_mode_lumiere_dure()  : array<string|int, mixed>
_image_masque_pixel_mode_ecran()  : array<string|int, mixed>
_image_masque_pixel_mode_eclaircir()  : array<string|int, mixed>
_image_masque_pixel_mode_obscurcir()  : array<string|int, mixed>
_image_masque_pixel_mode_teinte()  : array<string|int, mixed>
_image_masque_pixel_mode_saturation()  : array<string|int, mixed>
_image_masque_pixel_mode_valeur()  : array<string|int, mixed>
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_supprime_exif()  : string
Un filtre pour supprimer les infos exif - si besoin si pas d'exif, le filtre ne fait rien et renvoie l'image d'origine
image_aplatir()  : string
1/ Aplatir une image semi-transparente (supprimer couche alpha) en remplissant la transparence avec couleur choisir $coul.
image_format()  : string
Enregistrer une image dans un format donne (conserve la transparence gif, png, ico, webp,avif)
image_alpha()  : string
|image_alpha{63} Applique une transparence à l'image.
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 Par defaut le recadrage se fait en conservant le centre de l'image (recadre symétrique gauche vs droite et haut vs bas) mais en passant un second argument à false/non/all/mini on force un recadrage au plus juste de chaque côté
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()  : string
Passer, en plus de l'image d'origine, une image de "masque": un fichier PNG24 transparent.
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_luminosite()  : string
Permet de rendre une image plus claire ($luminosite > 0 à 255) ou plus foncee ($luminosite < 0 à -255)
image_gamma()  : mixed
image_colorize()  : string
Corriger les composantes RGB d'une image Pour chaque argument : - une valeur de 0 à 255 permet d'augmenter la composante - une valeur de 0 à -255 permet de diminuer la composante
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

_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

action_image_process_changer_dist()

Une action qui permet de changer le image_process via un simple bouton utilisée par la page de demo/filtres_images

action_image_process_changer_dist() : void

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
link
https://www.spip.net/3326
example
  • [(#VAL{fc3924}|couleur_saturation{0})] retourne blanc (ffffff),
  • [(#VAL{fc3924}|couleur_saturation{1})] retourne la couleur avec sa saturation au maximum (fb1800)
  • [(#VAL{fc3924}|couleur_saturation{0.2})] retourne la couleur avec 20% de saturation (fed0cc)
uses
_couleur_hex_to_dec()
uses
_couleur_dec_to_hex()
used-by
couleur_luminance()
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
link
https://www.spip.net/3326
example
  • [(#VAL{fc3924}|couleur_luminance{0})] retourne blanc (ffffff),
  • [(#VAL{fc3924}|couleur_luminance{1})] retourne noir (000000)
  • [(#VAL{fc3924}|couleur_luminance{0.5})] retourne une luminance moyenne (fb1b03)
  • [(#VAL{fc3924}|couleur_luminance{0.2})] retourne la couleur avec 20% de luminance (fda49a)
uses
_couleur_hex_to_dec()
uses
couleur_saturation()
uses
_couleur_rgb2hsl()
uses
_couleur_hsl2rgb()
uses
_couleur_dec_to_hex()
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([bool $tester = false ]) : array<string|int, string>
Parameters
$tester : bool = false
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|null

image_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
see
image_rotation()
Return values
string

filtres_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([bool $tester = false ]) : array<string|int, string>
Parameters
$tester : bool = false
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|null

_image_imagick_write()

Exporter l'image dans un fichier Cette fonction est automatiquement appelée par _image_gd_ouptput via _image_write quand l'image passée est de la classe \Imagick

_image_imagick_write(string $format, Imagick $imagick, string $fichier[, int|null $qualite = null ]) : bool
Parameters
$format : string
$imagick : Imagick
$fichier : string
$qualite : int|null = null
Tags
throws
ImagickException
used-by
image_imagick()
Return values
bool

_image_intervention_manager()

Preparer un ImageManager de la librairie intervention, en fonction de la configuration image_process de SPIP Peut être utilisée directement pour creer/lire des images via la lib intervention

_image_intervention_manager() : ImageManager
Return values
ImageManager

_image_intervention_createfrom()

Lire une image à l'aide de la librairie Intervention

_image_intervention_createfrom(string $filename) : ImageInterface
Parameters
$filename : string
Return values
ImageInterface

_image_intervention_image_image_write()

Exporter l'image dans un fichier Cette fonction est automatiquement appelée à partir de `_image_object_ouptput()` (qui appelle d'autres fonctions) via `_image_write()` quand l'image passée est de la classe \Intervention\Image\Image

_image_intervention_image_image_write(string $format, ImageInterface $img, string $filename[, int|null $qualite = null ]) : bool
Parameters
$format : string
$img : ImageInterface
$filename : string
$qualite : int|null = null
Return values
bool

_image_disable_alpha_blending()

_image_disable_alpha_blending(mixed $image) : mixed
Parameters
$image : mixed

_image_importe_gif_transparent()

_image_importe_gif_transparent(mixed $image) : mixed
Parameters
$image : mixed

_image_colorize()

_image_colorize(mixed $image[, mixed $red = 0 ][, mixed $green = 0 ][, mixed $blue = 0 ]) : mixed
Parameters
$image : mixed
$red : mixed = 0
$green : mixed = 0
$blue : mixed = 0

_image_map()

_image_map(GdImage|Imagick|Image $image, string|Closure $callback_function) : GdImage|Imagick
Parameters
$image : GdImage|Imagick|Image
$callback_function : string|Closure
Return values
GdImage|Imagick

multiple_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
uses
_couleur_rgb_to_hsl()
used-by
couleur_luminance()
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
uses
_couleur_hsl_to_rgb()
used-by
couleur_luminance()
Return values
array<string|int, mixed>

_image_couleur_extraire()

A partir d'une image, recupere une couleur renvoit sous la forme hexadecimale ("F26C4E" par exemple).

_image_couleur_extraire(string $src[, int|string $x = 10 ][, int $y = 6 ]) : mixed|string

Par defaut, la couleur choisie se trouve un peu au-dessus du centre de l'image. On peut forcer un point en fixant $x et $y, entre 0 et 20. si on passe 'moyenne' pour x alors une couleur moyenne est calculee sur les 20x20px

Parameters
$src : string
$x : int|string = 10
$y : int = 6
Return values
mixed|string

_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
int

_image_masque_prepare_masque()

_image_masque_prepare_masque(array<string|int, mixed> $mask, mixed $largeur, mixed $hauteur, mixed $mode[, array<string|int, mixed> $params = [] ]) : mixed
Parameters
$mask : array<string|int, mixed>
$largeur : mixed
$hauteur : mixed
$mode : mixed
$params : array<string|int, mixed> = []

_image_masque_merge_transparent_pixels()

Calcule le mélange de 2 pixels transparents (pixel masque sur pixel image) fonction support pour les fonctions _image_masque_pixel_mode_xxx()

_image_masque_merge_transparent_pixels(array<string|int, mixed> $ci, mixed $cm) : array<string|int, mixed>
Parameters
$ci : array<string|int, mixed>

couleur du pixel de l'image int $r, int $g, int $b, float $a

$cm : mixed

couleur du pixel du masque int $r, int $g, int $b, float $a

Return values
array<string|int, mixed>

couleur du pixel resultat int $r, int $g, int $b, float $a

_image_masque_pixel_mode_masque()

_image_masque_pixel_mode_masque(array<string|int, mixed> $ci, mixed $cm) : array<string|int, mixed>
Parameters
$ci : array<string|int, mixed>

couleur du pixel de l'image int $r, int $g, int $b, float $a

$cm : mixed

couleur du pixel du masque int $r, int $g, int $b, float $a

Tags
see
image_masque()
Return values
array<string|int, mixed>

couleur du pixel resultat int $r, int $g, int $b, float $a

_image_masque_pixel_mode_normal()

_image_masque_pixel_mode_normal(array<string|int, mixed> $ci, mixed $cm) : array<string|int, mixed>
Parameters
$ci : array<string|int, mixed>

couleur du pixel de l'image int $r, int $g, int $b, float $a

$cm : mixed

couleur du pixel du masque int $r, int $g, int $b, float $a

Tags
see
image_masque()
Return values
array<string|int, mixed>

couleur du pixel resultat int $r, int $g, int $b, float $a

_image_masque_pixel_mode_produit()

_image_masque_pixel_mode_produit(array<string|int, mixed> $ci, mixed $cm) : array<string|int, mixed>
Parameters
$ci : array<string|int, mixed>

couleur du pixel de l'image int $r, int $g, int $b, float $a

$cm : mixed

couleur du pixel du masque int $r, int $g, int $b, float $a

Tags
see
image_masque()
Return values
array<string|int, mixed>

couleur du pixel resultat int $r, int $g, int $b, float $a

_image_masque_pixel_mode_difference()

_image_masque_pixel_mode_difference(array<string|int, mixed> $ci, mixed $cm) : array<string|int, mixed>
Parameters
$ci : array<string|int, mixed>

couleur du pixel de l'image int $r, int $g, int $b, float $a

$cm : mixed

couleur du pixel du masque int $r, int $g, int $b, float $a

Tags
see
image_masque()
Return values
array<string|int, mixed>

couleur du pixel resultat int $r, int $g, int $b, float $a

_image_masque_pixel_mode_superposer()

_image_masque_pixel_mode_superposer(array<string|int, mixed> $ci, mixed $cm) : array<string|int, mixed>
Parameters
$ci : array<string|int, mixed>

couleur du pixel de l'image int $r, int $g, int $b, float $a

$cm : mixed

couleur du pixel du masque int $r, int $g, int $b, float $a

Tags
see
image_masque()
Return values
array<string|int, mixed>

couleur du pixel resultat int $r, int $g, int $b, float $a

_image_masque_pixel_mode_lumiere_dure()

_image_masque_pixel_mode_lumiere_dure(array<string|int, mixed> $ci, mixed $cm) : array<string|int, mixed>
Parameters
$ci : array<string|int, mixed>

couleur du pixel de l'image int $r, int $g, int $b, float $a

$cm : mixed

couleur du pixel du masque int $r, int $g, int $b, float $a

Tags
see
image_masque()
Return values
array<string|int, mixed>

couleur du pixel resultat int $r, int $g, int $b, float $a

_image_masque_pixel_mode_ecran()

_image_masque_pixel_mode_ecran(array<string|int, mixed> $ci, mixed $cm) : array<string|int, mixed>
Parameters
$ci : array<string|int, mixed>

couleur du pixel de l'image int $r, int $g, int $b, float $a

$cm : mixed

couleur du pixel du masque int $r, int $g, int $b, float $a

Tags
see
image_masque()
Return values
array<string|int, mixed>

couleur du pixel resultat int $r, int $g, int $b, float $a

_image_masque_pixel_mode_eclaircir()

_image_masque_pixel_mode_eclaircir(array<string|int, mixed> $ci, mixed $cm) : array<string|int, mixed>
Parameters
$ci : array<string|int, mixed>

couleur du pixel de l'image int $r, int $g, int $b, float $a

$cm : mixed

couleur du pixel du masque int $r, int $g, int $b, float $a

Tags
see
image_masque()
Return values
array<string|int, mixed>

couleur du pixel resultat int $r, int $g, int $b, float $a

_image_masque_pixel_mode_obscurcir()

_image_masque_pixel_mode_obscurcir(array<string|int, mixed> $ci, mixed $cm) : array<string|int, mixed>
Parameters
$ci : array<string|int, mixed>

couleur du pixel de l'image int $r, int $g, int $b, float $a

$cm : mixed

couleur du pixel du masque int $r, int $g, int $b, float $a

Tags
see
image_masque()
Return values
array<string|int, mixed>

couleur du pixel resultat int $r, int $g, int $b, float $a

_image_masque_pixel_mode_teinte()

_image_masque_pixel_mode_teinte(array<string|int, mixed> $ci, mixed $cm) : array<string|int, mixed>
Parameters
$ci : array<string|int, mixed>

couleur du pixel de l'image int $r, int $g, int $b, float $a

$cm : mixed

couleur du pixel du masque int $r, int $g, int $b, float $a

Tags
see
image_masque()
Return values
array<string|int, mixed>

couleur du pixel resultat int $r, int $g, int $b, float $a

_image_masque_pixel_mode_saturation()

_image_masque_pixel_mode_saturation(array<string|int, mixed> $ci, mixed $cm) : array<string|int, mixed>
Parameters
$ci : array<string|int, mixed>

couleur du pixel de l'image int $r, int $g, int $b, float $a

$cm : mixed

couleur du pixel du masque int $r, int $g, int $b, float $a

Tags
see
image_masque()
Return values
array<string|int, mixed>

couleur du pixel resultat int $r, int $g, int $b, float $a

_image_masque_pixel_mode_valeur()

_image_masque_pixel_mode_valeur(array<string|int, mixed> $ci, mixed $cm) : array<string|int, mixed>
Parameters
$ci : array<string|int, mixed>

couleur du pixel de l'image int $r, int $g, int $b, float $a

$cm : mixed

couleur du pixel du masque int $r, int $g, int $b, float $a

Tags
see
image_masque()
Return values
array<string|int, mixed>

couleur du pixel resultat int $r, int $g, int $b, float $a

image_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 $src) : string
Parameters
$src : string
Return values
string

image_supprime_exif()

Un filtre pour supprimer les infos exif - si besoin si pas d'exif, le filtre ne fait rien et renvoie l'image d'origine

image_supprime_exif(string $src) : string
Parameters
$src : string
Return values
string

image_aplatir()

1/ Aplatir une image semi-transparente (supprimer couche alpha) en remplissant la transparence avec couleur choisir $coul.

image_aplatir(string $src[, string $format = 'jpg' ][, string $bg_color = '000000' ][, int|null $qualite = null ][, bool $transparence = false ]) : string

2/ Forcer le format de sauvegarde (jpg, png, gif, webp, avif...) pour les formats compresses jpg/webp/avif.., $qualite correspond au niveau de compression (defaut 85) pour le format gif, $qualite correspond au nombre de couleurs dans la palette (defaut 128) pour le format png, $qualite correspond au nombre de couleur dans la palette ou si 0 a une image truecolor (defaut truecolor) attention, seul 128 est supporte en l'etat (production d'images avec palette reduite pas satisfaisante) 3/ $transparence a "true" permet de conserver la transparence (utile pour conversion GIF)

Parameters
$src : string
$format : string = 'jpg'
$bg_color : string = '000000'
$qualite : int|null = null
$transparence : bool = false
Return values
string

image_format()

Enregistrer une image dans un format donne (conserve la transparence gif, png, ico, webp,avif)

image_format(string $src[, string $format = 'png' ][, string $bg_color = 'cccccc' ]) : string
Parameters
$src : string
$format : string = 'png'

format de l'image produite (gif, png, jpg, webp, avif..) png8 permet de demander un png en couleurs indexées

$bg_color : string = 'cccccc'

couleur de fond si la transparence ne peut être conservée

Return values
string

image_alpha()

|image_alpha{63} Applique une transparence à l'image.

image_alpha(string $src[, int $alpha = 63 ]) : string

alpha = 0: aucune transparence alpha = 127: completement transparent

Parameters
$src : string
$alpha : int = 63
Return values
string

image_recadre()

Recadre (rogne) une image en indiquant la taille de la découpe souhaitée

image_recadre(string $src, string|int $crop_width[, string|int $crop_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
$src : string

Chemin de l'image ou balise html <img src=... />

$crop_width : string|int

Largeur du recadrage ou ratio sous la forme "16:9"

$crop_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ée top=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
example
  • [(#FICHIER|image_recadre{800, 400})]
  • [(#FICHIER|image_recadre{800, 400, center})]
  • [(#FICHIER|image_recadre{800, 400, center, black})]
  • [(#FICHIER|image_recadre{16:9})]
  • [(#FICHIER|image_recadre{16:9, -})] (- est appliqué par défaut, équivalent à image_passe_partout)
  • [(#FICHIER|image_recadre{16:9, +, center, white})]
  • [(#FICHIER|image_recadre{16:9, -, top left})]
  • [(#FICHIER|image_recadre{16:9, -, top=40 left=20})]
filtre
uses
_image_valeurs_trans()
uses
_image_tag_changer_taille()

si image trop grande pour être traitée

uses
_image_ecrire_tag()
link
https://www.spip.net/5786
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 Par defaut le recadrage se fait en conservant le centre de l'image (recadre symétrique gauche vs droite et haut vs bas) mais en passant un second argument à false/non/all/mini on force un recadrage au plus juste de chaque côté

image_recadre_mini(string $src[, string|bool $keep_center = true ][, int $tolerance = 10 ]) : string

Le 3ème argument (de 0 à 255) permet de fixer la tolerance sur l'opacité (par défaut 10)

Parameters
$src : string
$keep_center : string|bool = true
$tolerance : int = 10
Return values
string

image_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 $src) : string
Parameters
$src : string
Return values
string

image_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 $src) : string
Parameters
$src : string
Return values
string

image_masque()

Passer, en plus de l'image d'origine, une image de "masque": un fichier PNG24 transparent.

image_masque(string $src, string $masque, mixed ...$args) : string

Le decoupage se fera selon la transparence du "masque", et les couleurs seront eclaircies/foncees selon de couleur du masque. Pour ne pas modifier la couleur, le masque doit etre en gris 50%.

Si l'image source est plus grande que le masque, alors cette image est reduite a la taille du masque. Sinon, c'est la taille de l'image source qui est utilisee.

$pos est une variable libre, qui permet de passer left=..., right=..., bottom=..., top=... dans ce cas, le masque est place a ces positions sur l'image d'origine, et evidemment cette image d'origine n'est pas redimensionnee

Positionnement horizontal: text-align=left, right, center Positionnement vertical : vertical-align=top, bottom, middle (les positionnements left, right, top, left sont relativement inutiles, mais coherence avec CSS)

Repeter le masque : repeat=repeat-x, repeat-y, repeat

Choix du mode de fusion: mode=masque, normal, eclaircir, obscurcir, produit, difference, ecran, superposer, lumiere_dure, teinte, saturation, valeur https://en.wikipedia.org/wiki/Blend_modes

  • masque: mode par defaut @uses _image_masque_pixel_mode_masque()
  • normal: place la nouvelle image par dessus l'ancienne @uses _image_masque_pixel_mode_normal()
  • eclaircir: place uniquement les points plus clairs @uses _image_masque_pixel_mode_eclaircir()
  • obscurcir: place uniquement les points plus foncés @uses _image_masque_pixel_mode_obscurcir()
  • produit: multiplie par le masque (points noirs rendent l'image noire, points blancs ne changent rien) @uses _image_masque_pixel_mode_produit()
  • difference: remplit avec l'ecart entre les couleurs d'origine et du masque @uses _image_masque_pixel_mode_difference()
  • ecran: effet inverse de 'produit' -> l'image resultante est plus claire @uses _image_masque_pixel_mode_ecran()
  • superposer: combine les modes 'produit' et 'ecran' -> les parties claires sont eclaircies, les parties sombres assombries. @uses _image_masque_pixel_mode_superposer()
  • lumiere_dure: equivalent a 'superposer', sauf que l'image du bas et du haut sont inversees. @uses _image_masque_pixel_mode_lumiere_dure()
  • teinte: utilise la teinte du masque @uses _image_masque_pixel_mode_teinte()
  • saturation: utilise la saturation du masque @uses _image_masque_pixel_mode_saturation()
  • valeur: utilise la valeur du masque @uses _image_masque_pixel_mode_valeur()

Il est possible d'ajouter son propre mode de fusion xxxx en déifinissant une fonction homonyme _image_masque_pixel_mode_xxxx()

Parameters
$src : string
$masque : string
$args : mixed
Return values
string

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 $src[, int|null $val_r = null ][, int|null $val_g = null ][, int|null $val_b = null ]) : string

Par défaut, sans argument, on utilise le greyscale() par defaut de la lib graphique, beaucoup plus rapide Si on passe un seul argument auto [(#FICHIER|image_nb{auto}))] ce sont les pondérations automatiques utilisées, mais calculées précisemment pixel par pixel

Parameters
$src : string
$val_r : int|null = null
$val_g : int|null = null
$val_b : int|null = null
Return values
string

image_flou()

Calcul d'un flou sur une image.

image_flou(mixed $src[, 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
$src : mixed
$niveau : int = 3
Return values
string

dimensions_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 $src, float $angle[, bool $crop = false ]) : string
Parameters
$src : string
$angle : float
$crop : bool = false
Return values
string

image_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
uses
_image_imagick_write()
Return values
string

image_luminosite()

Permet de rendre une image plus claire ($luminosite > 0 à 255) ou plus foncee ($luminosite < 0 à -255)

image_luminosite(string $src[, int $luminosite = 0 ]) : string

(Correspond en fait au filtre brightness de GD)

Parameters
$src : string
$luminosite : int = 0
Return values
string

image_colorize()

Corriger les composantes RGB d'une image Pour chaque argument : - une valeur de 0 à 255 permet d'augmenter la composante - une valeur de 0 à -255 permet de diminuer la composante

image_colorize(string $src[, int $red = 0 ][, int $green = 0 ][, int $blue = 0 ]) : string
Parameters
$src : string
$red : int = 0
$green : int = 0
$blue : int = 0
Return values
string

image_sepia()

Passe l'image en "sepia" On peut fixer les valeurs RGB de la couleur "complementaire" pour forcer une dominante

image_sepia(string $src[, string $sepia = '896f5e' ][, bool $legacy = false ]) : mixed|string

Par defaut, on utilise des fonctions rapides à base de colorize mais c'est une approximation avec un peu moins de piquant que la méthode de calcul pixel à pixel On peut retrouver le résultat plus précis de cette dernière en passant $legacy = true en argument, mais c'est beaucoup plus lent

Parameters
$src : string
$sepia : string = '896f5e'
$legacy : bool = false
Return values
mixed|string

image_renforcement()

Renforcer la netteté d'une image

image_renforcement(string $src[, float $k = 0.5 ]) : string
Parameters
$src : 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 $src, string $bg_color[, int $tolerance = 12 ][, int $alpha = 127 ][, int $coeff_lissage = 7 ]) : mixed|null|string
Parameters
$src : string
$bg_color : string
$tolerance : int = 12
$alpha : int = 127

alpha = 0: aucune transparence alpha = 127: completement transparent

$coeff_lissage : int = 7
Return values
mixed|null|string

        
On this page

Search results