IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Lazarus Pascal Discussion :

[1.8.2 Linux/Windows] Bugs de l'OpenPictureDialog EDIT : ou plutôt de l'unité Graphics


Sujet :

Lazarus Pascal

  1. #61
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 726
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 726
    Points : 15 126
    Points
    15 126
    Par défaut
    Citation Envoyé par BeanzMaster Voir le message
    Ca c'est parce que tu ne le vois pas, qu'il n'y a pas de décalage. tous ces composants redimensionnent l'image au moment du rendu

    S'il y avait redimensionnement, l'image petite serait agrandie à la taille de la grande et ça induirait un sacré décalage et une impossibilité de superposition,

    Citation Envoyé par BeanzMaster Voir le message
    Pour obtenir une animation correcte il faut prendre en compte la méthode d'affichage décrite dans le "GCE" et ajuster en fonction

    J'ai ajusté la position, mais je sais pas si ma formule est viable dans tous les cas de figures, mais elle fonctionne ici
    Et comme tu ne nous la montres pas, on ne peut rien t'en dire,

    De mon côté, je viens d'aller chercher des infos dans la function TGifLoader.LoadAllBitmap en faisant ShowMessage(inttostr(FGifDescriptor.Left)+' '+inttostr(FGifDescriptor.Top));//diddl: 0 0 puis 0 1, et je me suis bien rendu compte en assemblant avec The Gimp les 2 .bmp extraits en pas-à-pas juste après ce ShowMessage que le 2e bitmap (78x136) doit bien être disposé en 0,1 par rapport au 1er bitmap (85x140) pour que les images coïndicent, mais surtout sans les redimensionner !

    Et je suppose que ta formule doit s'appuyer sur ces informations, non ?

    Il est pas mal fait, ce TGifAnim, dans l'ensemble, et bien lisible.
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  2. #62
    Expert confirmé
    Avatar de BeanzMaster
    Homme Profil pro
    Amateur Passionné
    Inscrit en
    Septembre 2015
    Messages
    1 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Amateur Passionné
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2015
    Messages : 1 899
    Points : 4 346
    Points
    4 346
    Billets dans le blog
    2
    Par défaut
    Par rapport au décalage je me suis planté. En fait je n'avais pas correctement initialiser mes variables

    Sinon, j'ai fini la prise en charge des animations. Je t'envoi le lien zip un peu tardivement, d'ici quelques minutes. Je ne voulais pas t'envoyer quelques chose sur ces satanés GIF qui ne fonctionne pas

    Voila le résultat (J'ai également testé sous Linux, et pas de problèmes majeurs)


    Pour moi ce sujet est résolu, je vais pouvoir passer à autre chose

    Bonne nuit
    • "L'Homme devrait mettre autant d'ardeur à simplifier sa vie qu'il met à la compliquer" - Henri Bergson
    • "Bien des livres auraient été plus clairs s'ils n'avaient pas voulu être si clairs" - Emmanuel Kant
    • "La simplicité est la sophistication suprême" - Léonard De Vinci
    • "Ce qui est facile à comprendre ou à faire pour toi, ne l'est pas forcément pour l'autre." - Mon pèrei

    Mes projets sur Github - Blog - Site DVP

  3. #63
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 726
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 726
    Points : 15 126
    Points
    15 126
    Par défaut
    Bonsoir,

    à la demande générale de Jérome (), je pose ici 2 tout petits fichiers car il est impossible de joindre des fichiers à un MP...
    psp16couleurs : Nom : psp16couleurs.gif
Affichages : 263
Taille : 95 octets
    anim4calques : Nom : anim4calques.gif
Affichages : 255
Taille : 177 octets
    Vous pouvez vous rendormir,
    EDIT : restez couché, je ne fais qu'entrer et sortir : BZSystem.zip /EDIT
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  4. #64
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 726
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 726
    Points : 15 126
    Points
    15 126
    Par défaut
    Yop !
    Citation Envoyé par BeanzMaster Voir le message
    Sous Windows, je ne remarque rien d'anormal dans l'affichage (peut-être trop rapide avec mon PC). Par contre il y a un truc qui me semble pas logique dans la procedure paint du TGifImage. J'ai commenté:
    C'est peut-être la cause du problème.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    procedure TGifAnim.Paint;
              // BufferImg.Canvas.Draw(PosX, PosY, Bitmap); // ---> Ces 2 lignes doivent normalement se trouver après les méthodes d'effacement et non avant, 
              // CurrentView.Assign(BufferImg); // ce n'est pas logique de transférer le "Bitmap" dans "BufferImg" puis d'effacer une partie ou la totalité. "Method" fait référence à ce qui faut appliquer à l'image en cours et non à la prochaine il me semble
              case Method of
                //0 : Not specified...
                //1 : No change Background
                2: BufferImg.Canvas.FillRect(
                    Rect(PosX, PosY, Bitmap.Width + PosX, Bitmap.Height + PosY));
     
                3: BufferImg.Canvas.FillRect(Rect(0, 0, Width, Height));
              end;
              BufferImg.Canvas.Draw(PosX, PosY, Bitmap); // Lignes replacées
              CurrentView.Assign(BufferImg);
            end;
    Ben non.
    J'ai relu les specs dans gif89a.txt, on y trouve
    Citation Envoyé par specs_gif89a
    iv) Disposal Method - Indicates the way in which the graphic is to be treated after being displayed.
    Vous avez bien vu le "after" ?
    Alors j'ai remis comme à l'origine et là, miracle, "Diddl" ne laisse plus traîner son bout de doigt !
    Et pas d'effets de bord avec d'autres fichiers, sinon je ne serais pas là à vous raconter tout ça;

    Plus qu'à réussir à forcer un fond blanc quand il n'y a pas de fond, et "Animaux" (défaut dans le côté gauche du trou supérieur du "B") sera enfin bon.
    En tout cas, "singe" n'abandonne plus en l'air des bouts de balles lors de sa séance de jonglage, grand bonheur !


    Citation Envoyé par BeanzMaster Voir le message
    J'ai aussi remarqué TGifImage prend en charge que les GIF version 89a
    Euh, non, je lui ai fait ouvrir "a_image_87.gif" (le dégradé arc-en-ciel horizontal) sans problème.
    Nom : a_image.png
