Kodowanie w formacie base64 umożliwia przesyłanie danych binarnych w postaci tekstowej (np. w mailu). Pliki takie zajmują ok. 33% więcej miejsca, ale niewątpliwą zaletą jest umieszczenie obrazu bezpośrenio w kodzie HTML! więcej można poczytać w specyfikacji RFC 1421 i RFC 2045.
Gdy piszę bezpośrednio mam na myśli to, że obrazek jest umieszcony w kodzie HTML a nie tylko odnośnik do niego.
Dzięki takiemu rozwiązaniu, np w mailu, możemy przesłać dokument html z obrazkiem wewnątrz tego dokumentu, a nie osobno dokument html i osobno obrazki (obrazy są częścią kodu HTML!).
Aby umieścić obraz bezpośrednio w kodzie witryny należy zakodować go do postaci base64 i umieścić wewnątrz następującego znacznika img: <img src="data:image/gif;base64,[kod]" alt="alternatywny tekst" title="tytuł" />
gdzie [kod] jest kodem obrazka w postaci base64. Należy też odpowiednio zmodyfikować data:image/gif
.
Np ta buźka jest wygenerowana przez kod:
<img src="data:image/gif;base64,R0lGODlhCgAKAJEAAAAAAP///81Wv81WvyH5BAEAAAMALAAAAAAKAAoAAAIUjIViq+x7QpunwXoZ lXFu/mjIUgAAOw==" alt="buźka" />
To oczywiście nie działa w IE, co jest kolejnym powodem dla zmiany przeglądarki na dobre!