spip/images | 20 commits
Par Cerdic, le 7 janvier 2025 à 20h57min :
fix: passer par image intervention pour filtres_image_process_imagick_vignette_dist qui doit gerer proprement les exifs par lui meme
Modifié
filtres/image_process/imagick.php
Détails : fix: passer par image intervention pour... (9edbee90) · Validations · spip / images · GitLab
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
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
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
feat: un filtre |image_supprime_exif qui permet de supprimer les exif d’une image (y compris exif orientation donc)
Modifié
filtres/images_transforme.php
images_fonctions.php
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
fix: supprimer l’orientation imagick issue de exif quand on charge une image via intervention, pour avoir un comportement homogene gd2/imagick
Modifié
filtres/images_lib.php
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
fix: optimiser |image_oriente_selon_exif en ne faisant rien egalement si il y a une info exif qui dit qu’on est dans le bon sens + declarer le filtre image
Modifié
filtres/images_transforme.php
images_fonctions.php
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
refactor: utiliser image intervention pour le calcul pixel a pixel de la version precise de |image_nb. C’est sensiblement plus lent que l’implémentation pure GD2, mais ça permet de respecter les profils si on utilise Imagick et d’homogénéiser le code. C’est normalement un usage de niche…
Modifié
filtres/images_lib.php
filtres/images_transforme.php
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
fix: gerer les exceptions à la lecture de l’image via Imagick (format non supporté) ou lors de l’execution du filtre
Modifié
filtres/images_transforme.php
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
fix: catcher les exceptions à la lecture de l’image, et en cas d’echec retourner null. Sur les fonctions appelantes prevoir le cas null, et interrompre le traitement du filtre
Modifié
filtres/images_lib.php
filtres/images_transforme.php
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
fix: output sur image_flou ne se faisait pas en cas d’image SVG
Modifié
filtres/images_transforme.php
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
fix: apres une rotation avec imagick il faut reset la page sinon les crops a suivre se font par rapport à une mauvaise référence cf PHP: Imagick::rotateImage - Manual
Modifié
filtres/images_transforme.php
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
refactor: utiliser image intervention pour |couleur_extraire
Modifié
filtres/images_lib.php
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
refactor: utiliser Image Intervention pour image_oriente_selon_exif() + desactiver l’orientation automartique par Intervention lors du chargement de l’image
Modifié
filtres/images_lib.php
filtres/images_transforme.php
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
chores: variables inutiles
Modifié
filtres/images_transforme.php
Détails : chores: variables inutiles (0d310e5d) · Validations · spip / images · GitLab
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
refactor: simplification du decodage de la position du masque, utiliser image_passe_partout plutot que calculs+image_reduire et optimisation perf en evitant d’agrandir le masque à la taille de l’image quand on veut le positionner. Il suffit dans ce cas de faire passer le offset_x et offset_y de lecture du masque et d’avoir un pixel par defaut là ou le masque n’est pas defini
Modifié
filtres/images_transforme.php
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
refactor: filtre |image_masque utilise image intervention et fonctionne avec GD2 et Imagick
Modifié
filtres/images_transforme.php
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
refactor: filtre image_masque, renommage de variables, preparation du masque dans une fonction, import des gifs dans une fonction, bugfix == au lieu de = (du coup on accepte explicitement center comme valeur valide pour vertical-align)
Modifié
filtres/images_lib.php
filtres/images_transforme.php
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
refactor: le filtre |image_renforcement fonctionne avec Imagick comme avec GD2
Modifié
filtres/images_transforme.php
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
docs: reformulation plus claire pour |image_sepia
Modifié
filtres/images_transforme.php
Détails : docs: reformulation plus claire pour |image_sepia (0307bf49) · Validations · spip / images · GitLab
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
refactor: le filtre |image_sepia a une implementation en GD et en Imagick, pour ce cas particulier on est obligé de faire une tambouille propre à chaque lib pour avoir un résultat satisfaisant dans chaque cas, même si pas tout a fait equivalent. Avec l’option legacy=1 on fait un calcul pixel a pixel identique dans les 2 cas cependant, si on veut exactement le meme resultat dans tous les cas (mais c’est plus lent)
Modifié
filtres/images_transforme.php
==============================
Par Cerdic, le 7 janvier 2025 à 20h57min :
refactor: fonction |image_sepia
Modifié
filtres/images_transforme.php
Détails : refactor: fonction |image_sepia (3953e9ee) · Validations · spip / images · GitLab