好了,所以我知道我可以將圖像轉換爲base64,然後添加到我的HTML。 base64的問題是它產生的數據在我的情況下比我的png圖像文件大33%,這是一個最大壓縮的300KB css sprite。內嵌圖像無的base64
是否有任何方式,而不使用Base64發送圖像數據,然後將其組裝成在客戶機上的圖像?
我想發送十六進制的圖像數據,然後使用JavaScript將其轉換爲base64。似乎是可能的,但是令人難以置信的多餘,因爲它將立即從base64解碼回來,以供顯示。
任何想法?
好了,所以我知道我可以將圖像轉換爲base64,然後添加到我的HTML。 base64的問題是它產生的數據在我的情況下比我的png圖像文件大33%,這是一個最大壓縮的300KB css sprite。內嵌圖像無的base64
是否有任何方式,而不使用Base64發送圖像數據,然後將其組裝成在客戶機上的圖像?
我想發送十六進制的圖像數據,然後使用JavaScript將其轉換爲base64。似乎是可能的,但是令人難以置信的多餘,因爲它將立即從base64解碼回來,以供顯示。
任何想法?
我只是做了一些測試,以檢查文件的大小,我發現沒有顯著差異。
的sizeof(gzip的(index.html的+ sprite.png))= 301KB
的sizeof(gzip的(index_inline_b64_sprite.html))= 302KB
雖然BASE64文本比PNG文件大約33%本身,一旦gzipped它似乎沒有任何顯着的差異。
一旦你認爲無論什麼解決方案可能會有嚴重的跨瀏覽器,甚至可能會把奇怪的十六進制安全問題附加到html文件中,在我看來,這似乎是一個更好的解決方案,只需堅持base64。
也感謝Barmar用於指出ASCII十六進制在HTML會大得多,我並沒有意識到,在第一。
什麼問題是你想解決? – Sampson
十六進制比bas64差得多,它將比原始文件大100%(一個8位字節是兩個十六進制字符)。 – Barmar
謝謝巴爾馬我沒有意識到這一點。 –