C#和.NET中的中文OCR

This article was translated from English: Does it need improvement?
Translated
View the article in English

其他版本的此文件:

  • 简体中文版
  • 超过 125 种 OCR 语言

    IronOCR是一个C#软件组件,允许.NET编程人员从图像和PDF文档中读取126种语言的文本,包括中文。 中文语言包包含简体中文和繁体中文字符。

    这是Tesseract的一个高级分支,专为.NET开发者设计,无论是速度还是准确性都经常超过其他Tesseract引擎。 该库支持识别不同格式的图像和文档,包括中文。 它支持超过125种语言,并且与竞争对手相比提供了高水平的识别准确性。 IronOCR 的 API 在设计时考虑了可扩展性和可定制性。 您可以通过向跟踪器添加您的调整数据或功能来帮助IronOCR实现高吞吐量和准确性。 IronOCR使用多种光学字符识别技术。 我们可以在Windows PC、Linux、macOS和其他著名平台上使用它。

IronOcr.Languages.Chinese

此包含352种用于.NET的OCR语言。

请提供要翻译的内容。

ChineseSimplifiedBest

ChineseSimplifiedFast

ChineseSimplifiedVertical

  • ChineseSimplifiedVerticalBest

    ChineseSimplifiedVerticalFast

  • 请提供要翻译的英文内容。

    ChineseTraditionalBest

  • 中文繁體快速

    ChineseTraditionalVertical

    ChineseTraditionalVerticalBest

    ChineseTraditionalVerticalFast

下载

我们可以下载中文语言包。[中文(Zhōngwén)]从下面的链接:

使用 IronOCR 学习中文

创建或打开一个C#项目

要开始使用IronOCR,我们需要创建一个C# .NET项目。 我们使用 Visual Studio 2022 来完成这个目的。 您可以根据自己的需求选择一个版本。 建议使用最新版本的 Visual Studio 以获得流畅的体验。 我们将创建一个GUI界面来选择图像。 我们也可以在控制台应用程序中使用IronOCR,方法是提供图片的直接路径。 按照以下步骤在 Visual Studio 2022 中创建一个 C# 项目:

  • 打开 Visual Studio 2022。
  • 点击“创建新项目”按钮。

    Chinese Ocr 1 related to 创建或打开一个C#项目
  • 在搜索栏中输入 "Windows",从搜索结果中选择"Windows 窗体 " 应用程序,然后点击 "下一步 "按钮。

    Chinese Ocr 2 related to 创建或打开一个C#项目
  • 给项目命名。 我将该项目命名为“ChineseOCR”。 在名称之后,点击“下一步”按钮。

    Chinese Ocr 3 related to 创建或打开一个C#项目
  • 在下一个屏幕上选择 .NET framework。 根据您项目的需求选择 .NET 框架。 我们在本教程中选择使用 .NET 5.0 版本。

    Chinese Ocr 4 related to 创建或打开一个C#项目
  • 选择后,点击“创建”按钮。 它将轻松创建Visual Studio中的C# Windows窗体项目。

    项目已经创建,现在可以在IronOCR库中使用了。 我们也可以使用已经存在的C#项目。 打开项目并开始安装IronOCR库。 以下部分将探讨在C#项目中安装IronOCR库的方法。

安装

使用 NuGet 软件包管理器

要使用 NuGet 包管理器安装 IronOCR 库,我们必须打开 NuGet 包管理器界面。 按照以下步骤安装IronOCR库:

  • 点击主菜单中的“工具”,从下拉菜单中悬停在“NuGet 包管理器”上,并选择“管理解决方案的 NuGet 包管理器”。

    Chinese Ocr 5 related to 使用 NuGet 软件包管理器
  • 这将打开 NuGet 包管理器界面。 转到浏览选项卡并搜索IronOCR Chinese。 从搜索结果中选择正确的包,然后点击“安装”按钮进行安装。

    Chinese Ocr 6 related to 使用 NuGet 软件包管理器
  • 它将开始安装库。 安装后,您将能够在项目中使用IronOCR库。

使用包管理器控制台

使用控制台总是一个简单的选择。 我们也可以使用包管理器控制台来安装IronOCR库。 按照以下步骤安装IronOCR库:

  • 在Visual Studio中打开包管理器控制台。 通常位于 Visual Studio 的底部。
  • 在控制台中输入以下命令:
Install-Package IronOCR.Languages.Chinese
  • 您将在控制台中看到库的安装进度。 它将自动安装库。 安装完成后,我们的项目将为 IronOCR 库做好准备。

代码示例:中文的OCR

现在是时候编写代码以实现用于中文的IronOCR库了。 首先,我们需要开发用于选择图像文件的前端。让我们来看看如何做到这一点。

开发前端

我们将使用“工具箱”元素来设计前端。 我们将创建一个按钮、一个图片框、一个富文本框和两个标签。 我们将从工具箱中拖放这些元素,并将它们放置在窗体中。 我们将以风格管理这些元素。

该按钮用于从电脑选择图像文件。 图片框将加载所选的图像文件,而富文本框将显示输出文本。 您可以根据需要调整每个元素的大小。 最终的前端设计将如此:

Chinese Ocr 7 related to 开发前端