Affichages : 326
Taille : 1,6 Ko
    Aurais-je modifié quelque chose ? Peut-être juste supprimé un test genre if version <> '89a' then exit;, faudra que je vérifie...

    Citation Envoyé par BeanzMaster Voir le message
    Un autre truc qui ne fonctionne pas correctement si tu mets le GifImage avec "Align := alClient" et "AutoSize := False" (avec true c'est idem) le compo ne se redimensionne pas lors du "Resize" de la fenêtre
    Ça, c'est le prochain chantier,
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  5. #65
    Expert confirmé
    Avatar de BeanzMaster
    Homme Profil pro
    Amateur Passionné
    Inscrit en
    Septembre 2015
    Messages
    1 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Amateur Passionné
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2015
    Messages : 1 899
    Points : 4 346
    Points
    4 346
    Billets dans le blog
    2
    Par défaut
    Salut,
    Citation Envoyé par Jipété Voir le message
    Yop !

    Ben non.
    J'ai relu les specs dans gif89a.txt, on y trouve
    Vous avez bien vu le "after" ?
    Alors j'ai remis comme à l'origine et là, miracle, "Diddl" ne laisse plus traîner son bout de doigt !
    Et pas d'effets de bord avec d'autres fichiers, sinon je ne serais pas là à vous raconter tout ça;
    Ok j'ai pigé il faut que je mette à jour mon lecteur, bien vu ( EDIT : J'ai pu voir l'erreur produite avec les fichiers sur Diddll que j'ai posté plus haut test_diddl 1 et 2 )

    Citation Envoyé par Jipété Voir le message
    Plus qu'à réussir à forcer un fond blanc quand il n'y a pas de fond, et "Animaux" (défaut dans le côté gauche du trou supérieur du "B") sera enfin bon.
    Pour ça je pense que tu ne pourras rien y faire à part l'afficher en transparence sur un fond blanc. Il à été encodé comme ça

    [EDIT] Dans DragZnView cliques sur la checkbox Transparent en bas à gauche, tu verras le jolie panel ou est posé l'ImageView avec un belle couleur verte comme fond. [/EDIT]

    Citation Envoyé par Jipété Voir le message
    En tout cas, "singe" n'abandonne plus en l'air des bouts de balles lors de sa séance de jonglage, grand bonheur !
    Il s'etait échappé du dossier ImageTestSuite, c'est bon il est de retour

    Citation Envoyé par Jipété Voir le message
    Euh, non, je lui ai fait ouvrir "a_image_87.gif" (le dégradé arc-en-ciel horizontal) sans problème.
    Nom : a_image.png
Affichages : 326
Taille : 1,6 Ko
    Aurais-je modifié quelque chose ? Peut-être juste supprimé un test genre if version <> '89a' then exit;, faudra que je vérifie...
    Oui c'est bien cette ligne

    Citation Envoyé par Jipété Voir le message
    Ça, c'est le prochain chantier,
    Là tu va rentrer dans un autre domaine

    Bonne fin de journée
    • "L'Homme devrait mettre autant d'ardeur à simplifier sa vie qu'il met à la compliquer" - Henri Bergson
    • "Bien des livres auraient été plus clairs s'ils n'avaient pas voulu être si clairs" - Emmanuel Kant
    • "La simplicité est la sophistication suprême" - Léonard De Vinci
    • "Ce qui est facile à comprendre ou à faire pour toi, ne l'est pas forcément pour l'autre." - Mon pèrei

    Mes projets sur Github - Blog - Site DVP

  6. #66
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 726
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 726
    Points : 15 126
    Points
    15 126
    Par défaut
    Citation Envoyé par BeanzMaster Voir le message
    Pour ça je pense que tu ne pourras rien y faire à part l'afficher en transparence sur un fond blanc. Il a été encodé comme ça

    [EDIT] Dans DragZnView cliques sur la checkbox Transparent en bas à gauche, tu verras le joli panel où est posé l'ImageView avec un belle couleur verte comme fond. [/EDIT]
    Ligne 1 : oui, c'est ce que je fais.
    Ligne 2 : je l'avais remarqué, ne t'inquiète pas

    Citation Envoyé par BeanzMaster Voir le message
    Là tu vas rentrer dans un autre domaine
    Bah, un peu de géométrie, ça ne devrait pas être trop compliqué, je pense.
    Mais pas ce soir. Là j'en ai ma claque,
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  7. #67
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 726
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 726
    Points : 15 126
    Points
    15 126
    Par défaut
    Bonjour,

    Jérome m'ayant demandé un fichier de résultats de tests avec GifAnim, je le pose ici, ça concerne newton puis odessa puis smallfullcolor puis welcome (il comprendra) :
    Nom : moches.gif
