spip/images | 8 commits
Par Cerdic, le 7 janvier 2025 à 18h47min :
fix: fournir un résultat aux bonnes dimensions si |image_masque ne sait pas traiter l’image source et que l’on masque sans positionnement (ie dans ce cas on retourne le masque et pas l’image source)
Modifié
filtres/images_transforme.php
==============================
Par Cerdic, le 7 janvier 2025 à 18h47min :
refactor: re-ecriture propre des fonctions _image_masque_pixel_mode_xxx, fonction support _image_masque_merge_transparent_pixels() pour merger 2 pixels, qui est reutilisee presque dans tous les calculs, phpdoc
Modifié
filtres/images_lib.php
==============================
Par Cerdic, le 7 janvier 2025 à 18h47min :
refactor: déplacer _image_masque_prepare_masque() dans filtres/images_lib
Modifié
filtres/images_lib.php
filtres/images_transforme.php
==============================
Par Cerdic, le 7 janvier 2025 à 18h47min :
refactor: chaque masque est implémenté par une fonction _image_masque_pixel_mode_xxxx() qui reçoit la couleur du pixel de l’image et la couleur du pixel du masque et retourne la couleur du pixel résultat (la fonction peut renvoyer null pour indiquer que le pixel de l’image source est inchangé).
Cela permet par ailleurs de définir ses propres modes de fusion, il suffit d’implémenter la fonction de masque pixel _image_masque_pixel_mode_xxxx correspondante
Modifié
filtres/images_lib.php
filtres/images_transforme.php
==============================
Par Cerdic, le 7 janvier 2025 à 18h47min :
docs: option repeat sur |image_masque
Modifié
filtres/images_transforme.php
Détails : docs: option repeat sur |image_masque (101bbbb2) · Validations · spip / images · GitLab
==============================
Par Cerdic, le 7 janvier 2025 à 18h47min :
refactor: optimisation, si on est dehors du masque il n’y a rien a calculer ni a modifier sur l’image d’origine
Modifié
filtres/images_transforme.php
==============================
Par Cerdic, le 7 janvier 2025 à 18h47min :
feat: le filtre |image_masque prend une nouvelle option repeat qui peut prendre les valeurs repeat-x, repeat-y, repeat et no-repeat et permet de configurer un placement répété du masque.
Il est ainsi possible de texturer une grande image avec un petit masque a motif recurrent
Modifié
filtres/images_transforme.php
==============================
Par Cerdic, le 7 janvier 2025 à 18h47min :
fix: quand filtres_image_process_imagick_dist() ou filtres_image_process_convert_dist() sont appelée avec un argument true elles font un test extensif des extensions supportées en entrée et en sortie et stockent le résultat dans des meta pour pouvoir répondre rapidement le reste du temps
Ajouté
images/test.avif
Modifié
filtres/image_process/convert.php
filtres/image_process/imagick.php