Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Embed Base 64 Images (https://www.delphipraxis.net/146099-embed-base-64-images.html)

win568 13. Jan 2010 12:38


Embed Base 64 Images
 
Hi

Ich möchte gerne Images Base64 encodieren und in ein HTML Dokument einbetten (Ja ich weiss, ist nicht performant und braucht doppelt soviel Platz wie nötig usw.). Die Funktion muss aber trotzdem umgesetzt werden. Das HTML Tag ist ja recht einfach, wie kann ich aber nun ein beliebiges Image Base64 encodieren ?? Gibts da vielleicht einen Beispielcode ??

TurboMartin 13. Jan 2010 13:35

Re: Embed Base 64 Images
 
Eingebettet sieht das so aus:
Code:
<img src="data:image/gif;base64,R0lGODlhEAAOALMAAOazToeHh0tLS/7LZv/0jvb29t/f3//Ub/
/ge8WSLf/rhf/3kdbW1mxsbP//mf///yH5BAAAAAAALAAAAAAQAA4AAARe8L1Ekyky67QZ1hLnjM5UUde0ECwLJoExKcpp
V0aCcGCmTIHEIUEqjgaORCMxIC6e0CcguWw6aFjsVMkkIr7g77ZKPJjPZqIyd7sJAgVGoEGv2xsBxqNgYPj/gAwXEQA7"
width="16" height="14" alt="embedded folder icon">
Einfach das Bild, in ein beliebiges Bildformat exportieren und anschließend base64 drüberlaufen lassen und wie oben gezeigt in HTML einebetten.
Der FF kann das einwandfrei anzeigen, der IE macht das nur bis zu einer gewissen größe mit.

win568 13. Jan 2010 14:16

Re: Embed Base 64 Images
 
Welche Methode kann man da zum Base64 encodieren aufrufen ?? Habt ihr da was ??

himitsu 13. Jan 2010 15:25

Re: Embed Base 64 Images
 
Such einfach mal im Forum nach Hier im Forum suchenBase64, da wurde schon öfters mal was erwähnt.

In den Indy steckt was drin (weiß nur gerade nicht, wie es heißt)

und im Notfall wäre in meiner Hier im Forum suchenhimXML.pas eine Prozedur enthalten, welche man sich auch rauskopieren und etwas anpassen (falls das Unicode nicht nötig ist) könnte.
Delphi-Quellcode:
Procedure Crypt_Base64Encode(Const Source: TByteDynArray; Var Dest: WideString);

win568 18. Mär 2010 09:42

Re: Embed Base 64 Images
 
Hi

Habe nun die Images in den HTML Code einbauen können. Mir ist aber folgendes aufgefallen.
Wenn das Image > ~2KB ist, wird nicht mehr das ganze Image angezeigt, sondern nur ein Teil.
Der Rest bleibt weiss. Das angezeigte Bild hat aber die richtige Größe. :wall:

win568 10. Jun 2010 08:16

AW: Embed Base 64 Images
 
Keiner eine Idee ??

himitsu 10. Jun 2010 08:32

AW: Embed Base 64 Images
 
Eventuell hat der URL-Puffer (oder wie auch immer man das nennen will, was man alles im SRC-Attribut angeben kann) im Browser eine Begrenzung von 8 KB (4096 Zeichen) ?
Wenn dem so ist, dann gibt es keine Lösung.

ele 10. Jun 2010 10:25

AW: Embed Base 64 Images
 
Bei meinen Experimenten mit Data-URIs habe ich keine solche Begrenzung festgestellt. Ich habe die Experimente allerdings mit Firefox durchgeführt. Ich wette du benutzt IE... siehe auch Bemerkung von TurboMartin.


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:24 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz