8
votes

Erreur Delphi - JPEG # 53

timage.picture.loadfromfile ('fichier.jpg');

Mais j'ai Erreur JPEG # 53 ! Quelle est la raison de cette erreur?


0 commentaires

5 Réponses :


5
votes

Cela se produit-il à une seule image JPEG ou avec tous les JPEG que vous essayez?

Erreur JPEG # 53 L'erreur sera due à une mémoire insuffisante.

Si le fichier est corrompu, cette erreur peut se produire.

Ainsi, l'ouverture de cette image dans la peinture ou la Photoshop et la récupération dans JPEG peut résoudre le problème.


0 commentaires

-5
votes

Mon problème résolu en utilisant Tadvpicture Composeenet.


3 commentaires

Pouvez-vous mentionner comment vous avez résolu votre problème en utilisant Tadvpicture, je reçois aussi un type d'erreur similaire, mais l'image n'est pas corrompue du tout, je peux afficher les données d'image dans SQLite et extraire l'image correctement sur un autre logiciel. Je ne sais pas pourquoi je reçois une erreur JPEG # 53


Tadvpicture ne relèvera tout simplement pas de l'erreur, il affichera la photo de mieux qu'il peut, puis arrêter. Je l'ai également retourné comme une solution, car je ne peux pas arrêter l'erreur en utilisant un essai ... Sauf, et je ne veux pas vraiment avoir à modifier le code dans la VCL. Tadvpicture est un composant du logiciel TMS (ce n'est pas une publicité)


Si quelqu'un a besoin d'une composante pouvait être trouvée, si vous avez résolu ce problème de manière correcte avec suffisamment d'explication, puis raconté de certains composants que je n'avais aucun problème, mais cela: vous venez de décrire un problème comme une question et que vous trouvez soudainement vous trouver un composant et Shazam quoi que ce soit le travail !!! Ce n'est pas la bonne manière ici.



8
votes

Cela vient généralement lorsque l'image JPEG est téléchargée à partir d'Internet et que le téléchargement n'est pas complet à 100%. Cela peut arriver même avec le timage. Malheureusement, JPEG n'a pas de somme de contrôle pour vérifier.

Le seul pense que vous pouvez faire est chaque fois que cette erreur est lancée pour l'attraper et afficher un message plus réactif comme "l'image est corrompue". P>

Puisque cela soulève l'erreur: p> xxx pré>

où p> xxx pré>

Vous pouvez essayer d'attraper une erreur EJPEG et de vérifier # 53 dans Le message. P>

Depuis EJPEG hérite d'Einvalidgraphic, vous pouvez simplement l'attraper avec P>

catch
  on E: EInvalidGraphic do
  begin
    ShowMessage('Image file is corrupted.')
  end;
end;


0 commentaires

1
votes

S'il vous plaît essayer de suivre pour résoudre "Erreur JPEG # 53" si elle se produit à cet état timage.picture.loadfromfile ("fichier.jpg") xxx

Notez que le fichier fichier.jpg doit exister à l'emplacement fourni.


1 commentaires

C'est juste faux. Comment un TBITMAP pourrait-il s'attendre à charger un JPEG? TBITMAP peut charger, UHM, bitmaps. [Le bowtvote n'est pas à moi si]



2
votes

J'ai aussi eu l'erreur # 53. Il s'est avéré que l'erreur ne s'est produite qu'après que j'avais sauvegardé à tort un bitmap avec l'extension * .jpg. La solution évidente consistait à transformer ce bitmap en jpeg et à le sauver alors: -).


0 commentaires