Forum darktable FR
Filigrane texte simple - Version imprimable

+- Forum darktable FR (https://forums.darktable.fr)
+-- Forum : Utilisation de darktable (https://forums.darktable.fr/forumdisplay.php?fid=97)
+--- Forum : Module Chambre Noire (https://forums.darktable.fr/forumdisplay.php?fid=75)
+--- Sujet : Filigrane texte simple (/showthread.php?tid=1585)



Filigrane texte simple - jpverrue - 20-01-17

Dans le module filigrane, j'ai voulu entrer hier soir, un texte d'une ligne. Je n'ai pas pu le faire car mon texte dépassait la capacité d'enregistrement de la zone, soit 63 caractères (mais la zone de saisie dans le module permet d'en saisir beaucoup plus !).
J'ai vérifié ce matin dans les sources. Effectivement dans le source du module .../darktable/src/ip/watermark.c, les définitions des deux structures :
dt_iop_watermark_params_t
et
dt_iop_watermark_data_t,
incluent toutes les deux un membre char text[64],
ce qui, si on enlève le NULL de fin de chaîne, correspond exactement à la limite constatée de 63 caractères.
De plus, le type char attribué à cette zone de stockage ne doit pas bien correspondre au jeu de caractère UTF8 car chaque fois que je saisi un caractère accentué dans cette zone, cela réduit encore la longueur.

Je vais proposer un patch pour agrandir la zone, par contre concernant le type de stockage, je ne sais pas ce qu'il faut mettre. Il est probable de plus que si on change le type, il faille également changer toutes les routines qui manipulent ces zones et ça, c'est une autre affaire !!!

Des conseils ?


RE: Filigrane texte simple - pascal - 20-01-17

@jpverrue: tu ne peux pas juste changer la taille de la zone. Toutes ces valeurs sont enregistrées dans le module et finissent dans le .xmp (commit_params). Du coup pour changer la zone tu dois modifier la version du module (ou IOP). La version est 4 actuellement:

DT_MODULE_INTROSPECTION(4, dt_iop_watermark_params_t)

Donc la passer à 5 et proposer une conversion des anciennes versions vers cette nouvelle, cela se passe dans legacy_params().

Sans faire cela tu casses tous les anciens développements ayant utilisés le module watermark! Et darktable ne se permettrait pas cela, on propose toujours des conversions de façons à passer version une nouvelle version de façon transparente.


RE: Filigrane texte simple - jpverrue - 20-01-17

Oops !

C'est plus compliqué que je ne le pensais ! Je vais commencer par faire une proposition sur la ML. Après, on verra !