亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

js手札--圖片的Base64編碼

junfeng777 / 1655人閱讀

摘要:一編碼在聊圖片編碼之前,先來(lái)說(shuō)說(shuō)編碼,其實(shí)這一塊已經(jīng)有很多例子了。一次連接又是域名解析,開(kāi)啟連接,發(fā)送請(qǐng)求,等待網(wǎng)絡(luò)延遲和服務(wù)器處理時(shí)間,下載資源較小是幾個(gè)意思

一、Base64編碼

在聊圖片編碼之前,先來(lái)說(shuō)說(shuō)Base64編碼,其實(shí)這一塊已經(jīng)有很多例子了。

Base64編碼么,其實(shí)就是一個(gè)招待好6爺伺候好8爺的過(guò)程

Base64是把字符串轉(zhuǎn)為二進(jìn)制,然后末尾補(bǔ)零,使總長(zhǎng)度能除盡24

24這個(gè)太上皇怎么來(lái)的:是6爺與8爺?shù)墓稊?shù)

6爺怎么來(lái)的: Base64是一個(gè)對(duì)照表,有64個(gè)符號(hào),大小寫字母,數(shù)字,加號(hào),斜杠(/)。特殊字符(=)除外可以用6個(gè)二進(jìn)制位來(lái)表示這個(gè)64個(gè)字符

8爺怎么來(lái)的:一個(gè)字符8位(ASCII碼對(duì)應(yīng)二進(jìn)制)

1.Base64是因?yàn)橛?4個(gè)字符來(lái)做對(duì)照,所以,可以用6個(gè)二進(jìn)制位數(shù)來(lái)表示(編碼過(guò)后的字符):如:

『000000』代表A,『111111』代表/

2.所以嘛,我們需要做的就是把要編碼的字符(一個(gè)字符8位,對(duì)照ASCII)6等分,這樣好用Base64來(lái)表示,如:

A => 『01000001』=>(6等分)  『010000』『01』

3.但你也看到了,最后的不足6位啊,那沒(méi)問(wèn)題,補(bǔ)零,就行了

『010000』『010000』

4.這樣的東東,在Base64中是能找到對(duì)應(yīng)的值,但是,我要把他在轉(zhuǎn)換成正確的字符A就不行了

『010000010000』=> A『0000』

5.缺了4位,那咋辦,那就再添加4位咯

『010000010000』=> 『010000』『010000』『0000』

6.但加了4位又不能用Base64來(lái)表示了,少了2位,唉,既要伺候好6爺,又得服侍好8爺真心不容易啊,其實(shí)添了2還是不行的,反正就是這么補(bǔ)0下去,最后就變成了

『010000』『010000』『000000』『000000』

用Base64一對(duì)照看到是(0=表示)QQ==

OK

圖片的Base64編碼

例如:url:data:text/jpeg;base64,XXXXXXX==

data:[];[=chartset];[],

/**
  data:font/woff,字體
  data:text/plain,文本數(shù)據(jù)
  data:text/html,HTML代碼
  data:text/css;base64,css代碼
  data:text/javascript;base64,javascript代碼
  data:image/x-icon;base64,base64編碼的icon圖片數(shù)據(jù)
  data:image/gif;base64,base64編碼的gif圖片數(shù)據(jù)
  data:image/png;base64,base64編碼的png圖片數(shù)據(jù)
  data:image/jpeg;base64,base64編碼的jpeg圖片數(shù)據(jù)
*/
body { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAADCAIAAAA7ljmRAAAAGElEQVQIW2P4DwcMDAxAfBvMAhEQMYgcACEHG8ELxtbPAAAAAElFTkSuQmCC");}

特點(diǎn)

不像訪問(wèn)圖片地址那樣緩存起來(lái),而是直接存在css/js中,隨著css/js緩存的

由于是base64編碼的,一般都比原圖片要大1/3(故而一般得配合gzip壓縮)

解決啥?

減少對(duì)服務(wù)器的請(qǐng)求(這里帶出一個(gè)問(wèn)題--為什么要減少對(duì)服務(wù)器的請(qǐng)求?)

缺點(diǎn)

IE8之前都不會(huì)支持(需要hack技術(shù),但I(xiàn)E9的IE7兼容模式可以)

適用

圖片比較?。ㄟ@個(gè)較小又是幾個(gè)意思?),如果圖片過(guò)大,會(huì)導(dǎo)致css或者js文件過(guò)大,而導(dǎo)致阻塞

