问题重现
2021年下半年公司拿下了一个大项目,其中为了打通现有收银系统和青蛙pro以及蜻蜓F4两种进行双通信,需要收银机安装一个收银插件,实时获取现有收银系统的预结算总金额,并将金额传送给蜻蜓以及青蛙Pro。为了尽快落地,我的第一个解决方案是使用图像识别,即OCR光学识别技术,实时截取支付金额区域,识别现有收银系统的支付金额,在收银系统和蜻蜓以及青蛙Pro的lot小程序已打通双向通信能力情况下,将预结算总金额发送到蜻蜓以及青蛙Pro的lot小程序引导用户进行扫码付款操作。
WPF引入一种新的XAML语言来开发界面,使用XAML语言将界面开发以及后台逻辑开发很好的分开,降低了前后台开发的耦合度,后台逻辑开发基于.Net语言。与前端Vue、React等框架都是MVVM思想,决定再用WPF露一手。截图功能在Win7上没有出现问题,但是在Win10中发现如果屏幕125%、150%放大布局,截取的屏幕在可视区域内竟然只显示一半,而有部分超出了可视区域,导致想识别的区域无法截图。下图是正常截图情况:
下图是屏幕的截取部分超出了可视区域,底部任务栏都不见了:
在不重启截图程序情况下,设置屏幕100%缩放布局应该是正常的,但是祸不单行,又出现了新的问题: