URL: https://linuxfr.org/news/gimp-2-10-22-consolidation-des-formats Title: GIMP 2.10.22: consolidation des formats Authors: Jehan bolikahult, Snark, Yves Bourguignon, bobble bubble, theojouedubanjo, ted, BAud, Bruno Ethvignot, Benoît Sibaud et palm123 Date: 2020-10-01T23:31:34+02:00 License: CC By-SA Tags: gimp, avif, heic, psp, tiff, exif et gegl Score: 6 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 ; par contre 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](https://en.wikipedia.org/wiki/AV1#AV1_Image_File_Format_(AVIF)) * amélioration de la prise en charge des fichiers [HEIC](https://fr.wikipedia.org/wiki/High_Efficiency_Image_File_Format) et [PSP](https://fr.wikipedia.org/wiki/Corel_Paint_Shop_Pro) * amélioration de l’export multi-calques au format [TIFF](https://fr.wikipedia.org/wiki/Tagged_Image_File_Format) * meilleur traitement de la métadonnée [EXIF](https://fr.wikipedia.org/wiki/Exchangeable_image_file_format) « 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. ![Wilber Learning never stops! / Wilber and co. comics strip “Wilber Learning never Stops!” by Aryeom, Creative Commons by-sa 4.0](https://www.gimp.org/news/2020/10/07/gimp-2-10-22-released/202010-wilber-and-co.jpg) *“L’apprentissage de Wilber ne s’arrête jamais!” par [Aryeom](https://film.zemarmot.net/), Creative Commons by-sa 4.0* ---- [Annonce et notes de version](https://www.gimp.org/news/2020/10/07/gimp-2-10-22-released/) [Télécharger GIMP 2.10.22](https://www.gimp.org/downloads/) [Dépêche précédente sur LinuxFr.org, pour la versions 2.10.20](https://linuxfr.org/news/gimp-2-10-20-a-votre-sante) [Page de donation](https://www.gimp.org/donating/) [Dépôt de source et suivi de bugs](https://gitlab.gnome.org/GNOME/gimp/) [Projet ZeMarmot (dont fait partie l'auteur de l'article, développeur majeur de GIMP)](https://film.zemarmot.net/fr/) ---- # 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](https://fr.wikipedia.org/wiki/AV1_(codec)) (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``` dans ```about: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’import et à l’export. 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). ![AVIF est pris en charge](https://www.gimp.org/news/2020/10/07/gimp-2-10-22-released/heif-avif-high-bit-depth.jpg) _Prise en charge d’AVIF et de la haute précision des couleurs pour AVIF/HEIF, de même que l’import 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-calques 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’export. 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 export. ## « É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. ![Échantillonner sur tous les calques dans les opérations GEGL](https://www.gimp.org/news/2020/10/07/gimp-2-10-22-released/sample-merged-gegl-tool-options.jpg) *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 », fonctionne maintenant aussi avec des images en niveaux de gris et ne remplit plus autant qu’avant l’historique d’annulation. ## Conversion en couleurs indexées améliorée 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 boite 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. ![Comparaison de la création d’une palette](https://www.gimp.org/news/2020/10/07/gimp-2-10-22-released/gimp-palette-conversion.jpg) _L’image de gauche est l’image originale en RVB, convertie en image indexée de 6 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](https://docs.gimp.org/2.10/fr/gimp-tool-foreground-select.html) 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 « Extension 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 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](http://gegl.org/babl/) (0.1.78, 0.1.80 et 0.1.82) et de [GEGL](http://gegl.org/) (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](https://linuxfr.org/news/gimp-2-10-14-et-2-10-18-sans-limites#toc-compilation-pour-windows-en-int%C3%A9gration-continue), 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 patchs ! L’idée vient du projet [Siril](https://www.siril.org/) (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](https://pypi.org/project/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 GTK3 qui corrige certains problèmes, alors que GTK2 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-bit](https://gitlab.gnome.org/GNOME/gimp/-/jobs/artifacts/master/download?job=win64-nightly) « » [Dernier *build* de développement de GIMP pour Windows 32-bit](https://gitlab.gnome.org/GNOME/gimp/-/jobs/artifacts/master/download?job=win32-nightly) « *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 l’introspection GObject manquante, 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 installeur ou une bonne intégration au bureau (par exemple pas de raccourci dans les menus) : décompressez l’archive et double-cliquez simplement sur les fichiers `gimp.cmd` ou `gimp-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 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](https://www.gimp.org/irc.html) des développeurs `#gimp` ; ou sur la [liste de discussion](https://www.gimp.org/mail_lists.html) 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](https://www.patreon.com/posts/report-on-for-in-37266151) * 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 *binding*s de largage; - la rotation d’image à l’importation est maintenant géré par GIMP 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éfixe `gimp_ui` des fonctions (par exemple `gimp_ui_init()` devient `GimpUi.init()`, introspecté, plutôt que `GimpUi.ui_init()`); - Amélioration du *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; * Enfin du nouveau dans la correction de bugs 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 bugs liés à Wayland](https://www.patreon.com/posts/gimp-dev-report-39631718) 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](https://linuxfr.org/news/gimp-2-10-14-et-2-10-18-sans-limites#toc-curseurs-compacts)). * 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](https://linuxfr.org/news/gimp-2-10-6-rien-ne-nous-arrete#toc-nouvelle-localisation-marathi)) : 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 83 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](https://www.gimp.org/donating/) 🙏 : 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)](https://www.patreon.com/zemarmot) (aussi présent sur [Liberapay](https://liberapay.com/ZeMarmot/) et [Tipeee](https://fr.tipeee.com/zemarmot)) que j’ai co-fondé et qui est de nos jours l’un des [contributeurs majeurs de GIMP](https://www.openhub.net/p/gimp/contributors/summary) (même le principal en 2020). Chaque aide compte pour [nous permettre de continuer à développer GIMP](https://www.patreon.com/posts/what-remains-to-40087754)!