当您运行项目时,这个窗口将会弹出。 我们已将窗口对齐设置为屏幕中心。 所以,这个屏幕将会居中显示。

我们的前端已经准备好了。 接下来,是时候添加按钮的后端功能了。

后端代码用于IronOCR

首先,我们需要在代码中导入IronOCR命名空间才能使用它。 在文件顶部写下以下内容:

using IronOCR;
using IronOCR;
Imports IronOCR
VB   C#

我们将使用“选择图片”按钮来选择图片并将图片加载到图片框中。 IronOCR将处理简体中文文本图像,并在富文本框中显示输出文本。 让我们通过双击按钮来添加按钮的功能。 将以下代码行写入以添加所描述的功能:

private void btn_image_Click(object sender, EventArgs e)
{
    OpenFileDialog open = new OpenFileDialog();
    if (open.ShowDialog() == DialogResult.OK)
    {
        // display image in picture box  
        img_image.Image = new Bitmap(open.FileName);

        var Ocr = new IronTesseract();

Ocr.Language = OcrLanguage.ChineseTraditional;

using (var Input = new OcrInput(open.FileName))
        {
            var Result = Ocr.Read(Input);

            txt_output.Text = Result.Text;
        }
    }
}
private void btn_image_Click(object sender, EventArgs e)
{
    OpenFileDialog open = new OpenFileDialog();
    if (open.ShowDialog() == DialogResult.OK)
    {
        // display image in picture box  
        img_image.Image = new Bitmap(open.FileName);

        var Ocr = new IronTesseract();

Ocr.Language = OcrLanguage.ChineseTraditional;

using (var Input = new OcrInput(open.FileName))
        {
            var Result = Ocr.Read(Input);

            txt_output.Text = Result.Text;
        }
    }
}
Private Sub btn_image_Click(ByVal sender As Object, ByVal e As EventArgs)
	Dim open As New OpenFileDialog()
	If open.ShowDialog() = DialogResult.OK Then
		' display image in picture box  
		img_image.Image = New Bitmap(open.FileName)

		Dim Ocr = New IronTesseract()

Ocr.Language = OcrLanguage.ChineseTraditional

Using Input = New OcrInput(open.FileName)
			Dim Result = Ocr.Read(Input)

			txt_output.Text = Result.Text
End Using
	End If
End Sub
VB   C#

当用户点击按钮时,将出现一个对话框来选择图像。 当用户选择图像时,它将自动加载到图片框中。 我们使用Bitmap()用于在图片框中打印图像。 之后,IronOCR 将图像转换为中文文本。 我们设置了Ocr。 Language to ChineseTraditional to recognize text in traditional Chinese. Ocr. read函数将读取过程并将OCR结果存储在Result变量中。 如果您需要将文本保存为PDF、文本或HTML格式,您将使用SaveAs函数以您想要的任何输出格式保存文件——IronOCR支持多种输出格式。

运行项目

现在是运行项目的时候了。 在 Visual Studio 中点击“运行”按钮。 我们将在我们的屏幕上看到这个界面。

Chinese Ocr 8 related to 运行项目

点击“选择图片”按钮。 它将打开“选择文件”对话框。 选择一个图片文件并按回车键。

Chinese Ocr 9 related to 运行项目

它将把图片加载到图片框中,自动扫描图片,并在文本框中显示输出结果。

Chinese Ocr 10 related to 运行项目

这是我们选择的图像的输出。 IronOCR 也支持读取和扫描 PDF 文件。 我们可以使用 IronOCR 来扫描和识别 PDF 文件的可编辑格式中的文本。 这也可以用不同的语言来完成。 IronOCR 可以将现有的 PDF 文档转换为可搜索的 PDF。 IronOCR拥有多种图像滤镜,可以使图像清晰易懂。 以下是过滤器:

  • 输入.二值化()
  • 输入.对比()
  • 输入.纠偏()
  • Input.DeNoise()
  • Input.Dilate()
  • 输入。提高分辨率(300)

    所有这些功能都增加了字符的可见性。 IronOCR使用这些功能来清除并制作可搜索的PDF。 让我们看看如何做到这一点:

using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
    Input.AddPdf("scan.pdf")
    // clean up twisted pages
    Input.Deskew();
    var Result = Ocr.Read(Input);
    Result.SaveAsSearchablePdf("searchable.pdf");
}
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
    Input.AddPdf("scan.pdf")
    // clean up twisted pages
    Input.Deskew();
    var Result = Ocr.Read(Input);
    Result.SaveAsSearchablePdf("searchable.pdf");
}
Imports IronOcr
Private Ocr = New IronTesseract()
Using Input = New OcrInput()
	Input.AddPdf("scan.pdf") Input.Deskew()
	Dim Result = Ocr.Read(Input)
	Result.SaveAsSearchablePdf("searchable.pdf")
End Using
VB   C#

许可

IronOCR 在开发中是免费的。 您可以免费积极使用它的所有功能。 IronOCR还提供了一 免费试用 用于生产而无需任何付款。 Iron Software目前还提供了一个受欢迎的优惠套餐 —— 五款软件产品仅需两款的价格。 只需一次性支付两款软件产品的费用,您将能够获得包括IronPDF和IronXL在内的所有五款产品。 您可以从此处找到更多信息。 链接 关于许可。