base64圖片轉(zhuǎn)碼

怎么把圖轉(zhuǎn)成base64拍嵌?

方法一:
new fileReader().readAsDataURL(file)
方法二:
var imgCanvas=document.createElement('canvas');
mgContext=imgCanvas.getContext('2d');
var imgAsDataURL=imgCanvas.toDataURL("image/jpeg");
缺點(diǎn)
就是任何圖片都被png了
編碼出來的字符串大小可能要比原圖編碼出來的要大
demo 可以在控制臺運(yùn)行

var file = document.createElement('input');
file.type = 'file';
document.body.appendChild(file);
file.onchange=function(){
var reader=new FileReader()
reader.onload = function ( event ) {console.log(event.target.result);};
reader.readAsDataURL(file.files[0]);
}
結(jié)果
data:image/jpg;base64,/9j/4QMZRXhpZgAASUkqAAgAAAAL....
然后調(diào)用:

Base64 在CSS中的使用
.demoImg{ background-image: url("data:image/jpg;base64,/9j/4QMZRXhpZgAASUkqAAgAAAAL...."); }
Base64 在HTML中的使用
<img width="40" height="30" src="data:image/jpg;base64,/9j/4QMZRXhpZgAASUkqAAgAAAAL...." />
好處:

data格式的Url最直接的好處是,這些Url原本會引起一個新的網(wǎng)絡(luò)訪問羞延,因為那里是一個網(wǎng)頁的地址渡嚣,
現(xiàn)在不會有新的網(wǎng)絡(luò)訪問了梢睛,因為現(xiàn)在這里是網(wǎng)頁的內(nèi)容。這樣做识椰,會減少服務(wù)器的負(fù)載绝葡,
當(dāng)然同時也增加了當(dāng)前網(wǎng)頁的大小。所以對“小”數(shù)據(jù)特別有好處裤唠。

data類型Url的形式
既然是Url挤牛,當(dāng)然也可以直接在瀏覽器的地址欄中輸入。
我們把圖像文件的內(nèi)容直接寫在了HTML 文件中种蘸,這樣做的好處是墓赴,節(jié)省了一個HTTP 請求。

壞處呢航瞭,就是瀏覽器不會緩存這種圖像诫硕。

如果你用的是IE8,如果你想編碼圖片刊侯,更簡單的方法是章办,自己寫一個HTML網(wǎng)頁,把本地圖片放進(jìn)去滨彻,然后用IE8打開該網(wǎng)頁藕届,然后保存為mht文件,然后用記事本打開mht文件亭饵,你就會看
到圖片以及被編碼過了休偶,直接拷貝之,粘貼之辜羊,加上data:image/jpeg;base64,等前綴踏兜,搞定之词顾。
在mht文件中,每一個NextPart下面都會有類似下面的幾行說明字段:
Content-Type: image/jpeg Content-Transfer-Encoding: base64
Content-Location: file:///E:/cat2.jpg
根據(jù)這些信息就可以知道是用什么方式編碼的什么格式的文件了

目前碱妆,Data URI scheme支持的類型有:

data:,文本數(shù)據(jù) data:text/plain, 文本數(shù)據(jù)
data:text/html, HTML代碼
data:text/html;base64, base64編碼的HTML代碼
data:text/css, CSS代碼
data:text/css;base64, base64編碼的CSS代碼
data:text/javascript, Javascript代碼
data:text/javascript;base64, base64編碼的Javascript代碼
data:image/gif;base64, base64編碼的gif圖片數(shù)據(jù)
data:image/png;base64, base64編碼的png圖片數(shù)據(jù)
data:image/jpeg;base64, base64編碼的jpeg圖片數(shù)據(jù)
data:image/x-icon;base64, base64編碼的icon圖片數(shù)據(jù)
base64簡單地說肉盹,它把一些 8-bit 數(shù)據(jù)翻譯成標(biāo)準(zhǔn) ASCII 字符,

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末疹尾,一起剝皮案震驚了整個濱河市上忍,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌纳本,老刑警劉巖睡雇,帶你破解...
    沈念sama閱讀 212,294評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異饮醇,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)秕豫,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,493評論 3 385
  • 文/潘曉璐 我一進(jìn)店門朴艰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人混移,你說我怎么就攤上這事祠墅。” “怎么了歌径?”我有些...
    開封第一講書人閱讀 157,790評論 0 348
  • 文/不壞的土叔 我叫張陵毁嗦,是天一觀的道長。 經(jīng)常有香客問我回铛,道長狗准,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,595評論 1 284
  • 正文 為了忘掉前任茵肃,我火速辦了婚禮腔长,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘验残。我一直安慰自己捞附,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,718評論 6 386
  • 文/花漫 我一把揭開白布您没。 她就那樣靜靜地躺著鸟召,像睡著了一般。 火紅的嫁衣襯著肌膚如雪氨鹏。 梳的紋絲不亂的頭發(fā)上欧募,一...
    開封第一講書人閱讀 49,906評論 1 290
  • 那天,我揣著相機(jī)與錄音喻犁,去河邊找鬼槽片。 笑死何缓,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的还栓。 我是一名探鬼主播碌廓,決...
    沈念sama閱讀 39,053評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼剩盒!你這毒婦竟也來了谷婆?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,797評論 0 268
  • 序言:老撾萬榮一對情侶失蹤辽聊,失蹤者是張志新(化名)和其女友劉穎纪挎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體跟匆,經(jīng)...
    沈念sama閱讀 44,250評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡异袄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,570評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了玛臂。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片烤蜕。...
    茶點(diǎn)故事閱讀 38,711評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖迹冤,靈堂內(nèi)的尸體忽然破棺而出讽营,到底是詐尸還是另有隱情,我是刑警寧澤泡徙,帶...
    沈念sama閱讀 34,388評論 4 332
  • 正文 年R本政府宣布橱鹏,位于F島的核電站,受9級特大地震影響堪藐,放射性物質(zhì)發(fā)生泄漏莉兰。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,018評論 3 316
  • 文/蒙蒙 一礁竞、第九天 我趴在偏房一處隱蔽的房頂上張望贮勃。 院中可真熱鬧,春花似錦苏章、人聲如沸寂嘉。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,796評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽泉孩。三九已至,卻和暖如春并淋,著一層夾襖步出監(jiān)牢的瞬間寓搬,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,023評論 1 266
  • 我被黑心中介騙來泰國打工县耽, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留句喷,地道東北人镣典。 一個月前我還...
    沈念sama閱讀 46,461評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像唾琼,于是被迫代替她去往敵國和親兄春。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,595評論 2 350

推薦閱讀更多精彩內(nèi)容