前些时间使用看到Alfred的ocr识别插件workflows插件真心不错,超实用的工具 完全胜任图片文字提取的工作。
mac自带的截图快捷工具我常常使用,但是能够截图之后马上对图片进行内容识别 这倒是很稀奇 至少我是这样。
一般专门的ocr软件我很少用 若要临时应急的话就会很麻烦 因为我需要去查找提供ocr识别服务的三方网站服务 然后进行图片上传 之后再复制内容到剪贴板。像这种情况下有个顺手的小工具是多爽 😆 😆 虽然插件也是使用开源库,但是整合到随手调用这就很少有人做了。
安装tesseract开源库
配置语言包
默认自带英文,简体中文为
https://github.com/tesseract-ocr/tessdata
下载,两文件放至。其中为你安装的tesseract版本号
安装workflows
此alfredworkflow被我简单添加了下触发关键字 中文,英文
使用
回车截图之后会出现消息通知(响应时间据字符长度而不定)
若内容为空 最好debug查看workflows报错信息
后续问题
自定义修改插件的时候发现有些时候输入的内容无法被Alfred读取 会被自动截断 无任何反应
这里是因为编码转换的问题导致的 确保输入内容以及输出内容的编码 过滤掉特殊字符
php处理:
function force_utf8_safe($str) {
$res = mb_convert_encoding($str, "UTF-8", "UTF-8" ); // replace invalid characters with ?
$res = preg_replace('/\p{Cc}+/u', '?', $res); // replace control characters with ?
return $res;
}
说明:
字符过滤来自于 https://github.com/willfarrell/alfred-encode-decode-workflow
还可以参考它的输入字符处理方式 使用脚本再处理传入
参考:https://www.alfredforum.com/topic/10141-workflow-arguments-are-always-decomposed/
我的AlfredWorkflows:https://github.com/Hootrix/AlfredWorkflows
参考:
https://www.zhihu.com/question/20656680
https://tonydeng.github.io/2016/07/28/on-the-use-of-tesseract-picture-text-recognition/
PEACE~