最近在做一個項(xiàng)目,需要實(shí)現(xiàn)類似QQ截圖后,就是能夠在富文本編輯器中粘貼截圖并預(yù)覽。

先看一下效果:

萬碼學(xué)堂,電腦培訓(xùn),計算機(jī)培訓(xùn),Java培訓(xùn),JavaEE開發(fā)培訓(xùn),青島軟件培訓(xùn),軟件工程師培訓(xùn)

分析一下實(shí)現(xiàn)步驟:

  1. QQ截圖后在編輯器中粘貼,肯定會有一個粘貼事件,即 paste 事件

  2. 在事件回調(diào)函數(shù)中對前端進(jìn)行圖片的一次壓縮

  3. 前端壓縮多是使用canvas,返回的是base64,這里我使用了一個 localResizeIMG.js的插件

  4. 將生成好的base64傳給后臺,后臺可以進(jìn)行圖片的第二次壓縮,但是感覺沒必要

  5. 后臺先得到七牛云的upToken,即一個上傳的憑證,然后執(zhí)行七牛sdk提供的上傳函數(shù)

接下來,一步步的來實(shí)現(xiàn):

瀏覽器paste事件

這個paste事件的兼容性不是很好,但是可以對用戶做友好提示,如果不能使用剪切板事件的話,就在dialog中上傳圖片也是可以的。

萬碼學(xué)堂,電腦培訓(xùn),計算機(jī)培訓(xùn),Java培訓(xùn),JavaEE開發(fā)培訓(xùn),青島軟件培訓(xùn),軟件工程師培訓(xùn)

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式