易语言吧

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2338|回复: 4

[经验分享] 大漠插件本机文字识别正常,别的机器为何不正常原因分析

[复制链接]

60

主题

77

帖子

1433

积分

实习版主

Rank: 7Rank: 7Rank: 7

积分
1433
威望
0
易币
1356
贡献
0
积分
1433
UID
8160
在线时间
41 小时
注册时间
2020-8-13
发表于 2021-4-23 09:13:04 | 显示全部楼层 |阅读模式
本帖最后由 易句话 于 2021-4-23 09:14 编辑

这是一个很常见的问题,不同机器,由于系统的不同或者软件设置的差异,会导致文字颜色,字体等可能存在不同。
一般来说解决这个问题,以前的办法是这样,利用Capture函数,比如
dm_ret = dm.FindStr(0,0,2000,2000,"长安","ffffff-000000",1.0,x,y)
if x < 0 then
    dm_ret = dm.Capture(0,0,2000,2000,"screen.bmp")
end if
这样当找不到长安时,就会截图保存为screen.bmp,然后作者可以分析这个文件,来对自己的字库或者代码进行调节优化.
但这个办法有个延后性的问题,因为FindStr和Capture是两个操作,分别调用了两次截屏,所以可能会有稍许不一致的情况存在.
为了完完全全的对FindStr时,产生的截图进行分析,我们需要用到2.1131版本提供的两个函数。
CapturePre和EnableDisplayDebug.
那么代码如下
dm.EnableDisplayDebug 1
dm_ret = dm.FindStr(0,0,2000,2000,"
长安","ffffff-000000",1.0,x,y)
if x < 0 then
    dm_ret = dm.CapturePre("screen.bmp")
end if

这样就把FindStr时的截图保存下来了,就完全恢复了现场. 因为CapturePre这个函数是截取上一次的截图数据.

0

主题

13

帖子

45

积分

初识易语言

Rank: 1

积分
45
威望
0
易币
32
贡献
0
积分
45
UID
12010
在线时间
8 小时
注册时间
2021-1-26
发表于 2021-4-23 14:11:40 | 显示全部楼层
现在的方法呢?
回复

使用道具 举报

0

主题

2339

帖子

9564

积分

VIP超级贵宾

Rank: 8Rank: 8

积分
9564
威望
198
易币
6829
贡献
0
积分
9564
UID
11903
在线时间
36 小时
注册时间
2021-1-23
发表于 2021-5-29 08:21:30 | 显示全部楼层
楼主发贴辛苦了,谢谢楼主分享!我觉得易语言吧是注册对了!
回复

使用道具 举报

0

主题

21

帖子

23

积分

初识易语言

Rank: 1

积分
23
威望
0
易币
2
贡献
0
积分
23
UID
21487
在线时间
0 小时
注册时间
2021-12-23
发表于 2021-12-23 16:13:50 | 显示全部楼层
不是看得太懂,先收藏
回复

使用道具 举报

0

主题

33

帖子

386

积分

易语言学徒

Rank: 3Rank: 3

积分
386
威望
0
易币
353
贡献
0
积分
386
UID
3266
在线时间
30 小时
注册时间
2020-3-31
发表于 2022-10-19 14:49:09 | 显示全部楼层

这东西我收了!谢谢楼主!易语言吧真好!
回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【选择右侧内容,快速回复】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

大漠插件注册码无须等1-3号

QQ|一:站内所有资源均来自互联网收集或用户上传分享,本站不拥有此类资源的版权。 作为网络服务提供者,对转载行为的发生不具备充分的监控能力。但是当版权拥有者提出侵权并出示充分的版权证明材料时,易语言吧负有移除转载作品以及停止继续传播的义务。在满足前款条件下采取移除等相应措施后不为此向原发布人承担违约责任,包括不承担因侵权不成立而给原发布人带来损害的赔偿责任。 用户免费分享产生,如果侵犯了你的权益,联系QQ:3066137757|Archiver|手机版|小黑屋|易语言吧

GMT+8, 2024-12-4 16:09 , Processed in 0.214305 second(s), 31 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表