Modifications gflAddText [French]

Discussions on GFL SDK, the graphic library for reading and writing graphic files

Moderators: helmut, XnTriq, xnview

Post Reply
User avatar
Ithier
Posts: 47
Joined: Fri Nov 19, 2004 10:50 am
Location: Paris, France
Contact:

Modifications gflAddText [French]

Post by Ithier »

Bonjour,

Dans mon application Windows, j'utilises la fonction gflAddText. J'utilisais libgfl201 et tout fonctionnait très bien. Depuis je suis passé à libgfl211 puis à libgfl220, mais dorénavant lorsque j'appelle cette fonction j'ai un plantage.
Ce n'est pas un plantage complet de l'application car l'erreur est interceptée par un catch(...) mais c'est quand même un plantage de la fonction.
Avez-vous une idée de ce qui a pu changer qui fait que libgfl n'aime plus les paramètres que je lui passe ? Je n'ai rien vu dans le WhatsNew.txt a ce sujet.

Je suis repassé à libgfl201 et tout est rentré dans l'ordre. Néanmoins j'aimerais bien pouvoir upgrader ma version pour bénéficier des dernières fonctionnalités (IPTC).

Le programme est écrit en C++ avec Visual C++ 6.0.

Merci pour votre aide.

Ithier
User avatar
xnview
Author of XnView
Posts: 46236
Joined: Mon Oct 13, 2003 7:31 am
Location: France
Contact:

Re: Modifications gflAddText

Post by xnview »

Ithier wrote:Dans mon application Windows, j'utilises la fonction gflAddText. J'utilisais libgfl201 et tout fonctionnait très bien. Depuis je suis passé à libgfl211 puis à libgfl220, mais dorénavant lorsque j'appelle cette fonction j'ai un plantage.
Ce n'est pas un plantage complet de l'application car l'erreur est interceptée par un catch(...) mais c'est quand même un plantage de la fonction.
Avez-vous une idée de ce qui a pu changer qui fait que libgfl n'aime plus les paramètres que je lui passe ? Je n'ai rien vu dans le WhatsNew.txt a ce sujet.
Pouvez vous m'envoyer l'image sur lequel vous le faites, ainsi que les parametres de gflAddText?
Pierre.
Guest

Post by Guest »

L'appel de la fonction est:
m_error=gflAddText(data, "coucou", "Arial", 1, 1, 20, 0, false, false, false, false, false ,&textColor);

avec:
GFL_COLOR textColor;
textColor.Red=GetRValue(colorTexte);
textColor.Green=GetGValue(colorTexte);
textColor.Blue=GetBValue(colorTexte);

Votre demande d'image m'a fait réalisé que le problème devait venir de la manière dont je lis l'image qui n'est pas standard car pour les JPEG, j'utilises IPP de Intel: les données sont lues dans un buffer qui etait auparavant complètement compatible avec le buffer GFL.
Le problème ne provient donc sans doute pas de GFL mais de la compatibilité des buffers de IPP-GFL qui a disparue.
Si vous avez des idées, n'hesitez pas, sinon je chercherais une autre solution.

Bon Week-end

Ithier
User avatar
xnview
Author of XnView
Posts: 46236
Joined: Mon Oct 13, 2003 7:31 am
Location: France
Contact:

Post by xnview »

Anonymous wrote:L'appel de la fonction est:
m_error=gflAddText(data, "coucou", "Arial", 1, 1, 20, 0, false, false, false, false, false ,&textColor);

avec:
GFL_COLOR textColor;
textColor.Red=GetRValue(colorTexte);
textColor.Green=GetGValue(colorTexte);
textColor.Blue=GetBValue(colorTexte);

Votre demande d'image m'a fait réalisé que le problème devait venir de la manière dont je lis l'image qui n'est pas standard car pour les JPEG, j'utilises IPP de Intel: les données sont lues dans un buffer qui etait auparavant complètement compatible avec le buffer GFL.
Le problème ne provient donc sans doute pas de GFL mais de la compatibilité des buffers de IPP-GFL qui a disparue.
Si vous avez des idées, n'hesitez pas, sinon je chercherais une autre solution.
Effectivement, peut etre qu'un des champs de la GFL_BITMAP (que vous mettez) n'est pas bon. Que faites vous?
Pierre.
User avatar
Ithier
Posts: 47
Joined: Fri Nov 19, 2004 10:50 am
Location: Paris, France
Contact:

Post by Ithier »

Je vais chercher dans ce sens et je reviendrais vers vous si je trouve quelquechose.

merci

Ithier
User avatar
Ithier
Posts: 47
Joined: Fri Nov 19, 2004 10:50 am
Location: Paris, France
Contact:

Alignement des données

Post by Ithier »

En fait le problème provenait du fait que dans la version 2.01, les données (variable Data de GFL_BITMAP) n'étaient pas alignées par ligne sur une frontière alors que c'est le cas dans les versions plus récentes (2.11 et 2.20).

Comme j'écris moi même complètement cette strcuture et les données, du coup il y avait incohérence et plantage dans certain cas.
User avatar
xnview
Author of XnView
Posts: 46236
Joined: Mon Oct 13, 2003 7:31 am
Location: France
Contact:

Re: Alignement des données

Post by xnview »

Ithier wrote:En fait le problème provenait du fait que dans la version 2.01, les données (variable Data de GFL_BITMAP) n'étaient pas alignées par ligne sur une frontière alors que c'est le cas dans les versions plus récentes (2.11 et 2.20).

Comme j'écris moi même complètement cette strcuture et les données, du coup il y avait incohérence et plantage dans certain cas.
Oui, effectivement la packing des structures a changé.
Pierre.
Post Reply