Sommaire
Cette dĂ©pĂȘche prĂ©sente les changements les plus notables et les plus visibles. En particulier, elle ne contient pas de liste exhaustive des correctifs de bogues ou des amĂ©liorations un peu moins importantes. Pour une liste plus complĂšte des changements, nous vous invitons Ă consulter le fichier NEWS ou Ă jeter un coup dâĆil Ă l'historique du dĂ©pĂŽt Git.
L'invasion de l'espace (des couleurs) !
Nous avons travaillĂ© dur sur le projet Space Invasion, qui est â comme vous vous en rappelez peut-ĂȘtre â le nom de code que nous avons donnĂ© au projet visant Ă rendre GIMP plus correct en ce qui concerne les couleurs.
Ces derniers temps, nous avons réalisé le portage des anciennes structures de couleurs utilisées en interne (GimpRGB
, GimpCMYK
, GimpHSV
âŠ) dont nous nous servions pour stocker les informations de couleurs vers GeglColor
. Cet objet générique peut contenir n'importe quelle donnée de couleur, quel que soit le modÚle colorimétrique, la précision ou l'espace, du moment que ceux-ci sont pris en charge par babl, notre moteur pour l'encodage des pixels.
En ce qui concerne la justesse des couleurs, cela signifie que nous ferons maintenant les conversions de couleurs uniquement si cela est nĂ©cessaire (conversions Ă la derniĂšre minute), ce qui permettra de ne pas perdre d'information lorsque cela peut ĂȘtre Ă©vitĂ©. Par exemple, imaginons que vous utilisiez la pipette Ă couleurs sur une image : si nous convertissions cette couleur vers un format intermĂ©diaire avant de l'utiliser sur une autre image (qui peut avoir le mĂȘme format de couleurs ou un format diffĂ©rent), deux conversions auraient lieu. Cela augmente les possibilitĂ©s de perte de prĂ©cision. Ce problĂšme est encore plus flagrant si les formats d'entrĂ©e et de sortie sont les mĂȘmes (autrement dit, lorsqu'aucune conversion n'est nĂ©cessaire). Et cela sera encore plus problĂ©matique lorsque le modĂšle CMJN sera pris en charge nativement (nous voulons Ă©viter Ă tout prix de faire un aller-retour entre un format intermĂ©diaire et le CMJN, qui n'a pas de relation bijective avec la plupart des autres modĂšles de couleurs, mĂȘme en travaillant sans bornes et en ignorant les problĂšmes de prĂ©cision).
DĂ©finition d'un espace non bornĂ© (ajout par rapport Ă la dĂ©pĂȘche originelle) : lorsque la prĂ©cision est entiĂšre, l'espace est toujours bornĂ© (par exemple [0-255]
en 8-bit). Par contre, en flottant, oĂč l'espace de travail standard est [0, 1]
, on peut dĂ©cider d'accepter les valeurs nĂ©gatives et supĂ©rieures Ă 1. Cela rend les conversions entre beaucoup d'espaces de couleurs bijectives, aux erreurs de prĂ©cisions prĂšs. Notamment, les conversions entre deux espaces RVB, ou mĂȘme un espace RVB et divers autres modĂšles, deviennent bijectives. Ce n'est pas le cas entre RVB et CMJN, mĂȘme en espace de couleurs infini.
Nous sommes également en train de migrer le stockage des données de couleur vers ce type d'objet générique. Cela signifie entre autres que les palettes de couleurs pourront comporter des couleurs au format CMJN, CIELAB ou bien encore dans tout autre modÚle pris en charge (et pas seulement ces couleurs aprÚs une étape de conversion vers le sRVB non borné - « unbounded sRGB »).
Une conséquence pour la maintenance logicielle est qu'il sera beaucoup plus facile de gérer les conversions de couleurs au sein de notre code, étant donné que cette structure comprend à la fois les données et leur « signification ». Cela rend la gestion des couleurs beaucoup moins susceptible d'introduire des bogues par rapport à l'approche précédente, qui consistait à faire suivre les deux types d'information séparément.
Finalement, nous travaillons Ă faire apparaĂźtre l'information concernant l'espace de couleurs Ă plusieurs endroits de l'interface oĂč cela est pertinent, par exemple lorsque des donnĂ©es RVB, CMJN, TSL ou TSV sont affichĂ©es ou peuvent ĂȘtre choisies. Les valeurs brutes dans ces modĂšles de couleurs en l'absence de la connaissance de l'espace de couleurs associĂ© n'ont pratiquement aucun sens. L'affichage dans l'interface de valeurs RVB sans autre prĂ©cision est un reliquat du passĂ©, lorsque cela signifait le plus souvent sRVB. Cela n'est plus vrai dans un contexte graphique moderne et l'interface devrait ĂȘtre claire Ă ce sujet.
La vidéo ci-dessous montre quelques aspects de ce travail sur l'interface, par exemple le fait que les modÚles RVB, TSV ou CMJN affichent à tout instant l'espace de couleurs dans lequel les valeurs sont considérées (ce qui trÚs souvent correspond au nom du profil ICC). Cela est déjà fait pour la pipette à couleurs, les échantillons de couleurs, l'ancrable des couleurs de premier/d'arriÚre plan, la boßte de dialogue « Changer la couleur de premier/d'arriÚre plan », ainsi qu'à d'autres endroits.
Non seulement cela, mais lorsque les gens sĂ©lectionnent un profil dâĂ©preuve sur Ă©cran et activent l'Ă©preuve sur Ă©cran (par exemple grĂące Ă la nouvelle bascule de simulation qui a Ă©tĂ© ajoutĂ©e dans GIMP 2.99.12), nous afficherons Ă©galement non seulement la zone hors gamme de l'espace colorimĂ©trique de l'image, mais Ă©galement celle de l'espace dâĂ©preuve.

