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
Modifications gflAddText [French]
Moderators: helmut, XnTriq, xnview
Re: Modifications gflAddText
Pouvez vous m'envoyer l'image sur lequel vous le faites, ainsi que les parametres de gflAddText?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.
Pierre.
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
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
Effectivement, peut etre qu'un des champs de la GFL_BITMAP (que vous mettez) n'est pas bon. Que faites vous?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.
Pierre.
Alignement des données
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.
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.
Re: Alignement des données
Oui, effectivement la packing des structures a changé.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.
Pierre.