[ecrire ↪ refactor_images_lib] 20 commits

spip/ecrire | 20 commits

Par Cerdic, le 3 février 2025 à 16h06min :

fix: simplifier l’eciture de l’image en sortie de process_image_reduire(). Le timestamp est automatiquement géré par _image_ecrire_tag() + on relit width et height sur l’image produite par taille_image qui gere bien l’orientation exif, car l’image produite peut etre une simple copie qui contient encore des exif

Modifié
inc/filtres_images_lib_mini.php

Détails : fix: simplifier l'eciture de l'image en sortie de process_image_reduire(). Le... (03958e71) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

refactor: _image_extensions_acceptees_en_entree() et _image_extensions_acceptees_en_sortie() gèrent complètement le cas gd2 ou autre en déléguant dans ce cas à filtres_image_process_xxx_dist() et peuvent aussi répondre pour un process spécifique (pas seulement pour celui configuré). Ce sont les 2 fonctions de référence à utiliser, formats_image_acceptables() devient un simple shorthand qui n’est utilisée que 2 fois en dehors des fonctions images (et ses arguments ne servent plus en pratique)

Modifié
bootstrap/inc/utils.php
inc/filtres_images_lib_mini.php

Détails : refactor: _image_extensions_acceptees_en_entree() et... (ebc0c8b2) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

fix: tests plus complets pour le cas gd2 + appeler filtres_image_process_xxx_dist(true) pour forcer un test des formats pour le process xxx

Modifié
action/tester.php

Détails : fix: tests plus complets pour le cas gd2 + appeler... (1dd586f5) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

styles: coding standard

Modifié
inc/filtres_images_lib_mini.php

Détails : styles: coding standard (8d9c599a) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

fix: un rayon de flou plus proche de ce qu’on obtient en gd/imagick avec une image pixel semblable

Modifié
inc/svg.php

Détails : fix: un rayon de flou plus proche de ce qu'on obtient en gd/imagick avec une image pixel semblable (6cc545a7) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

refactor: une fonction exif_lire() plus generique qu’on utilise ensuite dans exif_obtenir_orientation()

Modifié
inc/exif.php

Détails : refactor: une fonction exif_lire() plus generique qu'on utilise ensuite dans... (4bfbe72b) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

doc: fix la doc qui dit le contraire de ce que fait le filtre

Modifié
inc/filtres_images_mini.php

Détails : doc: fix la doc qui dit le contraire de ce que fait le filtre (17fb324b) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

feat: une fonction svg_filter_colorize() pour modifier les composantes RGB d’un SVG (analogue au filtre colorize GD2)

Modifié
inc/svg.php

Détails : feat: une fonction svg_filter_colorize() pour modifier les composantes RGB... (ba166385) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

fix: tester le cas is_string pour $options car certains filtres appellent avec une valeur ‹  › au lieu de false

Modifié
inc/filtres_images_lib_mini.php

Détails : fix: tester le cas is_string pour $options car certains filtres appellent avec... (76dcfb47) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

fix: ne pas forcer de valeur par defaut pour l’argument $qualite dans les fonctions _image_imagejpg() _image_imagewebp() et _image_imageavif(), c’est la valeur null qui signifie ‹ valeur par defaut › ce qui permet d’appeler la fonction avec un argument qualite qui vaut null ou une valeur

Modifié
inc/filtres_images_lib_mini.php

Détails : fix: ne pas forcer de valeur par defaut pour l'argument $qualite dans les... (5ba2905f) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

fix: il faut que _image_imagepng fasse passer la qualite pour produire un png indexe quand on utilise pas GD natif (qui le gere dans ce cas en amont)

  • _image_object_output ne doit pas fixer de valeur par défaut pour la qualite, et laisse ça aux fonctions _image_imagexxx()

Modifié
inc/filtres_images_lib_mini.php

Détails : fix: il faut que _image_imagepng fasse passer la qualite pour produire un png... (cdff9787) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

fix: un peu plus de log, et eviter une erreur si $img est une ressource et pas une class

Modifié
inc/filtres_images_lib_mini.php

Détails : fix: un peu plus de log, et eviter une erreur si $img est une ressource et pas une class (a92ceb9b) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

refactor: l’enregristrement des images sur disque sait gérer n’importe quel objet qui représente une image, et pas seulement une \GDImage

  • la fonction _image_gd_output() est renomee _image_object_output() pour plus de clareté, avec mapping de l’ancien nom (sans rupture de compat)
  • la fonction interne _imagewriteto_func() devient _image_write() et prend l’extension en premier argument, elle se charge d’appeler la fonction gd2 appropriée si l’image passee est de type \GDImage et sinon une fonction _image_xxx_write() mappee sur le nom de la classe de l’objet $img

Modifié
inc/filtres_images_lib_mini.php

Détails : refactor: l'enregristrement des images sur disque sait gérer n'importe quel... (9f652435) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

fix: utiliser un log debug ici, il y a pas d’erreur

Modifié
inc/filtres_images_lib_mini.php

Détails : fix: utiliser un log debug ici, il y a pas d'erreur (a0a7d594) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

refactor: signature de _image_valeurs_trans()

Modifié
inc/filtres_images_lib_mini.php

Détails : refactor: signature de _image_valeurs_trans() (4af01d8a) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

refactor: la signature de _image_valeurs_trans evolue pour prendre un tableau d’options en 5eme argument, sans rupture de compatibilité (les appels ancienne forme sont traduits)

Modifié
inc/filtres_images_lib_mini.php

Détails : refactor: la signature de _image_valeurs_trans evolue pour prendre un tableau... (faaeadbd) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

fix: coding standard

Modifié
action/tester.php
inc/filtres_images_lib_mini.php

Détails : fix: coding standard (8be7006d) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

fix: choix du format alternatif de sortie quand l’extension d’origine n’est pas supportee en sortie

Modifié
inc/filtres_images_lib_mini.php

Détails : fix: choix du format alternatif de sortie quand l'extension d'origine n'est pas supportee en sortie (ec4b09e4) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

fix: ne pas inverser hauteur et largeur quand on resize en html faut de support du format image concerné

Modifié
inc/filtres_images_lib_mini.php

Détails : fix: ne pas inverser hauteur et largeur quand on resize en html faut de... (8330e413) · Validations · spip / ecrire · GitLab

==============================
Par Cerdic, le 3 février 2025 à 16h06min :

fix: ne pas confondre gd_formats_read pour les formats acceptes en entree et gd_formats pour les formats acceptes en sortie

Modifié
bootstrap/inc/utils.php
inc/filtres_images_lib_mini.php

Détails : fix: ne pas confondre gd_formats_read pour les formats acceptes en entree et... (834d1cd4) · Validations · spip / ecrire · GitLab