[C#]基于C#调用WechatOCR.exe实现OCR文字识别
注意经过测试发现由于C++编译libprotobuf都是vs2022生成的导致dll均是vs2022开发,如果您使用vs2019或者其他版本会报错,所以只能在vs2022开发使用。开发前需要安装微信,目前是支持最新版本微信。创建WechatOCR类对象后调用Ocr函数即可,注意接口目前只能是图片路径,不支持Bitmap,byte[],或者其他类型。注意源码是C# winform源码,里面包含演示代
·
【参考源码】
https://github.com/swigger/wechat-ocr
该作者又是参考https://github.com/EEEEhex/QQImpl
【测试环境】
vs2022专业版
netframework4.7.2
注意经过测试发现由于C++编译libprotobuf都是vs2022生成的导致dll均是vs2022开发,如果您使用vs2019或者其他版本会报错,所以只能在vs2022开发使用。开发前需要安装微信,目前是支持最新版本微信。
【演示界面】
【接口调用源码】
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace FIRC
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Console.WriteLine("初始化");
WechatOCR ocr = new WechatOCR(@"C:\Users\Administrator\AppData\Roaming\Tencent\WeChat\XPlugin\Plugins\WeChatOCR\7079\extracted\WeChatOCR.exe", @"D:\Program Files\Tencent\WeChat\[3.9.11.19]");
//Thread.Sleep(1000);
Console.WriteLine("识别");
string result = ocr.Ocr(@"D:\1.jpg");
Console.WriteLine("输出结果");
Console.WriteLine(result);
Console.WriteLine("释放资源");
ocr.Dispose();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void button2_Click(object sender, EventArgs e)
{
IntPtr p = WechatOCR.wechat_ocr(@"C:\Users\Administrator\AppData\Roaming\Tencent\WeChat\XPlugin\Plugins\WeChatOCR\7079\extracted\WeChatOCR.exe", @"D:\Program Files\Tencent\WeChat\[3.9.11.19]",Application.StartupPath+@"\3.jpg");
var result = Marshal.PtrToStringAnsi(p);
var bytes = Encoding.Default.GetBytes(result);
var utf8Text = Encoding.UTF8.GetString(bytes);
Console.WriteLine(utf8Text);
}
}
}
【接口简要说明】
创建WechatOCR类对象后调用Ocr函数即可,注意接口目前只能是图片路径,不支持Bitmap,byte[],或者其他类型.
【视频演示】
【源码下载地址】
注意源码是C# winform源码,里面包含演示代码和所有DLL,C++端封装代码不开源。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献34条内容
所有评论(0)