GIMP 2.10.22 : consolidation des formats
-
GIMP 2.10.22 est sorti le 4 octobre dernier. Le cœur du logiciel ne connaît pas de bouleversements avec cette nouvelle version ; en revanche, cette sortie se démarque par diverses contributions portant sur les formats d’image. Voici les quelques nouveautés marquantes :
- nouvelle prise en charge des images AVIF ;
- amélioration de la prise en charge des fichiers HEIC et PSP ;
- amélioration de l’exportation multicalque au format TIFF ;
- meilleur traitement de la métadonnée EXIF « Orientation » ;
- nouvelle option « échantillonner sur tous les calques » pour les outils des opérations GEGL.
Le détail se trouve dans la seconde partie de la dépêche.
« L’apprentissage de Wilber ne s’arrête jamais ! », par Aryeom, Creative Commons By‑SA 4.0
- lien nᵒ 1 : Annonce et notes de version
- lien nᵒ 2 : Télécharger GIMP 2.10.22
- lien nᵒ 3 : Dépêche précédente sur LinuxFr.org, pour la version 2.10.20
- lien nᵒ 4 : Page de donation
- lien nᵒ 5 : Dépôt de source et suivi de bogues
- lien nᵒ 6 : Projet ZeMarmot (dont fait partie l’auteur de l’article, développeur majeur de GIMP)
Sommaire
- Améliorations
- Réglages par défaut
- Débogage
- L’écosystème GIMP
- Disponibilité de binaires macOS
- Contributeurs
- Et ensuite ?
Améliorations
Formats de fichier
Le point fort de cette version est clairement les contributions sur les greffons de format de fichier.
HEIF : prise en charge améliorée de HEIC et ajout de l’AVIF
AVIF est la variante HEIF qui utilise la compression AV1 (tandis que le format HEIF « de référence » utilise HEVC). Ce format d’encodage vidéo, développé par l’organisation Alliance for Open Media, était grandement attendu car ouvert et libre de droits.
AVIF est déjà pris en charge sur le Web par Firefox (à titre expérimental, en activant
image.avif.enabled
dansabout:config
), Chrome et Opera, ce qui en fait un sérieux prétendant parmi les formats d’images Web.AVIF est désormais pris en charge par GIMP, à l’importation et à l’exportation. Qui plus est, les fichiers HEIF (AVIF et HEIC) peuvent maintenant être importés et exportés en haute précision de couleurs (10 et 12 bits par canal de couleur).
Prise en charge d’AVIF et de la haute précision des couleurs pour AVIF/HEIF, de même que l’importation des profils NCLX et des métadonnées.
Enfin, les profils de couleur NCLX et les métadonnées sont à présent correctement importés.
Ces améliorations proviennent toutes des géniales contributions de Daniel Novomesky.
PSP
Le greffon de lecture des fichiers PSP (Paint Shop Pro) a reçu de nombreuses corrections de bogues et améliorations. Les calques matriciels des images PSP sur la version 6 sont désormais pris en charge, ainsi que les images 16 bits en nombre entier, celles en niveaux de gris et en couleurs indexées.
De plus, les modes de fusion PSP sont désormais mieux convertis en modes de calque GIMP pour un rendu correct.
Le module d’importation est également beaucoup plus robuste et est même capable de corriger les erreurs de certains fichiers qui peuvent avoir été mal exportés par un logiciel tiers. Il gère également mieux certains cas particuliers comme les noms de calques de longueur nulle.
Toutes ces améliorations ont été apportées par Jacob Boerema, un des plus récents contributeurs clés de GIMP.
TIFF
L’exportation TIFF multi‑calque a été améliorée en permettant de recadrer les calques aux limites de l’image dans l’image exportée. En effet, TIFF n’a pas de concept de limites d’image globale, seulement des limites de calque. Par conséquent, le recadrage des calques est le seul moyen d’appliquer les limites de l’image.
Évidemment, vous ne souhaitez peut‑être pas ce recadrage, il est possible que vous vouliez obtenir des calques de différentes tailles. C’est pourquoi la fonction est disponible en tant que nouvelle case optionnelle « Recadrer les calques en fonction des limites de l’image » dans la boîte de dialogue d’exportation.
Il y a eu d’autres corrections de bogues et améliorations dans le greffon TIFF.
BMP, DDS, JPEG, WebP, XPM…
D’autres prises en charge de formats de fichier ont été améliorées. En particulier :
- BMP inclut désormais systématiquement des masques de couleur lors de l’exportation de BMP avec des informations d’espace colorimétrique, comme l’exige la spécification
BITMAPV5HEADER
; - l’importation DDS est maintenant un peu plus permissive, permettant de charger certains fichiers avec des signaux d’en‑tête invalides concernant la compression, alors qu’il est possible de connaître la bonne compression à partir d’autres signaux — cela permet de récupérer des fichiers DDS invalides exportés par d’autres logiciels ;
- la détection des formats JPEG et WebP est améliorée ;
- XPM n’exporte plus de couleur « Aucune » (transparente) lorsqu’elle est inutilisée, l’exportation d’une couleur inutilisée n’était pas un bogue en soi mais n’était pas très bien gérée par certains logiciels tiers.
Meilleure gestion de la métadonnée EXIF « Orientation »
Lorsqu’une image avec l’étiquette « Orientation » est importée, GIMP propose de faire pivoter l’image. Dans la précédente version, en cas de refus, l’étiquette était conservée, y compris à l’exportation. Ainsi, à l’ouverture dans un autre logiciel, la rotation non voulue pouvait s’appliquer.
Désormais, l’étiquette « Orientation » est supprimée, que la rotation d’image ait été acceptée ou non. On aura alors le même rendu aussi bien dans GIMP que n’importe où ailleurs, après exportation.
« Échantillonner sur tous les calques » dans l’outil d’action GEGL
Lorsque certains filtres ont une propriété de couleur, leur boîte de dialogue expose généralement un bouton permettant de choisir une couleur directement sur le canevas. Jusqu’à présent, on ne pouvait choisir que dans le calque actif (celui que vous éditiez).
Tous les filtres implémentés en tant qu’opérations GEGL affichent désormais une case à cocher « Échantillonner sur tous les calques » dans la fenêtre ancrable des options de l’outil (juste en dessous de l’option « Moyenne du voisinage »). Cela permet de choisir des couleurs visibles lorsque cela est nécessaire.
La nouvelle option « Échantillonner sur tous les calques » permet de choisir les couleurs visibles à l’écran le cas échéant, par exemple ici avec l’opération « Coloriser ».
Greffon Spyrogimp
Spyrogimp, le greffon officiel de dessin de motifs « spirographiques » (cf. Spirographe), fonctionne maintenant aussi avec des images en niveaux de gris et ne remplit plus autant qu’avant l’historique d’annulation.
Améliorée de la conversion en couleurs indexées
C’est une fonctionnalité arrivée avec GIMP 2.10.20, mais nous avions oublié de la mentionner dans les précédentes notes de version. Découvrons donc ces améliorations ici.
La conversion en image indexée utilise un algorithme de coupure médiane pour obtenir une palette de couleurs adaptée à l’image. Un tel algorithme calcule chaque index à utiliser comme moyenne des couleurs dans une boîte 3D dans un espace de couleurs, de telle façon que la valeur résultante s’éloigne des extrêmes.
Cela rend quasi impossible l’obtention de blancs et noirs purs, même si l’image originale contient ces couleurs, par exemple des numérisations de documents imprimés ou des dessins techniques.
On corrige maintenant la dérive en considérant que la couleur la plus blanche est du blanc et que la plus noire est du noir, si la couleur calculée est suffisamment proche du blanc ou du noir et si l’image originale contient déjà du blanc ou du noir pur.
L’image de gauche est l’image originale en RVB, convertie en image indexée de six couleurs avec GIMP 2.10.18 (centre) et GIMP 2.10.20, ou plus récent (droite).
Notez que la palette optimale à deux couleurs est un cas particulier qui ne bénéficie pas de cet algorithme modifié puisque GIMP fournit déjà une option dédiée « Utiliser une palette noir et blanc (1 bit) » qui fait la même chose.
Réglages par défaut
L’option « échantillonnage sur tous les calques » est dorénavant activée par défaut pour le sélecteur par couleur
Suite à un petit sondage sur les réseaux sociaux (qui a obtenu 174 réponses), l’option « échantillonnage sur tous les calques » est maintenant activée par défaut. L’idée derrière ce changement est de simplifier l’expérience des débutants en leur permettant de sélectionner les couleurs qu’ils voient plutôt que celles du calque actif.
Cette décision a évidemment peu d’impact pour les utilisateurs avancés qui continueront à activer et à désactiver cette option, car les deux modes sont utiles. Elle ne modifie rien sous le capot.
« Matting Levin » devient le moteur d’extraction de premier plan par défaut
Pour ses capacités à mieux isoler un sujet en premier plan dans la plupart des situations, cet algorithme est maintenant celui proposé par défaut.
Débogage
Le tableau de bord a maintenant une nouvelle option pour enregistrer des journaux de performance progressifs, qui contiennent toute l’information sur tous les échantillons enregistrés. Cela permet d’enregistrer des journaux complets même en cas d’interruption, comme lorsque GIMP plante ou gèle en plein milieu.
Les journaux progressifs sont désactivés par défaut, car ils augmentent le coût des échantillonnages. Ils peuvent être activés dans le dialogue des journaux ou avec la variable d’environnement
$GIMP_PERFORMANCE_LOG_PROGRESSIVE
.De plus, les informations de débogage verbeuses (avec
gimp-2.10 -v
en ligne de commande, par exemple) affichent maintenant les informations Flatpak si pertinent ; comme la signature de compilation, la version, les extensions Flatpak installées, les permissions, etc. Cela pourra éventuellement aider à corriger certains problèmes.OpenCL est maintenant considéré comme expérimental
Depuis GIMP 2.10.0, plusieurs opérations GEGL ont des implémentations OpenCL, ce qui permet normalement un traitement plus rapide. Malheureusement, la situation n’est pas si idyllique, car nous n’avons pas assez de contributions pour améliorer notre code et les pilotes sont parfois problématiques eux‑mêmes.
Dans divers cas, activer OpenCL dans GIMP pouvait le rendre instable. Nous avons décidé que ce n’était plus acceptable et avons déplacé la fonctionnalité dans l’onglet « Aire de jeu » des préférences. Techniquement, cela signifie que la fonctionnalité est cachée à moins de lancer GIMP avec l’option
--show-playground
(ou d’utiliser une version de développement) : de cette façon, les utilisateurs sont clairement informés que c’est une fonctionnalité instable. Nous espérons pouvoir déplacer à nouveau cette fonctionnalité vers les préférences normales à l’avenir.Playground invisible par défaut
La page « Aire de jeu » dans les préférences n’est plus visible à moins que vous n’utilisiez une version de développement de GIMP, ou si vous démarrez une version stable en ligne de commandes avec l’option
--show-playground
.Malgré tout, si vous avez activé n’importe quelle fonctionnalité instable de l’« Aire de jeu », alors la page restera visible (ce qui permet de retrouver le réglage à nouveau si vous avez besoin de le désactiver).
L’écosystème GIMP
Les greffons et manuels dans le Flatpak GIMP
Notre Flatpak officiel a maintenant un point d’extension pour les greffons. Cela signifie que n’importe qui peut désormais empaqueter des greffons comme « extensions Flatpak » et contribuer au dépôt flathub. Grâce à Hubert Figuière, sept greffons GIMP très populaires sont d’ores et déjà disponibles pour les utilisateurs de Flatpak : BIMP, FocusBlur, Fourier, G’MIC, GimpLensfun, LiquidRescale et Resynthesizer.
La ligne de commande pour tous les installer d’un coup est (en supposant que GIMP est déjà installé avec Flatpak et que le dépôt flathub est bien configuré) :
flatpak install org.gimp.GIMP.Plugin.Resynthesizer org.gimp.GIMP.Plugin.LiquidRescale org.gimp.GIMP.Plugin.Lensfun org.gimp.GIMP.Plugin.GMic org.gimp.GIMP.Plugin.Fourier org.gimp.GIMP.Plugin.FocusBlur org.gimp.GIMP.Plugin.BIMP
Note : flathub ne propose pas encore de méthode pour découvrir les extensions d’un logiciel directement depuis son catalogue Web. La ligne de commande suivante peut être utilisée pour rechercher les greffons GIMP :
flatpak search org.gimp.GIMP.Plugin
De plus, le manuel utilisateur de GIMP sera maintenant installé par défaut en utilisant notre Flatpak, mais pas dans toutes les langues ; pour l’installer dans toutes les langues disponibles, il faut exécuter :
flatpak install --reinstall flathub org.gimp.GIMP.Manual
Les statistiques de flathub montrent près de 230 000 utilisateurs de notre paquet Flatpak (dont environ 100 000 qui mettent à jour GIMP dans les deux semaines après une publication), ce qui est plutôt pas mal pour ce qui n’est qu’un des nombreux formats de paquets pour GNU/Linux.
GEGL et babl
Comme chaque nouvelle version de GIMP, elle s’accompagne de sorties de babl (0.1.78, 0.1.80 et 0.1.82) et de GEGL (0.4.24 et 0.4.26), avec diverses corrections de bogues.
Il faut cependant noter que même si la version minimale requise par GIMP est babl 0.1.78, nous conseillons plutôt d’utiliser la dernière version si possible, c’est‑à‑dire babl 0.1.82. En effet, cette dernière gère des TRC plus complexes dans ICCv4, ce qui signifie que sans ces changements, le rendu de l’image après traitement de votre profil colorimétrique risque d’être incorrect s’il utilise ces paramètres.
Intégration continue
Le processus d’intégration continue de GIMP comprend maintenant une étape de vérification et produit donc sans la moindre intervention manuelle une archive bien testée.
La compilation en continu de la version en développement (future GIMP 3) pour Windows existait déjà depuis GIMP 2.10.18, mais l’archive à télécharger était énorme et contenait nombre de fichiers qui n’avaient qu’un intérêt transitoire durant la compilation ; il fallait aussi qu’un script de préparation soit lancé au premier lancement. Nous avons maintenant mis en place un processus d’intégration continue amélioré qui produit une archive plus légère, sans script de lancement et (on l’espère) utilisable. Si ce n’est pas le cas, faites un rapport — ou mieux, envoyez‑nous des correctifs !
L’idée vient du projet Siril (logiciel libre de traitement des images astronomiques), après que nous les avons aidés à mettre en place une intégration continue avec compilation croisée similaire à la nôtre, à l’aide de crossroad. C’est un bel exemple d’échange entre des projets libres, dans lequel un bout de code va d’un projet à un autre, où il est amélioré, puis revient vers sa source, en mieux ! 🥳
Cela sera très utile quand on demandera aux gens de tester la version de développement, car beaucoup de bogues sont corrigés dessus (souvent simplement parce que cette version se base sur GTK 3 qui corrige certains problèmes, alors que GTK 2 n’est plus maintenue et stagne). Les liens suivants renverront toujours la dernière compilation réussie de la version de développement :
- dernier build de développement de GIMP pour Windows 64 bits ;
- dernier build de développement de GIMP pour Windows 32 bits.
Note 1 — Les binaires de test servent seulement à tester, comme l’indiquent bien leurs noms. Ils n’ont pas été vérifiés manuellement, s’appuient sur du code en cours de développement et notre système de compilation automatique est lui‑même encore un peu jeune, donc il peut y avoir des bogues qui ne se voient que là. Ne les utilisez pas en production !
Note 2 — Il y a toujours plusieurs problèmes connus comme le manque de l’introspection GObject, qui fait que les greffons en Python 3, JavaScript, Lua ou Vala ne fonctionneront pas (encore) dans les builds du CI Windows.
Note 3 — Ces binaires ne sont pas fournis avec un installateur ou une bonne intégration au bureau (p. ex., pas de raccourcis dans les menus) : décompressez l’archive et double‑cliquez simplement sur les fichiers
gimp.cmd
ougimp-2.99.exe
.Ces changements font tous partie d’un travail en cours plus global pour améliorer le test du code durant le développement et automatiser à terme la procédure de publication pour qu’elle soit plus rapide, plus facile et plus sûre.
Disponibilité de binaires macOS
Nous n’avons malheureusement pas de bonnes nouvelles pour les utilisateurs de macOS pour le moment : le contributeur qui avait mis en place des compilations d’intégration continue pour des versions macOS et qui travaillait sur divers bogues spécifiques à macOS dans GTK est toujours indisponible. Jusqu’à maintenant, aucun autre contributeur ne s’est avancé pour combler ce vide. Si vous voulez nous aider, merci de nous contacter sur le canal IRC des développeurs #gimp ; ou sur la liste de discussion gimp-developer@.
Contributeurs
Les contributeurs pour cette version sont : Daniel Novomesky, David Russo, Elad Shahar, Ell, Jacob Boerema, Jehan, Liam Quin, Michael Natterer, Peter Oliver, luz.paz, Sabri Ünal, Sebastian Rasmussen, Simon McVittie, space pudim et Øyvind Kolås.
Traducteurs : Alan Mortensen, Alexandre Prokoudine, Anders Jonsson, Andika Triwidada, Asier Sarasua Garmendia, Baurzhan Muftakhidinov, Boyuan Yang, Christian Kirbach, Daniel Mustieles, Jordi Mas, Julien Hardelin, Marco Ciampa, Milo Ivir, Piotr Drąg, Rodrigo Lledó, Sabri Ünal, sicklylife, Stephan Woidowski, Tim Sabsch et Yuri Chornoivan.
Nous remercions aussi lillolollo, nmat et Michael Schumacher pour le tri dans les rapports de bogue, et Julien Hardelin pour la mise à jour du manuel de l’utilisateur.
Et ensuite ?
Pendant la même période, un travail spécifique sur la version de développement (future GIMP 3.0) a continué, notamment :
- le travail continue sur la sélection multiple de calques ;
- Plusieurs améliorations de l’API (interface de programmation pour les greffons) :
- les fonctions
PDB
peuvent être appelées plus facilement d’un greffon à l’autre dans les liaisons de largage, - la rotation d’image à l’importation est maintenant gérée par GIMP lui‑même (similairement à l’importation des profils de couleur) et vient avec une nouvelle configuration de « Politique de Rotation » dans les
Préférences
, - la bibliothèque
GimpUI
générée par GObject Introspection retire le préfixegimp_ui
des fonctions (par exemplegimp_ui_init()
devientGimpUi.init()
, introspecté, plutôt queGimpUi.ui_init()
), - amélioration de la liaison (binding) Vala,
- nouveau concept de « synchronisation d’arguments » dans la classe
GimpProcedure
afin que les arguments de procédures se synchronisent avec un parasite d’image du même nom ;
- les fonctions
- enfin du nouveau dans la correction de bogues pour Windows, par exemple le chargement de thèmes CSS est enfin réparé ;
- le greffon
Twain
pour Windows a été porté à l’API v3 ; il s’agissait du dernier greffon C qui n’était pas encore porté, ce qui signifie maintenant que tous les greffons officiels sont dans un état au minimum utilisable (même si pas forcément dans la dernière version de l’API qui évolue régulièrement), ce qui est une étape importante ; - quelques améliorations dans la gestion des petits écrans (ce qui est ironiquement devenu davantage un problème avec l’élargissement HiDPI activé sur des écrans de résolution intermédiaire) ;
- l’ancienne API Python 2 spécifique (
pygimp
) a maintenant été complètement retirée du dépôt de source, et tous les greffons Python sont maintenant portés à Python 3 et la nouvelle API de GIMP 3 (j’ai démarré ce travail, il y a plus d’un an, et il s’achève enfin, avec beaucoup d’aide d’Elad Shahar), la nouvelle interface pour les greffons Python est ainsi générique et suit la même API que les autres langages pris en charge (C/C++, Python 3, Lua, Vala et JavaScript pour le moment) — c’est également une étape assez importante vers GIMP 3 ; - la chasse aux bogues liés à Wayland continue (mais ce n’est pas fini !) ;
- le style graphique du widget
GimpSpinScale
est amélioré et il n’est plus possible de configurer GIMP pour retrouver l’ancien style non compact (contrairement à GIMP 2.10.x) ; - l’utilisabilité du dialogue de « Périphériques d’entrée » a été améliorée.
L’interface utilisateur est maintenant disponible dans deux langues de plus dans la branche de développement (les premières nouvelles langues depuis l’ajout du marathi dans GIMP 2.10.6) : le kabyle et le sorani. Notez néanmoins que ces deux traductions supplémentaires ne sont pas encore présentes dans la série 2.10. Avec celles‑ci, GIMP sera disponible dans quatre‑vingt‐trois langues. C’est une bonne opportunité de rappeler que les traducteurs font un travail formidable.
Avec ce nouveau format de fichiers (AVIF), diverses améliorations majeures des formats de fichiers et de nouveaux langages pour les greffons, notre petit Wilber se montre très studieux ces derniers temps, et apprend beaucoup de choses !
Pour finir, merci de ne pas oublier que vous pouvez donner au projet ou financer personnellement plusieurs développeurs GIMP : c’est une façon de contribuer et accélérer le développement de GIMP.
Parmi les développeurs de GIMP, vous trouverez notamment le projet ZeMarmot (patreon) (aussi présent sur Liberapay et Tipeee) que j’ai cofondé et qui est de nos jours l’un des contributeurs majeurs de GIMP (même le principal en 2020). Chaque aide compte pour nous permettre de continuer à développer GIMP !Télécharger ce contenu au format EPUB
Commentaires : voir le flux Atom ouvrir dans le navigateur
https://linuxfr.org/news/gimp-2-10-22-consolidation-des-formats
Sauf mention contraire, le site est placé sous double licence Creative Commons BY-SA et GNU Free Documentation License propulsé par NodeBB