同類

Image maps

css sprites

題外話

為什么要減少對(duì)服務(wù)器的請(qǐng)求?

1.請(qǐng)求頭420byte和返回頭600多比特肯定少不了的,此外請(qǐng)求還可能會(huì)攜帶。

2.一次http連接又是:域名解析,開(kāi)啟TCP連接,發(fā)送請(qǐng)求,等待(網(wǎng)絡(luò)延遲和服務(wù)器處理時(shí)間),下載資源

較小是幾個(gè)意思

http://www.jianshu.com/p/486f...

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/86927.html

相關(guān)文章

  • 前端臨床手札——webpack構(gòu)建逐步解構(gòu)(上)

    摘要:前言由于博主最近又閑下來(lái)了,之前覺(jué)得的官方文檔比較難啃一直放到現(xiàn)在。文章會(huì)逐步分析每個(gè)處理的用意當(dāng)然是博主自己的理解,不足之處歡迎指出溝通交流。后續(xù)將會(huì)補(bǔ)上構(gòu)建生產(chǎn)的配置分析,案例參考。前端臨床手札構(gòu)建逐步解構(gòu)下 前言 由于博主最近又閑下來(lái)了,之前覺(jué)得webpack的官方文檔比較難啃一直放到現(xiàn)在。細(xì)心閱讀多個(gè)webpack配置案例后覺(jué)得還是得自己寫個(gè)手腳架,當(dāng)然這個(gè)案例是基于vue的,...

    lowett 評(píng)論0 收藏0
  • 【freemaker實(shí)現(xiàn)導(dǎo)出word③】詳解將echarts圖片到出到word

    摘要:前面介紹了導(dǎo)出到的代碼實(shí)現(xiàn),詳見(jiàn)這里,里面有一部分涉及導(dǎo)出圖片到,在這里我再另外做一個(gè)詳細(xì)的介紹。在前臺(tái)用將生成的圖片轉(zhuǎn)成編碼,提交給后臺(tái)。 前面介紹了導(dǎo)出到word的代碼實(shí)現(xiàn),詳見(jiàn)這里,里面有一部分涉及導(dǎo)出圖片到word,在這里我再另外做一個(gè)詳細(xì)的介紹。是這樣的,我項(xiàng)目有個(gè)功能,里面就涉及到要將echarts形成的柱狀圖或者地圖之類的圖表導(dǎo)出到word,在網(wǎng)上找了很久,都是說(shuō)將圖片轉(zhuǎn)...

    flyer_dev 評(píng)論0 收藏0
  • 【freemaker實(shí)現(xiàn)導(dǎo)出word③】詳解將echarts圖片到出到word

    摘要:前面介紹了導(dǎo)出到的代碼實(shí)現(xiàn),詳見(jiàn)這里,里面有一部分涉及導(dǎo)出圖片到,在這里我再另外做一個(gè)詳細(xì)的介紹。在前臺(tái)用將生成的圖片轉(zhuǎn)成編碼,提交給后臺(tái)。 前面介紹了導(dǎo)出到word的代碼實(shí)現(xiàn),詳見(jiàn)這里,里面有一部分涉及導(dǎo)出圖片到word,在這里我再另外做一個(gè)詳細(xì)的介紹。是這樣的,我項(xiàng)目有個(gè)功能,里面就涉及到要將echarts形成的柱狀圖或者地圖之類的圖表導(dǎo)出到word,在網(wǎng)上找了很久,都是說(shuō)將圖片轉(zhuǎn)...

    endless_road 評(píng)論0 收藏0
  • SphinxJS——把字符串編碼成png圖片超輕量級(jí)開(kāi)源庫(kù)

    摘要:體驗(yàn)地址項(xiàng)目地址一個(gè)能夠把字符串編碼成圖片,或者從圖片中解碼出字符串的超輕量級(jí)開(kāi)源庫(kù),總代碼數(shù)甚至不超過(guò)行使用方法通過(guò)安裝通過(guò)標(biāo)簽引入值得注意的是,因?yàn)槭褂昧说囊约捌渌馨舻奶匦?,這意味著需要你的瀏覽器提供支持。 showImg(https://segmentfault.com/img/bVC6vf?w=172&h=209); 體驗(yàn)地址:https://jrainlau.github....

    Barrior 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<