<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en-us" xmlns="http://www.w3.org/2005/Atom"><title>Simon Willison's Weblog: base64</title><link href="http://simonwillison.net/" rel="alternate"/><link href="http://simonwillison.net/tags/base64.atom" rel="self"/><id>http://simonwillison.net/</id><updated>2009-04-17T16:12:12+00:00</updated><author><name>Simon Willison</name></author><entry><title>Cross Browser Base64 Encoded Images Embedded in HTML</title><link href="https://simonwillison.net/2009/Apr/17/base64/#atom-tag" rel="alternate"/><published>2009-04-17T16:12:12+00:00</published><updated>2009-04-17T16:12:12+00:00</updated><id>https://simonwillison.net/2009/Apr/17/base64/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.hedgerwow.com/360/dhtml/base64-image/demo.php"&gt;Cross Browser Base64 Encoded Images Embedded in HTML&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Scarily clever. View the PHP source to see what’s going on—most browsers get image tags that use data URIs starting with data:image/png;base64, but IE gets served a Content-type:message/rfc822 header and a MIME formatted multipart/related document, as used by e-mail clients to embed inline image attachments.

    &lt;p&gt;&lt;small&gt;&lt;/small&gt;Via &lt;a href="http://blog.hedgerwow.com/2009/04/16/updatecross-browser-base64-encoded-images-embedded-in-html/"&gt;HedgerWow&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/base64"&gt;base64&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/browsers"&gt;browsers&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/hedger-wang"&gt;hedger-wang&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/internet-explorer"&gt;internet-explorer&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/mime"&gt;mime&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/php"&gt;php&lt;/a&gt;&lt;/p&gt;



</summary><category term="base64"/><category term="browsers"/><category term="hedger-wang"/><category term="internet-explorer"/><category term="mime"/><category term="php"/></entry><entry><title>URLsafe base64 encoding/decoding in two lines</title><link href="https://simonwillison.net/2008/Aug/28/fam/#atom-tag" rel="alternate"/><published>2008-08-28T09:57:56+00:00</published><updated>2008-08-28T09:57:56+00:00</updated><id>https://simonwillison.net/2008/Aug/28/fam/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://fi.am/entry/urlsafe-base64-encodingdecoding-in-two-lines/"&gt;URLsafe base64 encoding/decoding in two lines&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
A much better solution than my base65 hack—if you understand how base64 padding works (I didn’t) you can use it to generate URL-safe compressed hashes. Performance should be significantly better than my version.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/base64"&gt;base64&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/base65"&gt;base65&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/python"&gt;python&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/urlsafe"&gt;urlsafe&lt;/a&gt;&lt;/p&gt;



</summary><category term="base64"/><category term="base65"/><category term="python"/><category term="urlsafe"/></entry></feed>