Affichages : 799
Taille : 79,4 Ko
    mais tout s'affiche bien dans ton outil

    Résultats du dossier bad_avec_gifanim avec ton outil :
    GifSample : il est bon, idem dans Linux
    Spacer : circulez y a rien à voir, à part le fond qui est devenu vert tout seul
    9f8f604 : affiche "Membership", idem dans Linux
    adaf0da : semble correct -- "semble" parce que 2 petites images seulement pour un fichier de 10 ko ça me semble bizarre, d'ailleurs dans Linux, mon visionneur d'images me dit qu'il "manque quelques données (peut-être a-t-il été tronqué ?)", et il est correctement affiché sous XnView sous XP.


    Le plus ennuyeux c'est ceux qui sont bons avec ton outil, avec XnView, mais bad sous Linux ("il manque quelques données (peut-être a-t-il été tronqué ?)"), je pense au 3 doré qui tourne dans tous les sens, ea754e..., mais qui s'affiche bien également avec GifAnim !

    Pour f88b69 (le pingouin à l'écharpe dans les bad), augmente ton tampon de sortie (ou change le message [ou le code, ]) car XnView, le visionneur Linux et GifAnim l'affichent très bien.
    Nom : erreur_pingouin.png
Affichages : 277
Taille : 12,3 Ko

    Au final temporaire, il y a à boire et à manger avec les fichiers, donc blindez vos codes de détections d'erreur robustes.

    PS : grand merci au modo masqué pour les modifs,
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  8. #68
    Expert confirmé
    Avatar de BeanzMaster
    Homme Profil pro
    Amateur Passionné
    Inscrit en
    Septembre 2015
    Messages
    1 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Amateur Passionné
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2015
    Messages : 1 899
    Points : 4 346
    Points
    4 346
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Jipété Voir le message
    Bonjour,

    Jérome m'ayant demandé un fichier de résultats de tests avec GifAnim, je le pose ici, ça concerne newton puis odessa puis smallfullcolor puis welcome (il comprendra) :
    Nom : moches.gif
Affichages : 799
Taille : 79,4 Ko
    mais tout s'affiche bien dans ton outil
    Ok ici le problème vient du fait, que soit TGifAnim ne conserve pas l'image précédemment rendue, soit c'est un problème avec la transparence lors du transfert de l'image vers le tampon

    Citation Envoyé par Jipété Voir le message
    Résultats du dossier bad_avec_gifanim avec ton outil :
    GifSample : il est bon, idem dans Linux
    Spacer : circulez y a rien à voir, à part le fond qui est devenu vert tout seul

    9f8f604 : affiche "Membership", idem dans Linux
    Pour Spacer c'est un problème dans l'ImageView, lorsque tu ouvres plusieurs fichier à la suite. J'ai déja eu ce comportement sous Windows. Je dois avoir une valeur mal réinitialisée. En cliquant sur la checkbox transparence 2x, l'image réapparait normalement.

    Citation Envoyé par Jipété Voir le message
    adaf0da : semble correct -- "semble" parce que 2 petites images seulement pour un fichier de 10 ko ça me semble bizarre, d'ailleurs dans Linux, mon visionneur d'images me dit qu'il "manque quelques données (peut-être a-t-il été tronqué ?)", et il est correctement affiché sous XnView sous XP.
    L'explorateur et XNView n'affiche pas de messages d'erreurs ils les zappent si j'aurais fais la même dans mon outil, tu n'y aurais vu que du feux

    Citation Envoyé par Jipété Voir le message
    Le plus ennuyeux c'est ceux qui sont bons avec ton outil, avec XnView, mais bad sous Linux ("il manque quelques données (peut-être a-t-il été tronqué ?)"), je pense au 3 doré qui tourne dans tous les sens, ea754e..., mais qui s'affiche bien également avec GifAnim !
    Je vais retourné sous Linux pour tester, mais de mémoire chez moi tous les GIF s'affichent correctement sous Linux.

    Citation Envoyé par Jipété Voir le message
    Pour f88b69 (le pingouin à l'écharpe dans les bad), augmente ton tampon de sortie (ou change le message [ou le code, ]) car XnView, le visionneur Linux et GifAnim l'affichent très bien.
    Nom : erreur_pingouin.png
Affichages : 277
Taille : 12,3 Ko
    Même réponse que plus haut.
    Augmenter le tampon n'est pas possible. La taille de celui est fixé par les dimensions du GIF.
    Je vais quand même vérifier si je ne lis pas un octet de trop dans les données mais j'en doute

    A+
    • "L'Homme devrait mettre autant d'ardeur à simplifier sa vie qu'il met à la compliquer" - Henri Bergson
    • "Bien des livres auraient été plus clairs s'ils n'avaient pas voulu être si clairs" - Emmanuel Kant
    • "La simplicité est la sophistication suprême" - Léonard De Vinci
    • "Ce qui est facile à comprendre ou à faire pour toi, ne l'est pas forcément pour l'autre." - Mon pèrei

    Mes projets sur Github - Blog - Site DVP

  9. #69
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 726
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 726
    Points : 15 126
    Points
    15 126
    Par défaut
    Citation Envoyé par BeanzMaster Voir le message
    Pour Spacer c'est un problème dans l'ImageView, lorsque tu ouvres plusieurs fichier à la suite. J'ai déja eu ce comportement sous Windows. Je dois avoir une valeur mal réinitialisée. En cliquant sur la checkbox transparence 2x, l'image réapparait normalement.
    On ne doit pas avoir la même version,

    Le log :
    Code texte : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    [STATUS]   [ 14-6-18 19:43:55 ] Start Logging DragZnView-i386
    [NOTICE]   [ 19:43:55 ] Picture.Bitmap.Size : 734x442
    [NOTICE]   [ 19:44:24 ] Picture.Bitmap.Size : 734x442
    [NOTICE]   [ 19:44:31 ] Picture.Bitmap.Size : 734x442
    [NOTICE]   [ 19:44:32 ] Picture.Bitmap.Size : 734x442
    [STATUS]  -------------------------------------------------------------------------------------------------------------------------------------
    [STATUS]  Read GIF Image : /_share_4_VM/Programmation/GIF/BZScene/Images Test Suite/gif/89a/Good/Spacer.gif
    [STATUS]  Version : 89a
    [STATUS]  =====================================================================================================================================
    [STATUS]  ------[ LOGICAL SCREEN ]-------------------------------------------------------------------------------------------------------------
    [STATUS]  Width : 1
    [STATUS]  Height : 1
    [STATUS]  =====================================================================================================================================
    [NOTICE]   [ 19:44:32 ] Picture.Bitmap.Size : 734x442
    [STATUS]  Load Global palette : 2
    [STATUS]  Background color Index = 0
    [STATUS]  GIF_EXTENSIONINTRODUCER----------------------------------
    [STATUS]  Read Extensions at 20
    [STATUS]  Extension ID = 249 At 21
    [STATUS]  Read Extension Graphic Control
    [STATUS]  Extension ID = 44 At 28
    [STATUS]  GIF_IMAGEDESCRIPTOR---------------------------------------
    [STATUS]  Load Image at 28
    [STATUS]  Image Descriptor : 
    [STATUS]  Top/Left : 0 / 0
    [STATUS]  WidthxHeight : 1x1
    [STATUS]  HasLocalPalette : 0
    [STATUS]  Interlaced : -1
    [STATUS]  Transparent : -1
    [STATUS]  DrawMode : None
    [STATUS]  LZW InitCodeSize : 2 At 37
    [STATUS]  Debut des données :  At 38
    [STATUS]  Decompress Image = BufferSize : 1 At 41
    [STATUS]  Set SubImage #0 --> 1x1
    [STATUS]  Verification Debut des données :  At 38
    [STATUS]  TargetBuffer : 1x1
    [STATUS]  TargetBufferSize : 1
    [STATUS]  Layers Count : 1
    [STATUS]  Current Frame Index : 0
    [STATUS]  GIF_Trailer-----------------------------------------------
    [STATUS]  Total Layers : 1
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  10. #70
    Expert confirmé
    Avatar de BeanzMaster
    Homme Profil pro
    Amateur Passionné
    Inscrit en
    Septembre 2015
    Messages
    1 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Amateur Passionné
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2015
    Messages : 1 899
    Points : 4 346
    Points
    4 346
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Jipété Voir le message
    On ne doit pas avoir la même version,
    ...
    Avec spacer.gif c'est clair que tu ne verras rien il est transparent téléchargé ici
    Je me suis mal exprimer le comportement cité peux effectivement avoir lieu avec d'autre gif qui ne sont pas totalement transparent
    • "L'Homme devrait mettre autant d'ardeur à simplifier sa vie qu'il met à la compliquer" - Henri Bergson
    • "Bien des livres auraient été plus clairs s'ils n'avaient pas voulu être si clairs" - Emmanuel Kant
    • "La simplicité est la sophistication suprême" - Léonard De Vinci
    • "Ce qui est facile à comprendre ou à faire pour toi, ne l'est pas forcément pour l'autre." - Mon pèrei

    Mes projets sur Github - Blog - Site DVP

  11. #71
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 950
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 950
    Points : 9 279
    Points
    9 279
    Par défaut
    hello,
    je ne sais pas si vous avez regardé du côté de la jvcl delphi pour trouver des sources de décodage de fichiers gif mais en tout cas il y a plusieurs unités qui semblent intéressantes dedans :
    jvGif
    jvGifCtrl avec une classe TjvGIFAnimator

    Ami calmant, J.P

    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  12. #72
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 726
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 726
    Points : 15 126
    Points
    15 126
    Par défaut Grande avancée dans le projet espagnol
    Yep !

    Il fallait remplacer son CopyMemory dédié Delphi/Windows par Move, mais ce ne fut pas simple.

    D'abord un exemple d'utilisation correcte sous Windows, dans la proc UnZipImage, pour tester :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    CopyMemory (@b[0], GifLZW, blocksize); // original ok
    // remplacé par 
    System.Move(GifLZW^, b[0], blocksize); // rendu ok
    //avec 
    GifLZW: PByte 
    b: array [0..255] of BYTE.
    Là où ce fut laborieux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    CopyMemory (FBmpStream.ScanLine(Nexline),  linebuffer, width) // original ok
    System.Move(linebuffer, FBmpStream.ScanLine(Nexline)^, width) // rendu en vrac
    //avec 
    FBmpStream:  TBitmapStream;
      TBitmapStream = class (TMemoryStream)
        function  ScanLine(Line: DWORD): Pointer;
          Nexline: WORD;      
    linebuffer:  array of BYTE;    // Place to store the current line
    Il m'aura fallu rajouter :
    et dans le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    begin
    ...
    //  avant la boucle
      lb := linebuffer; // jpt
    // et dans la boucle
      System.Move(lb^, FBmpStream.ScanLine(Nexline)^, width)
    Les tests sous Linux sont concluants, plus qu'à faire avancer le reste, le problème du background et je n'ai pas encore trouvé où son code se cache

    J.P, merci pour la piste jvcl que je garde précieusement dans un coin pour étude et voir ensuite comment l'utiliser.
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  13. #73
    Expert confirmé
    Avatar de BeanzMaster
    Homme Profil pro
    Amateur Passionné
    Inscrit en
    Septembre 2015
    Messages
    1 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Amateur Passionné
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2015
    Messages : 1 899
    Points : 4 346
    Points
    4 346
    Billets dans le blog
    2
    Par défaut
    Salut Jipete

    Comme je te l'avait dit par mp j'ai eu un peu de temps ce week-end. J'ai donc créé un petit composant indépendant pour visualiser les fichiers GIF depuis les sources mon projet. J'ai extrait la procédure de chargement et j'ai extrait quelques parties que j'ai simplifié au maximum. Tout fonctionne bien ou presque. Cela fait 2 jours que je me casse la tête sur un bug avec un TObjectList. (FRenderCache dans TGIFViewer dans la procedure ComputeCache pour être exacte)

    Pour résumer tous les GIF de l'imageTestSuite s'affichent parfaitement., comme dans mon outils DragZNView. Sauf qu'il y a un bug dès qu'une animation est jouée, que tu la stoppe et que tu recharges un autre fichier l'application génère un jolie SIGSEGV . Si tu ne joue pas l'animation tout fonctionne correctement. . Je n'arrive pas à voir ce qui cloche. Je poste donc les sources temporaires ici. A plusieurs (Si il y a des personnes qui passent par là et qui pourrait également jeter un oeil cela serait cool ) on pourrait trouver la solution. Je n'arrive pas à mettre le doigt sur ce qui cloche et ça m'énerve

    EDIT : J'ai essayé plusieurs trucs mais sans résultats positifs

    GIFVIew.zip

    Merci

    A+
    • "L'Homme devrait mettre autant d'ardeur à simplifier sa vie qu'il met à la compliquer" - Henri Bergson
    • "Bien des livres auraient été plus clairs s'ils n'avaient pas voulu être si clairs" - Emmanuel Kant
    • "La simplicité est la sophistication suprême" - Léonard De Vinci
    • "Ce qui est facile à comprendre ou à faire pour toi, ne l'est pas forcément pour l'autre." - Mon pèrei

    Mes projets sur Github - Blog - Site DVP

  14. #74
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 950
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 950
    Points : 9 279
    Points
    9 279
    Par défaut
    hello,
    il y a aussi un SIGSEGV quand on ferme la fenêtre après avoir joué une animation. Les exceptions arrivent sur la libération de FCurrentView :
    Pour le rejeu d'une autre animation dans ComputeCache :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    Procedure TGIFViewer.ComputeCache;
    Var  I : Integer;
      TmpBmp : Graphics.TBitmap;
    Begin
      FCurrentFrameIndex := 0;
     // if Assigned(FRenderCache) then FRenderCache.Free;
     // FRenderCache := TGIFRenderCacheList.Create(True);
      FRenderCache.Clear;
      if Assigned(FCurrentView) then FreeAndNil(FCurrentView);  // Exception ici
      FCurrentView := Graphics.TBitmap.Create;
      if FGIFLoader.FrameCount>0 then
      begin
        For I:=0 to Pred(FGIFLoader.FrameCount) do
        begin
           FRenderCache.AddNewCache;
           FRenderCache.Items[I].Delay := FGIFLoader.Frames[I].Delay;
           TmpBmp := RenderFrame(I);
           FRenderCache.Items[I].Bitmap.Assign(TmpBmp);
           FreeAndNil(TmpBmp);
        End;
        FAnimateTimer.Interval :=  FRenderCache.Items[0].Delay;
        FCurrentView.Assign(FRenderCache.Items[0].Bitmap);
      End;
    End;
    Pour la fermeture de fenêtre après avoir joué une animation dans le Destroy du TGIFViewer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Destructor TGIFViewer.Destroy;
      Begin
      FAnimateTimer.Enabled := False;
      FreeAndNil(FAnimateTimer);
      if Assigned(FCurrentView) then FreeAndNil(FCurrentView);  // Exception ici
      if Assigned(FRenderCache) then FRenderCache.Free;
      if Assigned(FGIFLoader) then FreeAndNil(FGIFLoader);
      FreeAndNil(FVirtualView);
      Inherited Destroy;
    End;
    si on met les lignes avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if Assigned(FCurrentView) then FreeAndNil(FCurrentView);
    en commentaire, il n'y a plus d'exception.
    A noter aussi qu'il semblerait qu'il y ait une fuite mémoire entre chaque chargement de Gif animé (même sans jouer l'animation).
    Ami calmant, J.P (sans T)
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  15. #75
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 726
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 726
    Points : 15 126
    Points
    15 126
    Par défaut
    Salut salut,

    et merci à toi d'avoir tenu ta promesse.

    Compte-rendu de mes manips :
    amis linuxiens, pour ne pas tomber dans le piège classique de la sensibilité à la casse des caractères, pensez, dans le uses de umainform, à remplacer uGIFViewer par uGifViewer.

    Ensuite, il doit manquer un bout de code quelque part (ToString inconnu), toujours est-il que j'ai dû remplacer une dizaine de fois (c'est pas la mort) les lignes genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Raise Exception.Create(sBadScreenSize + ' : ' +FWidth.ToString+'x'+FHeight.ToString);
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Raise Exception.Create(sBadScreenSize + ' : ' +IntToStr(FWidth)+'x'+IntToStr(FHeight));

    Enfin, je ne me suis pas pris la tête et ai appliqué les modif's suggérées par l'ami jurassic pork et je n'ai pas constaté de SigSegv ou autres insultes,

    Citation Envoyé par jurassic pork Voir le message
    A noter aussi qu'il semblerait qu'il y ait une fuite mémoire entre chaque chargement de Gif animé (même sans jouer l'animation).
    il manque peut-être une ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Destructor TGIFImageLoader.Destroy;
    Begin
      FreeAndNil(FFrames);
      FreeAndNil(FErrorList);
      If Memory <> nil then FreeAndNil(Memory); // jpt
      Inherited Destroy;
    End;
    mais je n'ai pas vérifié avec les outils qui vont bien.

    Nota : le code de "Parcourir images brutes" est absent, c'est dommage.

    Les problèmes :
    la boule rouge du wiki s'affiche ainsi au drag'n'drop :
    Nom : fond_blanc.png
Affichages : 175
Taille : 400 octets
    mais au lancement de l'animation il y a un désagréable effet de flicker et en effet j'ai découvert une image sans fond :
    Nom : fond transparent.png
Affichages : 195
Taille : 352 octets

    ma pauvre girl a un petit souci de rendu sur la dernière image (j'ai changé la couleur de transparence, ça se voit mieux en rouge) :
    Nom : défaut_girl.png
Affichages : 262
Taille : 61,7 Ko

    Ce qui est rigolo, c'est que c'est exactement le problème qui me préoccupe depuis ce week-end (car sinon le projet espagnol fonctionnerait bien) :
    image 0, complète :
    Nom : tmp0.png
Affichages : 182
Taille : 22,2 Ko

    une parmi les autres images :
    Nom : tmp1.png
Affichages : 193
Taille : 18,8 Ko

    Attention, n'utilisez pas ces images pour travailler, ce sont des png (le forum refuse les bmp -- je peux les fournir, au besoin).

    Je suis d'ailleurs en train de me battre avec le projet d'exemple .../lazarus/version/examples/canvas_test et là, le bouton Show Draw Dialog : j'ai déjà noté des différences de rendu entre Windows et Linux, ce qui ne va rien arranger...

    PS :
    Citation Envoyé par Jipété Voir le message
    J.P, merci pour la piste jvcl que je garde précieusement dans un coin pour étude et voir ensuite comment l'utiliser.
    Inutilisable : il y a des fichiers partout, c'est un puits sans fond...
    Mais j'en retiens que la gestion des gif's n'est pas, loin de là, une affaire simple !
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  16. #76
    Expert confirmé
    Avatar de BeanzMaster
    Homme Profil pro
    Amateur Passionné
    Inscrit en
    Septembre 2015
    Messages
    1 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Amateur Passionné
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2015
    Messages : 1 899
    Points : 4 346
    Points
    4 346
    Billets dans le blog
    2
    Par défaut
    Salut JP
    Citation Envoyé par jurassic pork Voir le message
    hello,

    si on met les lignes avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if Assigned(FCurrentView) then FreeAndNil(FCurrentView);
    en commentaire, il n'y a plus d'exception.
    A noter aussi qu'il semblerait qu'il y ait une fuite mémoire entre chaque chargement de Gif animé (même sans jouer l'animation).
    Ami calmant, J.P (sans T)
    J'avais déja notifier ça. Mais c'est carrément pas normal comme comportement. Car j'utilise FCurrentView.Assign(FRenderCache.Items[0].Bitmap); et non FCurrentView := FRenderCache.Items[0].Bitmap;. Normalement FCurrentView ne devrait pas être libéré par FRenderCache.Clear ou FRenderCache.Destroy;Je vais remettre mon code tel qu'il était au départ. Au début je n'avait pas ces if Assigned...... Les objets étaient naturellement créés dans le Create et détruit dans le Destroy

    Je vais regarder ça maintenant. J'ai un peu de temps.

    Merci
    • "L'Homme devrait mettre autant d'ardeur à simplifier sa vie qu'il met à la compliquer" - Henri Bergson
    • "Bien des livres auraient été plus clairs s'ils n'avaient pas voulu être si clairs" - Emmanuel Kant
    • "La simplicité est la sophistication suprême" - Léonard De Vinci
    • "Ce qui est facile à comprendre ou à faire pour toi, ne l'est pas forcément pour l'autre." - Mon pèrei

    Mes projets sur Github - Blog - Site DVP

  17. #77
    Expert confirmé
    Avatar de BeanzMaster
    Homme Profil pro
    Amateur Passionné
    Inscrit en
    Septembre 2015
    Messages
    1 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Amateur Passionné
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2015
    Messages : 1 899
    Points : 4 346
    Points
    4 346
    Billets dans le blog
    2
    Par défaut
    Me revoila
    Salut,
    Citation Envoyé par Jipété Voir le message
    Salut salut,

    et merci à toi d'avoir tenu ta promesse.

    Compte-rendu de mes manips :
    amis linuxiens, pour ne pas tomber dans le piège classique de la sensibilité à la casse des caractères, pensez, dans le uses de umainform, à remplacer uGIFViewer par uGifViewer.
    Pas de problèmes

    Citation Envoyé par Jipété Voir le message

    Ensuite, il doit manquer un bout de code quelque part (ToString inconnu), toujours est-il que j'ai dû remplacer une dizaine de fois (c'est pas la mort) les lignes genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Raise Exception.Create(sBadScreenSize + ' : ' +FWidth.ToString+'x'+FHeight.ToString);
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Raise Exception.Create(sBadScreenSize + ' : ' +IntToStr(FWidth)+'x'+IntToStr(FHeight));
    Oui c'est apparu à partie de la version 1.8 je crois. Bref pas grave je t'ai rajouté mon unité "TypesHelpers" sinon des petit IntToStr font l'affaire.


    Citation Envoyé par Jipété Voir le message
    Nota : le code de "Parcourir images brutes" est absent, c'est dommage.
    je viens de rajouté cette fonctionnalité

    Citation Envoyé par Jipété Voir le message
    Les problèmes :
    la boule rouge du wiki s'affiche ainsi au drag'n'drop :

    mais au lancement de l'animation il y a un désagréable effet de flicker et en effet j'ai découvert une image sans fond :

    ma pauvre girl a un petit souci de rendu sur la dernière image (j'ai changé la couleur de transparence, ça se voit mieux en rouge) :
    Nom : défaut_girl.png
Affichages : 262
Taille : 61,7 Ko
    Je n'ai pas ces problèmes sous Windows avec la nouvelle version. Je testerrai ce soir sous Linux et Mac car je n'ai plus beaucoup de temps.

    Nom : 2018-06-20_161147.jpg
Affichages : 211
Taille : 42,5 Ko

    Citation Envoyé par jurassic pork Voir le message
    A noter aussi qu'il semblerait qu'il y ait une fuite mémoire entre chaque chargement de Gif animé (même sans jouer l'animation).
    Oui effectivement il y 'en avait. Le TObjectList est un peu pointilleux d'utilisation (j'utilise une classe maison pour mon projet et je me prend moins la tête)

    Merci du coup de main J'ai donc tracé les fuites de mémoire et de fil en aiguille cela à solutionner les problèmes d'exception et il n'y a plus aucune fuites

    Voila la nouvelle version : GIFVIew.zip

    Dites moi si vous voyez des erreurs ou des défauts. Mais ce petit composant devrait fonctionner nickel à présent.

    A+

    EDIT : J'ai juste oublié de changeruGIFViewer par uGifViewer dans uMainForm
    • "L'Homme devrait mettre autant d'ardeur à simplifier sa vie qu'il met à la compliquer" - Henri Bergson
    • "Bien des livres auraient été plus clairs s'ils n'avaient pas voulu être si clairs" - Emmanuel Kant
    • "La simplicité est la sophistication suprême" - Léonard De Vinci
    • "Ce qui est facile à comprendre ou à faire pour toi, ne l'est pas forcément pour l'autre." - Mon pèrei

    Mes projets sur Github - Blog - Site DVP

  18. #78
    Expert confirmé
    Avatar de BeanzMaster
    Homme Profil pro
    Amateur Passionné
    Inscrit en
    Septembre 2015
    Messages
    1 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Amateur Passionné
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2015
    Messages : 1 899
    Points : 4 346
    Points
    4 346
    Billets dans le blog
    2
    Par défaut
    Juste un petit truc que j'ai oublié dans ma hâte

    Dans l'unité uFastBitmap à la ligne 803 dans la fonction Clone il faut supprimer FreeAndNil(NewBmp);et il faut rajouter dans uGifViewer à la ligne 1835 dans le Destructor TGIFViewer.Destroy en dessous de if FCurrentView<>nil then FreeAndNil(FCurrentView); la ligne : if FRestoreBitmap<>nil then FreeAndNil(FRestoreBitmap);et voila ça me semble tout bon maintenant
    • "L'Homme devrait mettre autant d'ardeur à simplifier sa vie qu'il met à la compliquer" - Henri Bergson
    • "Bien des livres auraient été plus clairs s'ils n'avaient pas voulu être si clairs" - Emmanuel Kant
    • "La simplicité est la sophistication suprême" - Léonard De Vinci
    • "Ce qui est facile à comprendre ou à faire pour toi, ne l'est pas forcément pour l'autre." - Mon pèrei

    Mes projets sur Github - Blog - Site DVP

  19. #79
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 726
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 726
    Points : 15 126
    Points
    15 126
    Par défaut
    Bonsoir,

    j'ai mis en place la nouvelle version et l'ai testée sous XP / Laz 1.8.2. Rien de particulier à dire.

    Mais à l'usage, avec la balle rouge du wiki c'est très bizarre : l'examen des images une par une montre des déformations résumées dans le .gif ci-dessous (nota : j'ai allongé le Delay afin de bien voir les différentes images, qui ont été générées par copie d'écran depuis le fichier d'origine en mode image par image, et remarquez aussi le changement de teinte de l'ombre de la balle) :
    Nom : ballebondissante.gif
Affichages : 169
Taille : 5,6 Ko
    déformations non visibles quand on examine en mode "animation" le fichier d'origine où la balle est bien ronde.

    Quelqu'un pour expliquer ce mystère ?

    Autre mystère : sous Linux le premier passage des 8 images les montre sur un fond blanc, qui va devenir transparent à partir du deuxième passage, pb non constaté sous XP où le fond est toujours blanc.

    PS : merci pour la prise en compte du mode image par image, c'est un complément absolument nécessaire, :ccool;


    Et sinon, je continue à me battre avec Canvas.Rectangle, je suis sur la piste d'un bug, stay tuned !
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  20. #80
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 950
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 950
    Points : 9 279
    Points
    9 279
    Par défaut
    hello,
    j'ai pris ta dernière version et fait les modifications qui sont indiquées dans le message qui suivait :
    Cela semble en effet beaucoup mieux fonctionner : plus de plantage, l'image qui est bien remise à zéro avant le chargement d'un nouveau gif

    Par contre il semble toujours y avoir une fuite mémoire (beaucoup moins importante qu'avant) :
    Pour la constater, charger le gif 38732719.gif (de plus de 2Mo) plusieurs fois de suite --> A chaque chargement, je me prends 3Mo de mémoire en plus sous windows 10).

    Ami calmant, J.P (sans T)
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

Discussions similaires

  1. [Lazarus] [Linux/Windows] Bug de Canvas.Rectangle ou mauvaise utilisation ?
    Par Jipété dans le forum Lazarus
    Réponses: 5
    Dernier message: 22/06/2018, 10h43
  2. Logiciel pr emulation d'autres OS ( linux, windows...)
    Par elitost dans le forum Autres Logiciels
    Réponses: 8
    Dernier message: 14/07/2005, 17h16
  3. snmp linux windows
    Par Aramis dans le forum Développement
    Réponses: 2
    Dernier message: 19/06/2005, 23h39
  4. Réponses: 13
    Dernier message: 13/03/2005, 20h56
  5. Les fichiers sous linux/windows
    Par Stessy dans le forum Linux
    Réponses: 5
    Dernier message: 05/12/2003, 09h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo