有道 ocr Ctrl+V

在有道 ocr Demo 中使用 Ctrl + V 上传图片

当前为 2020-07-19 提交的版本,查看 最新版本

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。

您需要先安装用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         有道 ocr Ctrl+V
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  在有道 ocr Demo 中使用 Ctrl + V 上传图片
// @author       You
// @match        https://ai.youdao.com/product-ocr.s
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    function convertImgBlobToBase64() {
        var canvas = document.getElementById("mycanvas");
    }

    function getBase64(file, callback) {
        var reader = new FileReader();
        reader.readAsDataURL(file);
        reader.onload = function () {
            callback(reader.result);
        };
        reader.onerror = function (error) {
            console.log('Error: ', error);
        };
    }

    function handlePaste(e) {
        var clipboardData, pastedData;

        // Stop data actually being pasted into div
        e.stopPropagation();
        e.preventDefault();

        // Get pasted data via clipboard API
        clipboardData = e.clipboardData || window.clipboardData;
        pastedData = clipboardData.items[0];

        if (pastedData.type.indexOf("image") !== -1) {
            //alert("图片");
            var file = pastedData.getAsFile();
            var urlBlob = (window.URL || window.webkitURL).createObjectURL(file);
            getBase64(pastedData.getAsFile(), function (res) {
                var index = $('.service_active').eq(0).attr('dataindex');
                var img = document.getElementById('preview' + index);
                img.src = urlBlob;

                ocr(res, "auto", "1");
            });
            //ocr(v1, "auto", "1");
        }
        else {
            alert("请粘贴图片!");
        }
    }

    document.getElementsByClassName('demo')[0].addEventListener('paste', handlePaste);
})();