本文介绍如何通过C# 程序来扫描并读取图片中的文字,这里以创建一个.Net Core程序为例。下面是具体步骤,供参考。

程序测试环境:

  • Visual Studio版本要求不低于2017
  • 图片扫描工具:Spire.OCR for .NET
  • 图片格式:png(这里的图片格式支持JPG、PNG、GIF、BMP、TIFF等格式)
  • 扫描的图片文字:中文(另可支持中文、英语、日语、韩语、德语、法语等)
  • .Net Core 2.1

详细步骤

1. 创建一个.Net Core控制台应用程序。

2. 通过NuGet添加依赖

(1)在【解决方案资源管理器】中,鼠标右键点击【依赖项】,选择【管理NuGet程序包】

(2)在弹出的界面中,选择【浏览】-在搜索框中输入Spire.OCR,点击“安装”

在依次弹出的2个窗口中选择“确定”和“我接受”

(3)完成后,可查看到已添加的依赖项

3.复制dll

情况1:如果为.net core 3.0及以上版本,则从bin\Debug\netcoreapp3.0\runtimes\win-x64\native文件夹中复制如图中的6个dll文件到程序运行路径bin\Debug\netcoreapp3.0;

情况2如果是.net core 3.0以下版本(如本文本中的测试环境),则需要下载Spire.OCR包,并解压,将该文件路径Spire.OCR\Spire.OCR_Dependency\x64中的6个dll复制到程序运行路径F:\VS2017project\ReadTextFromImg_OCR\ReadTextFromImg_OCR\bin\Debug\netcoreapp2.1

4.完成以上操作后,可参考如下代码内容,读取图片上的文本内容

using Spire.OCR;
using System.IO; namespace ReadTextFromImg_OCR
{
class Program
{
static void Main(string[] args)
{
OcrScanner scanner = new OcrScanner();
scanner.Scan("image.png");
File.WriteAllText("output.txt", scanner.Text.ToString());
}
}
}

测试图片:

文字读取结果:

—End—

C# 扫描并读取图片中的文字的更多相关文章

  1. Azure 认知服务 (5) 计算机视觉API - 使用C#代码实现读取图片中的文字(OCR)功能

    <Windows Azure Platform 系列文章目录> 在笔者之前的文章:Azure 认知服务 (4) 计算机视觉API - 读取图片中的文字 (OCR) 介绍了使用用户界面,在海 ...

  2. Azure 认知服务 (4) 计算机视觉API - 读取图片中的文字 (OCR)

    <Windows Azure Platform 系列文章目录> 微软Azure认知服务的计算机视觉API,还提供读取图片中的文字功能 在海外的Windows Azure认知服务的读取图片功 ...

  3. C# 扫描识别图片中的文字(.NET Framework)

    环境配置 本文以C#及VB.NET代码为例,介绍如何扫描并读取图片中的文字. 本次程序环境如下: Visual Studio版本要求不低于2017 图片扫描工具:Spire.OCR for .NET ...

  4. 电脑端的全能扫描王:图片转文字识别、识别pdf、图片中的文字,图片提取txt

    手机中有全能扫描王,但PC端没有.所以需要另外找. 发现微软的oneNode有提供类似的功能. 第一步.下载Microsoft OneNode http://www.onenote.com/downl ...

  5. 使用Python进行OCR -- 识别图片中的文字

    工具 Tesseract pytesseract tesserocr 朋友需要一个工具,将图片中的文字提取出来.我帮他在网上找了一些OCR的应用,都不好用.所以准备自己研究,写一个Web APP供他使 ...

  6. 在线扫描PDF JPG 图片上面文字

    在线扫描PDF JPG 图片上面文字

  7. Mac上如何把图片中的文字转换成word/pdf文字

    如何把图片文字转换成word文字? - 知乎 https://www.zhihu.com/question/25488536 在 OneNote for Mac 中插入的圖片複製文字 - OneNot ...

  8. C# 图片识别技术(支持21种语言,提取图片中的文字)

    图片识别的技术到几天已经很成熟了,只是相关的资料很少,为了方便在此汇总一下(C#实现),方便需要的朋友查阅,也给自己做个记号. 图片识别的用途:很多人用它去破解网站的验证码,用于达到自动刷票或者是批量 ...

  9. java从图片中识别文字

    package com.dream.common; import java.awt.image.BufferedImage; import java.io.File; import java.io.I ...

随机推荐

  1. tp 创建文件并写入数据

    代码:1.$url = Env::get('root_path').'application/admin/test.txt'; //定义创建路径 $file = fopen($url,"w& ...

  2. app.json文件配置

    pages 页面路径的存放列表 通过手写页面路径可以在对应目录下自动创建对应文件 "pages": [ "pages/demo3/demo3", "p ...

  3. C#中的委托(Update)

    什么是委托? 委托(delegate)是一种托管方法的数据结构,它是一种引用类型,是对方法的引用.如果说int,string等是对数据类型的定义,那么委托就类似于对"方法类型"的定 ...

  4. [Java] 静态代理 动态代理

    原理 静态代理=代理模式 动态代理=代理模式+反射 代理模式可以在不修改被代理对象的基础上,通过扩展代理类,进行一些功能的附加与增强 代理类和被代理类应该共同实现一个接口,或者是共同继承某个类 静态代 ...

  5. [转载]备忘:oh my zsh 的安装、更新、删除

    备忘:oh my zsh 的安装.更新.删除 傅易君 关注  0.8 2016.09.25 00:56* 字数 68 阅读 14920评论 0喜欢 4 查看系统当前 shell $ cat /etc/ ...

  6. Win10 禁用摄像头的方法及注意事项

    Win10 禁用摄像头的方法及注意事项 windows教程 2020-03-04  223 最新的Windows10系统中应该如何禁用摄像头呢?下面MS酋长与大家分享一下.当然,如果你说用个便利贴把摄 ...

  7. mysql基础之查询缓存、存储引擎

    一.查询缓存 "查询缓存",就是将查询的结果缓存下载,如果查询语句完全相同,则直接返回缓存中的结果. 如果应用程序在某个场景中,需要经常执行大量的相同的查询,而且查询出的数据不会经 ...

  8. python 中 list 的append与extend区别

    append 添加的是一个对象 extend 添加的是序列与原序列合并

  9. unity中UI坐标转3d世界坐标

    方法: public static Vector3 UIScreenToWorldPoint(Vector3 uiPostion) { uiPostion = UICamera.mainCamera. ...

  10. Python单元测试简介及Django中的单元测试

    Python单元测试简介及Django中的单元测试 单元测试负责对最小的软件设计单元(模块)进行验证,unittest是Python自带的单元测试框架. 单元测试与功能测试都是日常开发中必不可少的部分 ...