TA的每日心情 | 擦汗 2019-11-22 21:32 |
---|
签到天数: 69 天 [LV.6]常住居民II
|
本帖最后由 ура 于 2019-11-22 22:30 编辑 9 T/ G) L9 a2 }7 G" e- O
" P9 k) H0 z' d# t6 d2 w& a
前几天在玩一个英文的小游戏,苦于我英语不好,许多单词都要查一下才明白意思。正常的查词方法实在影响游戏体验。尽管如有道词典也有ocr功能,但是其使用体验却很糟糕。我前几天看到https://www.pdawiki.com/forum/thread-31879-1-1.html?x=300193帖子中提到的ocr查词方法,一时间就觉得这才是利用ocr查词应该有的样子。可惜帖子中只介绍了mac系统下的方法。为了模仿这种实现方式,我找到了一款开源截图软件greenshot,官网https://getgreenshot.org,github项目地址https://github.com/greenshot。
, K }& Q0 o' f+ r' e/ K/ s这个配置外部命令的功能就是最终实现的关键。软件中可以选择截图完成后的动作,该动作可以通过命令行启动一个可执行文件(*.exe *.bat *.com)并把截出来的图片完整路径和文件名作为参数传递进去。
! f) u- Y2 T7 K2 E# t实现步骤:
; u. ~" }5 z: J- ]& V1.先安装tesseract,建议直接在https://github.com/UB-Mannheim/tesseract/wiki下载最新release的版本,否则可能出现一些问题。
9 }! T& o; }7 b* o2.安装完成后设置环境变量,把tesseract的安装目录加入PATH(可以在cmd下测试是否成功),新建TESSDATA_PREFIX环境变量,值为tessdata所在路径。3.安装greenshot,(安装时可以选择安装它自带的一个ocr插件,不过我没有安装不知道这个插件的效果)
6 ]! o2 c/ q2 s/ @5 L$ N安装完成后运行,在任务栏右下角系统托盘处找到它的图标,点击一次后,在弹出的菜单中选中配置外部命令。4.设置截图后动作。
* d( Z- [$ W F2 X5 R7 ^# n- c$ z7 \, f! C + A m" {% {' h( Z8 q' R
新建一个随意起一个名字,命令填你的可执行文件的路径(我的脚本内容如下,未必是最优方案:)' o) d. S E. q0 G3 b- z
- if "%2"=="h" goto begin
3 l* v, p2 f6 ?* o - start mshta vbscript:createobject("wscript.shell").run("%~0 %~1 h",0)(window.close)&&exit
- d. F v5 A5 f/ r( C5 ] - :begin
" |, B! h8 h0 U# ^% e - tesseract %1 stdout -l eng+rus+fra | clip
$ k( z: _( [3 }! s2 o - mshta vbscript:CreateObject("Wscript.Shell").SendKeys("^t")(window.close)
复制代码
! P/ B% X, O% I9 B! D' q9 b: e, l这个原理就是把截图传给tesseract,再将输出的结果复制到剪贴板中,最后发送goldendict翻译剪切板的全局快捷键(我已经设置为CTRL+T,原因是我没搞懂CTRL+C+C快捷键怎么发送)(感谢gttwork补充,将最后一行的SendKeys("^t")换为SendKeys("^c^c")可发送CTRL+C+C,即默认的goldendict翻译剪切板的全局快捷键)(感谢gttwork补充,^c^c快捷键在最新版的GoldenDict下无效,需改为^{c 2}),所以这个方法也同时适用于满足“有翻译剪切板的全局快捷键”的其他词典软件。要注意的另外一点是这里我选择的语言是eng+rus+fra(英俄法),这里需要根据自己的情况做一个改变。
( i' y, g' X, ?9 |2 y4 A/ ?$ B我这个方案其实有很多不完善的地方,其中之一就是进行识别时会快速闪过cmd的窗口,这里我已经做了应对,减少了窗口停留的时间,但是还是没好的办法完全去除。这里也希望有好想法的朋友提提意见。- @& Q9 h( G% ~4 s5 t% L
(新人发帖,有不周到的地方还请多多包涵呀 )最终实现效果
7 ~3 l9 m2 t) `7 l- d + D0 k8 Z5 {0 h) M5 ~0 X, @5 l
(动图居然因为太大发不上来)
4 H5 Q4 @. A) I0 f- A, b) Kemmm其实识别还是挺慢的哈。。
; a \3 s* h7 P. {/ a2 u! d9 o |" V3 y$ l0 w4 P
1 Y$ X* O9 y) ]& @# g9 Y
5 s* z3 _! ~1 C5 k" p |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?免费注册
x
评分
-
5
查看全部评分
-
本帖被以下淘专辑推荐:
- · 词典制作|主题: 217, 订阅: 40
- · 语言态度|主题: 150, 订阅: 19
- · 语法|主题: 67, 订阅: 14
|