圖片粘貼預(yù)覽-FileReader

在開發(fā)輸入編輯器時(shí),往往會(huì)用到本地圖片,或者截屏粘貼到編輯器中的情況。
這個(gè)思路是,將圖片轉(zhuǎn)化為URL格式的字符串,來表示文件內(nèi)容,通過設(shè)置src屬性,進(jìn)而顯示出完整圖片。

我的啟蒙文章將截圖實(shí)時(shí)顯示在瀏覽器中,我通過這篇啟蒙文章親自敲打了一遍,發(fā)現(xiàn)確實(shí)功能強(qiáng)大。但是遺憾的是,只有在Chrome中才起作用,使得我不得不去學(xué)習(xí)clipboardData對(duì)象以及FileReader對(duì)象。

FileReader

使用FileReader對(duì)象,web應(yīng)用程序可以異步的讀取存儲(chǔ)在用戶計(jì)算機(jī)上的文件(或者原始數(shù)據(jù)緩沖)內(nèi)容,可以使用File
對(duì)象或者Blob
對(duì)象來指定所要處理的文件或數(shù)據(jù).其中File對(duì)象可以是來自用戶在一個(gè)input元素上選擇文件后返回的FileList
對(duì)象,也可以來自拖放操作生成的 DataTransfer
對(duì)象,還可以是來自在一個(gè)HTMLCanvasElement
上執(zhí)行mozGetAsFile()方法后的返回結(jié)果

var eventData = {
    type: 'auto',
    method: 'paste',
    dataTransfer: clipboard.initPasteDataTransfer( evt )
};

~~~

var imgFile = eventData.dataTransfer.getFile(0);

~~~

if(imgFile && imgFile.type == 'image/png'){
  var reader = new FileReader();
  reader.readAsDataURL( imgFile );
}
setTimeout( function() {
    if(imgFile && imgFile.type == 'image/png'){
        eventData.binaryFlow = reader.result;
    }
    firePasteEvents( editor, eventData);
}, 0 );             
//將二進(jìn)制流賦給src
imgElement.setAttribute('src',e.data.binaryFlow);

若要存儲(chǔ),利用后臺(tái)語句進(jìn)行轉(zhuǎn)換,

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,662評(píng)論 19 139
  • H5 meta詳解 viewport width:控制 viewport 的大小,可以指定的一個(gè)值,如果 600,...
    FConfidence閱讀 891評(píng)論 0 3
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 15,443評(píng)論 4 61
  • 正在為四六級(jí)什么的英語學(xué)習(xí)苦惱嗎,不如跟我一起嘗試一個(gè)新的小方法吧。 用一個(gè)具體的場(chǎng)景來試著記住每天背的單詞。當(dāng)你...
    菱歌上下閱讀 994評(píng)論 5 7
  • 四十以后,人漸漸的開始戀舊起來,與之對(duì)應(yīng)的是記憶衰退期越來越快:每每當(dāng)我遇到感動(dòng)的人或者事總想把它留在記憶中,可回...
    songer007閱讀 224評(píng)論 0 1

友情鏈接更多精彩內(nèi)容