今天為大家?guī)硪豢钗易约簩懙男?yīng)用,由于最近在學(xué)習(xí)網(wǎng)課,而個人又是OneNote筆記愛好者,不做筆記就覺得課程學(xué)習(xí)不完整,但是懶就懶在實在不想打字啊,所以想到了直接截圖用文字識別嘛,于是經(jīng)過幾個小時的鼓搗,這個小應(yīng)用就誕生了!本著好東西要分享的原則,特意把代碼貼出來并且非常歡迎大家使用我寫的這個小工具~
功能介紹
當(dāng)我們使用QQ、Tim、微信或者電腦自身的截圖功能獲取了截圖后,不需要將圖片保存成文件,只需在頁面中的輸入框中直接使用Ctrl+V或者右鍵粘貼就能得到剪貼板中的圖片了。同時,我們會將你粘貼的圖片上傳到后臺,調(diào)用百度AI的OCR(文字識別)接口,將圖片中的文字識別并提取出來,將識別結(jié)果顯示到頁面上。最后,你可是一手動修改你認為識別不正確的地方,然后點擊下邊的按鈕一鍵復(fù)制所有的識別結(jié)果,粘貼到你想要粘貼的任何部分!
基本原理與流程
- 使用OCR接口前,需要先請求access_token,為了避免重復(fù)請求,將其保存在session中
- 使用JavaScript檢測粘貼事件,并使用Clipboard技術(shù)獲取剪貼板中的圖片的Base64編碼
- 顯然,獲取到的Base64編碼是可以用來在頁面中顯示圖片的
- 使用AJAX技術(shù)將Base64編碼傳送到后臺
- 后臺獲取得到圖片的Base64,進行預(yù)處理,包括去掉頭部信息、將AJAX傳送過程中自動轉(zhuǎn)換的‘+’符號從空格轉(zhuǎn)換回來等
- 將格式化好的圖片的Base64編碼請求百度的OCR接口返回文字識別結(jié)果
- 將多個零散的是被內(nèi)容拼合成一個完整的字符串并返回給前端,顯示在頁面上
- 完成一鍵復(fù)制功能
實例與使用
本倉庫中的代碼省略了所有的樣式,只保留了最簡單的代碼內(nèi)容,一個比較好的可以運行的實例請參考筆者的個人項目。
也歡迎你收藏筆者的網(wǎng)站,隨意使用,希望在一些情況下可以幫到你!
本項目申請使用了百度OCR接口中的“通用文字識別”接口,對于準(zhǔn)確率來講,個人使用基本滿意,可以識別不是文字不是正向的圖片(即文字方向旋轉(zhuǎn)也生效),不能識別手寫文字,每日識別次數(shù)上線為50000次。
如果你有任何提議或問題,歡迎使用郵件和我聯(lián)系:mhz2180572509@163.com
代碼實現(xiàn)
具體的完整的代碼實現(xiàn)就在這里啦:https://github.com/mhz2180572509/PasteImagetoOCR
轉(zhuǎn)載請注明出處,本文永久更新鏈接:https://blogs.littlegenius.xin/2019/04/23/【推送】屏幕截圖一鍵粘貼-識別圖中的文字-一鍵復(fù)制識別結(jié)果/