Invasion de l'espace dans l'interface - GIMP 2.99.18 (cliquez sur l'image pour voir la vidéo sur le compte Peertube de GIMP)
Avertissement trĂšs important : il s'agit encore une fois d'un portage Ă©norme dans notre base de code, ce qui a impactĂ© littĂ©ralement des milliers de lignes de code. Ce travail est inachevĂ© mais il devra ĂȘtre terminĂ© avant la premiĂšre version candidate. Des instabilitĂ©s ou des bugs sont Ă prĂ©voir dans cette mise Ă jour donc si vous rencontrez un problĂšme, nous recommandons de le rapporter.
Amélioration des algorithmes de couleur
Ăyvind KolĂ„s a amĂ©liorĂ© quelques algorithmes internes :
- Les pixels achromatiques de l'outil Teinte-Saturation sont désormais un cas spécial afin que les pixels en niveaux de gris (saturation de 0) ne soient modifiés que par le réglage principal, pas par le réglage rouge.
- Les dĂ©gradĂ©s en niveaux de gris restent dĂ©sormais achromatiques mĂȘme avec "Tramage" cochĂ© dans l'outil DĂ©gradĂ©.
Au fur et à mesure que le projet space invasion avance, obtenir des résultats cohérents devient plus facile dans divers algorithmes liés aux couleurs, nous permettant ainsi de découvrir rapidement les problÚmes et de les résoudre.
Ădition non-destructive, premiĂšre mouture
Un domaine dans lequel nous sommes « en avance sur le planning » est l'Ă©dition non destructive, qui Ă©tait trĂšs demandĂ©e ! Les fondations de ces fonctionnalitĂ©s ont Ă©tĂ© mises en place par de nombreux dĂ©veloppeurs au cours de nombreuses annĂ©es, depuis l'introduction de GEGL dans GIMP. Bien qu'initialement prĂ©vue pour la feuille de route de la version 3.2, une premiĂšre implĂ©mentation a vu le jour en tant que continuation d'un projet Google Summer of Code. Si vous n'ĂȘtes pas familier avec ce terme, « Ă©dition non destructive » implique notamment que des effets de filtres tels qu'un effet de flou sont stockĂ©s sĂ©parĂ©ment des pixels du calque. Cela signifie que si vous dĂ©sirez plus tard modifier un rĂ©glage, rĂ©arranger ou mĂȘme retirer le filtre, vous pouvez le faire trĂšs facilement sans affecter le reste de l'image. Jusqu'Ă prĂ©sent, GIMP utilisait une procĂ©dure d'Ă©dition destructive oĂč les effets Ă©taient immĂ©diatement appliquĂ©s sur le calque, c'est donc un changement majeur !
Toute opĂ©ration GEGL munie d'une interface graphique est dĂ©sormais appliquĂ©e aux calques de maniĂšre non destructive. (Les effets non destructifs pour les masques de calques et les canaux sont prĂ©vus pour les versions ultĂ©rieures.) Cela inclut les greffons GEGL tiers et les opĂ©rations personnalisĂ©es crĂ©Ă©es avec notre outil GEGL Graph. Ces effets peuvent ĂȘtre sauvegardĂ©s et chargĂ©s via les fichiers de projet .xcf
, bien que toutes les propriétés GEGL ne soient pas encore prises en charge dans la version actuelle.
Une fois qu'un filtre a été appliqué, vous pouvez continuer à interagir avec lui en cliquant sur l'icÎne de filtre dans l'ancrable des calques. Cela ouvrira une boßte de dialogue montrant tous les filtres actuellement appliqués au calque. à partir de là , vous pouvez alterner l'état de visibilité du filtre, modifier ses réglages, réordonner les filtres et retirer les effets un à un. Vous pouvez aussi fusionner tous les filtres et les appliquer à l'image pour retrouver une procédure d'édition destructive.

Effets non destructifs - GIMP 2.99.18 (cliquez sur l'image pour voir la vidéo sur le compte Peertube de GIMP)
Notez bien que tout cela est seulement une premiĂšre implĂ©mentation, et beaucoup de travail reste Ă faire pour disposer d'une Ă©dition non destructive complĂšte et riche. Nous allons continuer Ă affiner les fonctionnalitĂ©s existantes pour la sortie de la version 3.0 en nous basant sur les tests et les retours des utilisateurs, et nous les dĂ©velopperons davantage par la suite. L'interface elle-mĂȘme ne correspond pas Ă notre vision idĂ©ale de cette fonctionnalitĂ©, et un premier jet de spĂ©cifications a Ă©tĂ© Ă©crit pour dĂ©finir un processus d'Ă©dition bien plus intĂ©grĂ©.
La capture d'Ă©cran ci-dessous est une maquette rĂ©alisĂ©e Ă partir de ces premiĂšres spĂ©cifications. Elle montre les effets de calque placĂ©s au sein de la liste principale des calques, partageant les mĂȘmes boutons « Ćil » et « cadenas », mais Ă©galement avec leurs propres masques faciles Ă Ă©diter :

Maquette des spécifications : les effets de calque sont visibles directement dans la liste des calques, avec leur propres masques
NĂ©anmoins, l'implĂ©mentation de cette nouvelle interface sera un dĂ©fi en elle-mĂȘme et nous avons donc dĂ©cidĂ© de la remettre Ă aprĂšs la sortie de GIMP 3 et de proposer cette premiĂšre mouture en premier lieu.
N'hésitez pas à partager vos opinions dans les forums de discussion et dans le suivi des incidents !
Amélioration de la prise en charge des polices de caractÚres
Idriss Fekir, un autre étudiant du GSoC 2023, a travaillé avec Liam Quinn, un développeur de longue date, sur l'amélioration de la prise en charge des polices de caractÚres par GIMP. Une grande partie de ce travail concerne le code interne de GIMP afin d'améliorer sa capacité à gérer les futures mises à jour de polices et de texte. Certains changements plus visibles sont par exemple :
- GIMP n'a plus besoin que les noms des polices de caractĂšres soient uniques pour pouvoir les distinguer les unes des autres. Cela signifie qu'il n'ajoutera plus « #1 », « #2 » et ainsi de suite, mais gardera Ă prĂ©sent les noms originaux dans la liste de sĂ©lection des polices. MalgrĂ© des noms apparemment identiques, deux polices avec le mĂȘme nom fonctionneront dĂ©sormais correctement.
- GIMP peut maintenant charger des polices avec des styles personnalisés (en contournant l'utilisation de Pango qui n'est pas capable de les charger).
- Nous pouvons Ă prĂ©sent charger davantage de types de polices qu'auparavant. Si jamais nous ne prenons pas encore en charge une police donnĂ©e (ou si elle est inexistante), nous sommes mieux Ă mĂȘme de le dĂ©tecter et nous pouvons nous replier sur une police par dĂ©faut. Cela permet d'amĂ©liorer la prise en charge d'un fichier .xcf crĂ©Ă© sur un autre ordinateur avec diffĂ©rentes polices disponibles.
- Sous Windows, nous forçons le moteur Pango à toujours utiliser l'anticrénelage. Cela augmente la lisibilité du texte des menus sous ce systÚme d'exploitation, en particulier lorsqu'un thÚme sombre est utilisé.
- Le code pour la sauvegarde au format XCF stocke désormais les informations concernant les polices de maniÚre bien plus précise, ce qui aide à éviter de charger une police incorrecte lors de la réouverture d'un fichier XCF.
- L'alignement du texte dans les calques de texte pour les langues écrites de la droite vers la gauche est maintenant plus cohérent avec la maniÚre dont cela fonctionne dans d'autres programmes (par exemple LibreOffice et Scribus).
Ces changements sont beaucoup moins voyants que certaines autres fonctionnalités et pourraient sembler moins importants, mais ils constituent en fait les fondations qui permettront d'avoir une gestion du texte bien plus fiable dans GIMP. Notre vision pour le futur est d'avoir une édition de texte plus simple tout en étant plus puissante et plus riche en fonctionnalités (en particulier les fonctionnalités OpenType qui sont quelques-unes des améliorations majeures que nous espérons ajouter un jour ou l'autre).
Expansion automatique des calques
Le troisiĂšme projet GSoC de l'Ă©tĂ© dernier par l'Ă©tudiant Shubham Daule a apportĂ© une fonctionnalitĂ© demandĂ©e depuis longtemps : l'expansion automatique de calques ! Les outils de peinture ont dĂ©sormais une option supplĂ©mentaire « Ătendre les calques ». Lorsque cette case est cochĂ©e, peindre au-delĂ des limites des calques les fera s'Ă©tendre automatiquement afin que vous n'ayez pas Ă gĂ©rer vous-mĂȘme la taille du calque. Si vous souhaitez Ă©tendre le calque au-delĂ de la taille actuelle du canevas, vous devrez Ă©galement cocher l'option « Afficher tout » dans le menu Affichage.

Calques à expansion automatique - GIMP 2.99.18 (cliquez sur l'image pour voir la vidéo sur le compte Peertube de GIMP)
L'option d'expansion des calques comporte Ă©galement des paramĂštres supplĂ©mentaires lorsqu'elle est sĂ©lectionnĂ©e. Vous pouvez dĂ©cider dans quelle mesure vous souhaitez que les limites du calque s'Ă©tendent chaque fois que le pinceau les atteint. Il existe Ă©galement des options pour spĂ©cifier comment les nouvelles zones du calque et du masque de calque doivent ĂȘtre remplies une fois Ă©tendues.
Nouvelles options d'alignement
Le nouveau contributeur mr. fantastic a développé deux nouvelles options pour aligner les calques sur le canevas. Avec « Snap to Bounding Boxes » (« Aligner sur les boßtes englobantes ») activé, des guides dynamiques s'afficheront désormais pour vous montrer quand le calque que vous déplacez est aligné avec le centre ou les cÎtés des autres. Le calque actif s'alignera également sur ces bordures pour vous aider à les organiser correctement. La deuxiÚme option, « Snap to Equidistance » (« Aligner à équidistance »), vous permet un alignement entre trois calques équidistants les uns des autres.

Nouvelles options d'alignement automatique - GIMP 2.99.18 (cliquez sur l'image pour voir la vidéo sur le compte Peertube de GIMP)
ThĂšmes
Nous avons continuĂ© Ă amĂ©liorer l'interface utilisateur et le style de cette version. Lâune des amĂ©liorations les plus importantes concernait la gestion des « fuites de thĂšmes systĂšme ». Il existe des styles qui n'ont pas Ă©tĂ© spĂ©cifiquement dĂ©finis dans nos thĂšmes, donnant ainsi l'opportunitĂ© aux rĂšgles de style du thĂšme systĂšme de "fuiter" de maniĂšre conflictuelle dans notre interface. Avec lâaide et les retours de plusieurs contributeurs et utilisateurs, nous avons beaucoup progressĂ© dans la dĂ©finition de ces styles afin que tous aient une expĂ©rience cohĂ©rente !
RĂ©cemment, Jehan a travaillĂ© sur la rĂ©organisation et la simplification de notre systĂšme de thĂšmes. Dans les versions de dĂ©veloppement prĂ©cĂ©dentes, nous avions cinq thĂšmes diffĂ©rents : Par DĂ©faut, Gris, SystĂšme, Plus Sombre et Compact (chacun avec des options claires et sombres). Ceux-ci ont Ă©tĂ© simplifiĂ©s dans le thĂšme SystĂšme et un seul thĂšme par dĂ©faut avec trois Ă©tats possibles : clair, foncĂ© et gris. De mĂȘme, nos quatre thĂšmes d'icĂŽnes distincts ont Ă©tĂ© condensĂ©s dans l'ensemble Legacy et un thĂšme d'icĂŽns par dĂ©faut avec des variantes couleur et symbolique. Nous pensons que ces changements rĂ©duiront la confusion des utilisateurs et leur permettront de trouver plus facilement leur apparence d'interface prĂ©fĂ©rĂ©e.
De plus, sous Windows, la barre de titre principale (et la plupart des barres de titre des boßtes de dialogue) s'ajuste désormais au mode clair ou sombre en fonction du thÚme sélectionné.
BoĂźte de dialogue de bienvenue
La boßte de dialogue de bienvenue a été étendue pour fournir un accÚs rapide à un certain nombre de fonctionnalités et d'options utiles. Elle comporte ainsi quatre nouvelles sections :
- Personnaliser : Plusieurs options de personnalisation nĂ©cessitent de fouiller dans la boĂźte de dialogue des PrĂ©fĂ©rences pour ĂȘtre modifiĂ©es. Ă prĂ©sent, vous pouvez facilement modifier les thĂšmes de couleurs et d'icĂŽnes, la langue et la taille de la police de l'interface utilisateur, ainsi que certains rĂ©glages en fonction du systĂšme d'exploitation.
- Créer : Cette section affiche les huit images que vous avez ouvertes en dernier et vous permet de les rouvrir rapidement. Des boutons pour créer une nouvelle image ou pour en charger une existante sont également présents. à l'instar d'autres programmes, vous pouvez demander à ce que cet écran apparaisse automatiquement au démarrage de GIMP pour un accÚs direct à ces fonctionnalités.
- Contribuer : Nous avons réuni ici quelques-unes des nombreuses façons dont vous pouvez participer au développement de GIMP. Cette section comporte des liens pour le signalement de bogues, pour écrire du code, pour aider aux traductions ou pour faire un don.
- Notes de version : Précédemment, le lien vers ces notes étaient affichées dans la moitié inférieure de la boßte de dialogue de bienvenue. à présent, nous avons un onglet entier dédié à ces notes pour une lecture plus aisée.
Formats de fichiers
Comme cela était déjà le cas avec les versions précédentes, nous avons amélioré la prise en charge de formats de fichiers déjà existants et nous avons ajouté la prise en charge de l'importation et de l'exportation pour de nouveaux formats.
DDS
Stayd, un nouveau contributeur, a travaillĂ© avec notre dĂ©veloppeur Jacob Boerema pour apporter de nombreuses amĂ©liorations au greffon DDS. Pour commencer, les fonctions d'importation ont Ă©tĂ© Ă©crites afin d'ĂȘtre plus simples et plus faciles Ă Ă©tendre dans le futur. Les mises Ă jour supplĂ©mentaires incluent Ă©galement :
- Le chargement d'images DDS RVBA 16 et 32 bits/canal est maintenant possible.
- Le filtre cubique Catmull-Rom a été ajouté pour la génération de mipmaps, et tous les calculs pour générer les mipmaps sont effectués avec une précision de 32 bits.
- Les images DDS aux formats R8G8, R16 et R16G16 peuvent maintenant Ă©galement ĂȘtre chargĂ©es.
- Une option pour renverser verticalement les images DDS lors de l'importation a été ajoutée pour faire écho à l'option d'exportation correspondante, étant donné que certaines images de jeux stockent leurs données de cette maniÚre.
GIF
Par le passé, écraser un fichier GIF à la sauvegarde (plutÎt que de l'exporter) le convertissait systématiquement en un fichier avec une seule image. Désormais nous vérifions lors du chargement si le fichier GIF est une animation, de maniÚre à également sauvegarder une animation lors de l'écrasement.
HEIF et JPEG-XL
Les deux greffons utilisent maintenant leurs bibliothÚques respectives (libheif et libjxl) pour le chargement des métadonnées. Cela nous a permis de retirer notre code maison chargé d'interpréter l'orientation des images et d'utiliser à la place les informations fournies par ces bibliothÚques.
OpenEXR
Le format OpenEXR permet aux canaux d'avoir des noms personnalisés, outre le type de couleur. Dans ce cas, nous considérons maintenant toute image à un seul canal avec un nom non conventionnel comme étant en niveaux de gris. Lors de l'importation, nous affichons une notification afin que les utilisateurs soient prévenus de cette conversion.
PDF
L'option d'exportation « Calques en tant que pages » fonctionne maintenant mĂȘme s'il y a un seul groupe de calques. Auparavant, cette option n'Ă©tait pas disponible car le greffon vĂ©rifiait seulement s'il y avait plus d'un « calque » sans examiner s'il s'agissait d'un groupe de calques avec de multiples sous-calques.
PNG
Les fragments de fichiers PNG qui sont « copiables sans risque » (« safe-to-copy chunks ») sont maintenant prĂ©servĂ©s lors de l'importation et inclus dans l'image exportĂ©e. Un autre souci qui existait lors de l'exportation de PNGs indexĂ©s avec transparence (et qui nous avait Ă©tĂ© souvent signalĂ©) a Ă©tĂ© rĂ©solu. DĂ©sormais les couleurs indexĂ©es devraient ĂȘtre affichĂ©es correctement aprĂšs exportation.
PSD
Jacob Boerema a poursuivi son travail d'amélioration du greffon PSD. En plus d'avoir résolu des bogues, par exemple dans l'ordre des calques lors de l'importation, il a aussi clarifié l'avertissement présenté lors de l'exportation et concernant la compatibilité des modes de calques entre GIMP et Photoshop.
PSP
Le greffon Paintshop Pro peut maintenant importer davantage de caractéristiques depuis un fichier projet, comme par exemple le profil de couleurs ICC, les guides, les grilles, et la sélection active lors de la sauvegarde. Les failles de sécurité ZDI-CAN-22096 et ZDI-CAN-22097 ont également été corrigées dans cette version.
Nouveaux formats d'image pris en charge : Farbfeld, Esm Software PIX, HEJ2
Nous avons rĂ©cemment ajoutĂ© la prise en charge de l'importation et de l'exportation pour le format Farbfeld, un format d'image sRVB conçu pour ĂȘtre facile Ă lire, Ă envoyer dans des pipes et Ă compresser avec des outils tiers.
Nous avons aussi ajouté la prise en charge de l'importation seule pour les nouveaux formats suivants :
-
Esm Software PIX : Un format JPEG modifié utilisé exclusivement par l'entreprise Esm Software pour stocker leurs images propres. Cela a été implementé en réponse à un signalement de bogue qui avait confondu ce format avec le format Alias PIX que nous prenions déjà en charge.
-
HEJ2 : Un ajout Ă notre greffon HEIF dĂ©jĂ existant fourni par Daniel NovomeskĂœ qui permet d'importer des images JPEG 2000 compressĂ©es.
Nouveau format de palette pris en charge : Swatchbooker
Swatchbooker est un programme libre de crĂ©ation et de conversion de palettes de couleurs qui prend en charge de nombreux formats. Bien que le programme lui-mĂȘme n'ait pas Ă©tĂ© mis Ă jour depuis de nombreuses annĂ©es, son format de palette propre .sbz
est le plus complet de tous ceux que nous prenons en charge actuellement. Parmi ses nombreuses fonctionnalités, on peut citer la possibilité de définir des couleurs dans plusieurs modÚles de couleurs pour chaque entrée d'une palette, des noms et des descriptions régionalisables, et la prise en charge de profils de couleurs ICC différents pour chaque entrée.
Via notre travail sur la prise en charge de son importation, nous avons pu fournir des informations qui ont conduit Ă un correctif de bogue dans la prise en charge de Swatchbooker par Krita. C'est toujours sympa quand des projets peuvent collaborer et s'entraider !
Interactions avec les pads de tablettes graphiques sous Wayland
Carlos Garnacho, un contributeur GNOME de longue date, a ajoutĂ© la prise en charge de l'interaction directe des boutons de tablettes graphiques (pad) avec GIMP. Quand une tablette est branchĂ©e, vous pouvez dĂ©sormais assigner diffĂ©rentes actions aux contrĂŽles de la tablette depuis la boĂźte de dialogue « PĂ©riphĂ©riques d'entrĂ©e » dans le menu Ădition.

Assigner des actions aux boutons d'une tablette graphique - GIMP 2.99.18
Ce travail a aussi impliqué le portage de fonctionnalités vers GTK 3, la boßte à outils utilisée par GIMP pour son interface graphique. Notez que cette fonctionnalité est seulement disponible sous Wayland pour le moment.
Mise Ă jour de l'API
L'interface de programmation d'application (API), destinée aux créateurs de greffons, est réguliÚrement retravaillée dans le cadre de la refonte de GIMP 3. Une partie de ce travail est de migrer l'API vers l'utilisation de GeglColor
lorsque les couleurs sont impliquĂ©es, ce qui entre dans le cadre plus gĂ©nĂ©ral du projet Space Invasion. MalgrĂ© tout, ce nâest quâune petite partie de lâensemble des amĂ©liorations de lâAPI.
Nous nous orientons Ă©galement vers plus de classes pour reprĂ©senter les diffĂ©rentes ressources gĂ©rĂ©es par GIMP (pinceaux, polices, motifs, etc.) au lieu de les reprĂ©senter uniquement par des noms (ce qui Ă©tait une limitation historique alors qu'il est tout Ă fait possible Ă 2 crĂ©ateurs de ressources de choisir le mĂȘme nom et le fait est que nous voyons de tels cas dans la nature â par exemple, 2 polices crĂ©Ă©es indĂ©pendamment peuvent avoir le mĂȘme nom).
Un autre grand pas consiste Ă remplacer le GimpValueArray
représentant les arguments ordonnés d'une procédure d'un greffon par un GimpProcedureConfig
qui contient les arguments par nom plutÎt que par ordre. Cela permet une utilisation beaucoup plus sémantique des procédures de greffon (surtout lorsqu'elles ont une longue liste d'arguments) et facilitera également l'amélioration des greffons à l'avenir, avec des arguments nouveaux ou réorganisés sans créer de nouvelles procédures, car l'ordre et le nombre des arguments comptent beaucoup moins. Cela signifie que l'ajout de nouveaux arguments dans le futur ne brisera plus les scripts déjà existants qui dépendaient des versions antérieures de ces greffons (les auteurs de greffons devront toujours choisir des valeurs par défaut appropriées pour les nouveaux arguments afin que cela soit vrai, bien sûr).
En parallÚle, nous continuons d'améliorer la capacité de création automatique d'interfaces graphiques offerte aux greffons, rendant la création de boßtes de dialogue plus simple que jamais. Cela inclut (parmi de nombreuses autres améliorations) un nouveau type d'argument de procédure nommé GimpChoice
qui est une liste de choix sous forme de chaĂźnes de caractĂšres qui peut ĂȘtre prĂ©sentĂ©e aux crĂ©ateurs sous forme de widgets de liste dĂ©roulante dans la boĂźte de dialogue de votre greffon.
Nous prĂ©voyons d'Ă©crire et de publier un didacticiel pour les rĂ©dacteurs de greffons dans la section DĂ©veloppement de ressources de notre site Web pour dĂ©veloppeur en mĂȘme temps que la sortie de GIMP 3, ou peu de temps aprĂšs.
GEGL et babl
Cette version de GIMP est accompagnée de nouvelles versions de GEGL et babl, qui contribuent toutes deux au projet (Color) Space Invasion.
babl 0.1.108 apporte une nouvelle fonction babl_space_is_rgb
pour nous aider à confirmer directement qu'un espace colorimétrique est RVB (plutÎt que de faire plusieurs tests pour voir s'il n'est pas CMJN ou niveaux de gris). Plusieurs améliorations ont également été apportées au processus de compilation et à l'outil d'interface de ligne de commande de babl.
GEGL 0.4.48 fournit plusieurs mises Ă jour de l'objet GeglColor
qui prend désormais en charge une grande partie des opérations de couleur de GIMP. Les améliorations spécifiques incluent la possibilité d'obtenir et de définir directement les valeurs de couleur CMJN, ainsi que l'attribution de l'espace colorimétrique lors de la définition des couleurs RVB(A).
Un crash dans le filtre gegl:voroni
existant a été corrigé, et un bogue de longue date avec le filtre gegl:dropshadow
qui empĂȘchait l'effet de rĂ©trĂ©cir a Ă©galement Ă©tĂ© corrigĂ©.
Enfin, un nouveau filtre gegl:shuffle-search
a été ajouté à l'atelier. Il mélange les pixels voisins pour créer un effet de tramage plus optimisé.
Statistiques de sortie
Hormis la premiÚre version de la série (2.99.2), GIMP 2.99.18 est clairement la plus grosse mise à jour à bien des égards. Depuis la version 2.99.16 :
- 238 rapports ont Ă©tĂ© clĂŽturĂ©s comme CORRIGĂS.
- 201 demandes de fusion ont été acceptées.
- 1358 commits ont été poussés.
- 26 traductions ont été mises à jour : allemand, basque, biélorusse, portugais brésilien, bulgare, catalan, chinois (Chine), danois, espagnol, espéranto, finnois, géorgien, grec, hongrois, islandais, italien, lituanien, norvégien nynorsk, persan, polonais, russe , slovÚne, suédois, turc, ukrainien, vietnamien.
60 personnes ont apporté des modifications ou des correctifs à la base de code de GIMP 2.99.18 (l'ordre est déterminé par le nombre de commits; certaines personnes apparaissent dans plusieurs groupes) :
- 23 dĂ©veloppeurs pour le code principal : Jehan, Alx Sa, Shubham, Jacob Boerema, Idriss Fekir, bootchk, Anders Jonsson, Carlos Garnacho, mr.fantastic, Stanislav Grinkov, lillolollo, Ăyvind KolĂ„s, Sabri Ănal, programmer_ceds, Lukas Oberhuber, programmer-ceds, James Golden, Luca Bacci, Massimo Valentini, Niels De Graef, Zander Brown, psykose, sonia.
- 17 dĂ©veloppeurs de greffons ou de modules : Jehan, Alx Sa, Jacob Boerema, bootchk, Anders Jonsson, Stayd, Zander Brown, Bruno Lopes, Daniel NovomeskĂœ, Sabri Ănal, programmer_ceds, Kamil Burda, Mark, Michael Schumacher, Stanislav Grinkov, programmer-ceds, sonia.
- 31 traducteurs : Yuri Chornoivan, Martin, Ekaterine Papava, Luming Zh, Sabri Ănal, Anders Jonsson, Rodrigo LledĂł, Jordi Mas, Alan Mortensen, Vasil Pupkin, Asier Sarasua Garmendia, KolbjĂžrn StuestĂžl, Boyuan Yang, VĂttor Paulo Vieira da Costa, dimspingos, Alexander Shopov, Alexandre Prokoudine, Aurimas Äernius, BalĂĄzs Ăr, Marco Ciampa, Sveinn Ă Felli, Danial Behzadi, Ngá»c QuĂąn Tráș§n, JĂŒrgen Benvenuti, Piotr DrÄ
g, Timo Jyrinki, Andre Klapper, Kristjan SCHMIDT, MohammadSaleh Kamyab, Rafael Fontenelle, Tim Sabsch.
- 9 crĂ©ateurs de ressources (icĂŽnes, thĂšmes, curseurs, splash screen, mĂ©tadonnĂ©esâŠ) : Alx Sa, Jehan, Ferry JĂ©rĂ©mie, Stanislav Grinkov, Anders Jonsson, Bruno Lopes, Jacob Boerema, Sabri Ănal, mr.fantastic.
- 5 contributeurs Ă la documentation : Jehan, Bruno Lopes, Jacob Boerema, Alx Sa, Anders Jonsson.
- 14 contributeurs pour la compilation, l'empaquetage ou l'intĂ©gration continue : Jehan, Bruno Lopes, bootchk, Alx Sa, Zander Brown, Jacob Boerema, Jacob Boerema, Stayd, Carlos Garnacho, Heiko Becker, mr.fantastic, Daniel NovomeskĂœ, U-YGGDRASIL\ender, lillolollo.
Contributions à d'autres dépÎts du GIMPverse (l'ordre est déterminé par le nombre de commits) :
- babl 0.1.108 est composĂ© de 17 commits par 6 contributeurs : Jehan, Ăyvind KolĂ„s, John Marshall, Andre Klapper, John, sid.
- GEGL 0.4.48 est composĂ© de 77 commits par 20 contributeurs : Ăyvind KolĂ„s, Jehan, Anders Jonsson, Jacob Boerema, Yuri Chornoivan, Alan Mortensen, Sabri Ănal, Andre Klapper, Ekaterine Papava, Jan Tojnar, Jordi Mas, Luming Zh, Martin , Piotr DrÄ
g, VĂttor Paulo Vieira da Costa, Asier Sarasua Garmendia, Marco Ciampa, Rodrigo LledĂł, dimspingos, woob.
-
ctx a eu 308 commits depuis la version 2.99.14 par 1 contributeur : Ăyvind KolĂ„s.
- La version
gimp-macos-build
(scripts d'empaquetage macOS) est composée de 32 commits par 1 contributeur : Lukas Oberhuber.
- La version flatpak est composĂ©e de 15 commits par 3 contributeurs : Jehan, Daniel NovomeskĂœ et Hubert FiguiĂšre.
- Notre site Web principal a eu 31 commits depuis la sortie du 2.10.36 par 6 contributeurs : Jehan, Alx Sa, Sabri Ănal, Anders Jonsson, Bruno Lopes, Jonathan Demeyer.
- Notre site Web des développeurs a eu 30 commits depuis la version 2.10.36 par 5 contributeurs : Bruno Lopes, Jehan, Alx Sa, bootchk, Robin Swift.
- Notre documentation 3.0 a enregistrĂ© 247 commits depuis la version 2.99.16 par 17 contributeurs : Andre Klapper, Jacob Boerema, Yuri Chornoivan, Alx Sa, Jordi Mas, Alan Mortensen, Dimspingos, Anders Jonsson, Boyuan Yang, Sabri Ănal, VĂttor Paulo Vieira da Costa, Juliano de Souza Camargo, Rodrigo LledĂł, KolbjĂžrn StuestĂžl, Marco Ciampa, Danial Behzadi, Emin Tufan Ăetin.
N'oublions pas de remercier toutes les personnes qui nous aident à faire le tri dans Gitlab, rapportent des bogues et discutent avec nous d'éventuelles améliorations. Notre communauté est également profondément reconnaissante envers les guerriers d'Internet qui gÚrent nos différents canaux de discussion ou comptes de réseaux sociaux tels que Ville PÀtsi, Liam Quin, Michael Schumacher et Sevenix !
Remarque : compte tenu du nombre de piĂšces qui composent GIMP et son environnement, et de la maniĂšre dont nous obtenons des statistiques via des scripts git
, des erreurs peuvent se glisser dans ces statistiques. N'hésitez pas à nous dire si nous avons manqué ou mal catégorisé certains contributeurs ou contributions.
Nouvelles de l'équipe et procédure de sortie
Les droits d'accÚs au dépÎt git
ont été récemment accordés à Bruno Lopes (qui a été trÚs actif dans l'amélioration de notre processus de compilation et de l'empaquetage pour Windows).
Plusieurs développeurs ou empaqueteurs de longue date ou plus récents qui ont commencé à contribuer au nouveau site Web des développeurs ont également reçu l'accÚs au dépÎt git
associé.
De plus en plus de contributeurs participent dĂ©sormais activement aux tests des versions et du processus d'empaquetage, et c'est la premiĂšre dĂ©pĂȘche depuis des annĂ©es (NDT : cela dĂ©signe la news originale sur le site de GIMP) que Jehan n'a pas Ă©crite presque entiĂšrement ! Merci beaucoup Ă Alx Sa (alias Nikc ou CmykStudent) d'avoir entamĂ© la rĂ©daction collaborative de la nouvelle !
Il est clair que nous consolidons jour aprĂšs jour une solide Ă©quipe de contributeurs et cela se voit dans notre processus de publication, avec de plus en plus de retours Ă chaque version.
Nous sommes Ă©galement particuliĂšrement heureux et fiers que les 4 projets GSoC que nous avons eus, depuis que nous avons recommencĂ© Ă souscrire Ă ce programme de mentorat, aient tous Ă©tĂ© couronnĂ©s de succĂšs et ont fini par ĂȘtre fusionnĂ©s avec la branche principale du code au plus tard six mois aprĂšs la fin du stage.
Autour de GIMP
Des nouvelles des miroirs
Depuis la derniĂšre dĂ©pĂȘche, un nouveau miroir a Ă©tĂ© apportĂ© Ă GIMP par :
-
Sahil Dhiman, Ă Nuremberg, en Allemagne, comme projet personnel.
Cela nous amÚne à un total de 46 miroirs répartis dans le monde.
Les miroirs sont importants car ils aident le projet en partageant la charge de dizaines de milliers de téléchargements quotidiens. De plus, en disposant de miroirs répartis à travers le monde, nous garantissons que tout le monde puisse avoir un accÚs rapide au téléchargement de GIMP.
GIMP sous Windows/ARM
Depuis notre annonce d'une version expĂ©rimentale sur Windows pour l'architecture ARM 64 bits (en anglais), nous avons reçu l'aide de Hernan Martinez, contributeur bien connu du projet MSYS2, qui a hĂ©bergĂ© notre tout premier runner pour l'intĂ©gration continue (CI) pour Windows sur l'architecture Aarch64. Bien que cela n'ait Ă©tĂ© qu'une configuration temporaire (littĂ©ralement une machine de compilation dans le salon de quelqu'un) en attendant une situation plus stable, nous sommes extrĂȘmement reconnaissants envers Hernan qui nous a aidĂ©s Ă faire notre deuxiĂšme pas sur cette plateforme (la premiĂšre Ă©tape a Ă©tĂ© effectuĂ©e par Jernej, qui a crĂ©Ă© notre premier installateur expĂ©rimental), s'est assurĂ© que notre processus de compilation automatique fonctionne sur cette machine, et plus encore.
Depuis lors, la situation plus stable est arrivĂ©e : Arm Ltd. eux-mĂȘmes se sont mobilisĂ©s et ont officiellement contribuĂ© trois runners pour notre processus d'intĂ©gration continue dans Gitlab ! Arm Ltd. a Ă©galement sponsorisĂ© un kit de dĂ©veloppement Windows pour l'un de nos dĂ©veloppeurs.
Bien que nous considérions toujours cette version comme expérimentale, en raison du manque de tests et du fait que seuls 2 contributeurs disposent actuellement d'une machine capable de l'exécuter, le plus gros facteur bloquant a été supprimé et nous sommes heureux d'annoncer que notre programme d'installation Windows universel pour GIMP 2.99.18 contient GIMP pour les 3 plates-formes (x86 32 et 64 bits, et maintenant ARM 64 bits) !
Télécharger GIMP 2.99.18
Vous trouverez toutes nos versions officielles sur le site officiel de GIMP (gimp.org) :
- Flatpaks Linux pour x86 et ARM (64 bits)
- Installateur Windows universel pour x86 (32 et 64 bits) et pour ARM (64 bits)
- Paquets macOS DMG pour le matériel Intel
- Paquets macOS DMG pour le matériel Apple Silicon
D'autres paquets réalisés par des tiers devraient évidemment suivre (paquets des distributions Linux ou *BSD, etc.).
Et ensuite ?
Alors que nous sommes maintenant entrés dans un gel des fonctionnalités, notre attention s'est déplacée vers la correction des bogues, le nettoyage et la préparation de la premiÚre version candidate 3.0.
Nous pensons en effet qu'il s'agit de la derniÚre version de développement puisqu'aucune nouvelle fonctionnalité ne sera introduite désormais, du moins au niveau de l'interface utilisateur (l'API est encore en évolution jusqu'à la premiÚre version candidate). Donc, ce que vous voyez maintenant est essentiellement ce que vous devriez obtenir dans GIMP 3.0.0, en termes de fonctionnalités.
C'est pourquoi nous avons sorti cette version mĂȘme si nous savons qu'elle est assez instable. C'est l'heure des commentaires de derniĂšre minute ! C'est aussi le moment de signaler et de corriger les bogues comme si demain n'existait pas. Nous espĂ©rons pouvoir bientĂŽt livrer une RC1 et elle devrait ĂȘtre aussi dĂ©pourvue de bogue que possible.
Nous espĂ©rons actuellement pouvoir publier GIMP pour le prochain Libre Graphics Meeting du 9 au 12 mai. Pour ĂȘtre honnĂȘte, ce nâest pas un objectif facile et nous ne sommes donc pas sĂ»rs de pouvoir lâatteindre. Ce qui est sĂ»r, c'est que mĂȘme si nous n'y parvenons pas Ă temps, cela ne devrait pas arriver trop longtemps aprĂšs. En particulier, nous ne publierons pas simplement parce que nous avons fixĂ© une date limite. Nous voulons offrir la meilleure expĂ©rience possible, ce qui signifie que si nous dĂ©couvrons des bogues bloquants de derniĂšre minute, nous retarderons la sortie jusqu'Ă ce qu'ils soient corrigĂ©s.
N'oubliez pas que vous pouvez faire un don et financer personnellement les dĂ©veloppeurs de GIMP, c'est un moyen de donner en retour et d'accĂ©lĂ©rer le dĂ©veloppement de GIMP. Lâengagement communautaire permet au projet de se renforcer ! đȘđ„ł