使用 IRONOCR 收据扫描 API(开发者教程) Kannapat Udonpant 已更新:六月 22, 2025 下载 IronOCR NuGet 下载 DLL 下载 Windows 安装程序 免费试用 法学硕士副本 法学硕士副本 将页面复制为 Markdown 格式,用于 LLMs 在 ChatGPT 中打开 向 ChatGPT 咨询此页面 在双子座打开 向 Gemini 询问此页面 在双子座打开 向 Gemini 询问此页面 打开困惑 向 Perplexity 询问有关此页面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 复制链接 电子邮件文章 收据扫描 API 使用先进的 OCR 技术从收据中提取关键数据。 它通过消除手动错误和提高生产率来简化数据录入过程。 API 功能多样且准确,支持多种语言、货币和格式。 通过自动解析收据,企业可以深入了解消费模式并做出数据驱动的决策。 本文将演示如何使用 C# OCR 库IronOCR从收据中提取重要信息。 IronOCR。 IronOCR 是 Iron Software 开发的多功能 OCR 库和 API,为开发人员从扫描文档、图像和 PDF 等各种来源中提取文本提供了强大的解决方案。 IronOCR 采用先进的 OCR 算法、计算机视觉和机器学习模型,即使在具有挑战性的场景中,也能确保高准确性和可靠性。 该库支持多种语言和字体样式,适合全球应用。 通过将具有机器学习模型功能的 IronOCR 纳入其应用程序,开发人员可以轻松实现数据录入、文本分析和其他任务的自动化,从而提高生产力和效率。 有了 IronOCR,开发人员可以毫不费力地从各种来源获取文本,包括文档、照片、屏幕截图,甚至是作为 JSON 响应的实时摄像机馈送。 通过利用复杂的算法和机器学习模型,IronOCR 可以分析图像数据、识别单个字符并将其转换为机器可读文本。 提取的文本可用于各种用途,如数据录入、信息检索、文本分析和人工任务自动化。 前提条件 在开始使用 IronOCR 之前,需要具备一些先决条件。 这些前提条件包括 1.确保在计算机上设置了合适的开发环境。 这通常需要安装集成开发环境 (IDE),如 Visual Studio。 2.重要的是要对 C# 编程语言有基本的了解。 这将使您能够有效地理解和修改文章中提供的代码示例。 3.您需要在项目中安装 IronOCR 库。 这可以通过使用 Visual Studio 中的 NuGet 包管理器或命令行界面来完成。 确保满足这些先决条件,您就可以进入 IronOCR 的工作流程了。 创建一个新的 Visual Studio 项目 要开始使用 IronOCR,第一步是创建一个新的 Visual Studio 项目。 打开 Visual Studio 并转到 "文件",然后悬停在 "新建 "上,点击 "项目"。 !收据扫描 API(开发人员教程),图 1:新项目图像。 安装 IronOCR 在新窗口中,选择 "控制台应用程序",然后单击 "下一步"。 !收据扫描 API(开发人员教程),图 2:控制台应用程序。 控制台应用程序 将出现一个新窗口。 写入新项目的名称和位置,然后单击 "下一步"。 !收据扫描 API(开发人员教程),图 3:项目配置。 项目配置 最后,提供目标框架并点击创建。 !收据扫描 API(开发人员教程),图 4:目标框架。 目标框架 现在您的新 Visual Studio 项目已经创建,让我们安装 IronOCR。 安装 IronOCR。 有几种下载和安装 IronOCR 库的方法。 不过,这里有两种最简单的方法。 1.使用 Visual Studio NuGet 软件包管理器 2.使用 Visual Studio 命令行 使用 Visual Studio NuGet 软件包管理器 IronOCR 可通过 Visual Studio NuGet 包管理器包含在 C# 项目中。 选择 工具 > NuGet软件包管理器 > 管理解决方案的 NuGet 软件包,导航至 NuGet 软件包管理器图形用户界面。 !a href="/static-assets/ocr/blog/receipt-scanning-api-tutorial/receipt-scanning-api-tutorial-5.webp">Receipt Scanning API(开发人员教程),图 5:NuGet 软件包管理器。 NuGet 软件包管理器 之后,将出现一个新窗口。 搜索 IronOCR 并将软件包安装到项目中。 !a href="/static-assets/ocr/blog/receipt-scanning-api-tutorial/receipt-scanning-api-tutorial-6.webp">收据扫描 API(开发人员教程),图 6: IronOCR IronOCR 还可以使用上述相同方法安装 IronOCR 的其他语言包。 使用 Visual Studio 命令行 1.在 Visual Studio 中,转到 工具 > NuGet软件包管理器 > 软件包管理器控制台 2.在 "软件包管理器控制台 "选项卡中输入以下一行: ```shell :ProductInstall ``` 。 **软件包管理器控制台** 现在,软件包将下载/安装到当前项目中,即可使用。 使用收据 OCR API 提取数据 使用 IronOCR 从收据图像中提取数据并以结构化数据形式保存,对大多数开发人员来说都是救星。 使用 IronOCR,只需几行代码就能实现这一目标。 使用该工具,您可以提取不同文档类型的行项目、定价、税额、总金额等。 using IronOcr; using System; using System.Collections.Generic; using System.Text.RegularExpressions; class ReceiptScanner { static void Main() { var ocr = new IronTesseract(); // Load the image of the receipt using (var input = new OcrInput(@"r2.png")) { // Perform OCR on the input image var result = ocr.Read(input); // Regular expression patterns to extract relevant details from the OCR result var descriptionPattern = @"\w+\s+(.*?)\s+(\d+\.\d+)\s+Units\s+(\d+\.\d+)\s+Tax15%\s+\$(\d+\.\d+)"; var pricePattern = @"\$\d+(\.\d{2})?"; // Variables to store extracted data var descriptions = new List<string>(); var unitPrices = new List<decimal>(); var taxes = new List<decimal>(); var amounts = new List<decimal>(); var lines = result.Text.Split('\n'); foreach (var line in lines) { // Match each line against the description pattern var descriptionMatch = Regex.Match(line, descriptionPattern); if (descriptionMatch.Success) { descriptions.Add(descriptionMatch.Groups[1].Value.Trim()); unitPrices.Add(decimal.Parse(descriptionMatch.Groups[2].Value)); // Calculate tax and total amount for each item var tax = unitPrices[unitPrices.Count - 1] * 0.15m; taxes.Add(tax); amounts.Add(unitPrices[unitPrices.Count - 1] + tax); } } // Output the extracted data for (int i = 0; i < descriptions.Count; i++) { Console.WriteLine($"Description: {descriptions[i]}"); Console.WriteLine($"Quantity: 1.00 Units"); Console.WriteLine($"Unit Price: ${unitPrices[i]:0.00}"); Console.WriteLine($"Taxes: ${taxes[i]:0.00}"); Console.WriteLine($"Amount: ${amounts[i]:0.00}"); Console.WriteLine("-----------------------"); } } } } using IronOcr; using System; using System.Collections.Generic; using System.Text.RegularExpressions; class ReceiptScanner { static void Main() { var ocr = new IronTesseract(); // Load the image of the receipt using (var input = new OcrInput(@"r2.png")) { // Perform OCR on the input image var result = ocr.Read(input); // Regular expression patterns to extract relevant details from the OCR result var descriptionPattern = @"\w+\s+(.*?)\s+(\d+\.\d+)\s+Units\s+(\d+\.\d+)\s+Tax15%\s+\$(\d+\.\d+)"; var pricePattern = @"\$\d+(\.\d{2})?"; // Variables to store extracted data var descriptions = new List<string>(); var unitPrices = new List<decimal>(); var taxes = new List<decimal>(); var amounts = new List<decimal>(); var lines = result.Text.Split('\n'); foreach (var line in lines) { // Match each line against the description pattern var descriptionMatch = Regex.Match(line, descriptionPattern); if (descriptionMatch.Success) { descriptions.Add(descriptionMatch.Groups[1].Value.Trim()); unitPrices.Add(decimal.Parse(descriptionMatch.Groups[2].Value)); // Calculate tax and total amount for each item var tax = unitPrices[unitPrices.Count - 1] * 0.15m; taxes.Add(tax); amounts.Add(unitPrices[unitPrices.Count - 1] + tax); } } // Output the extracted data for (int i = 0; i < descriptions.Count; i++) { Console.WriteLine($"Description: {descriptions[i]}"); Console.WriteLine($"Quantity: 1.00 Units"); Console.WriteLine($"Unit Price: ${unitPrices[i]:0.00}"); Console.WriteLine($"Taxes: ${taxes[i]:0.00}"); Console.WriteLine($"Amount: ${amounts[i]:0.00}"); Console.WriteLine("-----------------------"); } } } } Imports Microsoft.VisualBasic Imports IronOcr Imports System Imports System.Collections.Generic Imports System.Text.RegularExpressions Friend Class ReceiptScanner Shared Sub Main() Dim ocr = New IronTesseract() ' Load the image of the receipt Using input = New OcrInput("r2.png") ' Perform OCR on the input image Dim result = ocr.Read(input) ' Regular expression patterns to extract relevant details from the OCR result Dim descriptionPattern = "\w+\s+(.*?)\s+(\d+\.\d+)\s+Units\s+(\d+\.\d+)\s+Tax15%\s+\$(\d+\.\d+)" Dim pricePattern = "\$\d+(\.\d{2})?" ' Variables to store extracted data Dim descriptions = New List(Of String)() Dim unitPrices = New List(Of Decimal)() Dim taxes = New List(Of Decimal)() Dim amounts = New List(Of Decimal)() Dim lines = result.Text.Split(ControlChars.Lf) For Each line In lines ' Match each line against the description pattern Dim descriptionMatch = Regex.Match(line, descriptionPattern) If descriptionMatch.Success Then descriptions.Add(descriptionMatch.Groups(1).Value.Trim()) unitPrices.Add(Decimal.Parse(descriptionMatch.Groups(2).Value)) ' Calculate tax and total amount for each item Dim tax = unitPrices(unitPrices.Count - 1) * 0.15D taxes.Add(tax) amounts.Add(unitPrices(unitPrices.Count - 1) + tax) End If Next line ' Output the extracted data For i As Integer = 0 To descriptions.Count - 1 Console.WriteLine($"Description: {descriptions(i)}") Console.WriteLine($"Quantity: 1.00 Units") Console.WriteLine($"Unit Price: ${unitPrices(i):0.00}") Console.WriteLine($"Taxes: ${taxes(i):0.00}") Console.WriteLine($"Amount: ${amounts(i):0.00}") Console.WriteLine("-----------------------") Next i End Using End Sub End Class $vbLabelText $csharpLabel 如下所示,IronOCR 可以轻松地从收据中提取所需的文本。 !收据扫描 API(开发人员教程),图 8:输出。 Output 提取整个收据 如果您想提取整个收据,只需在 OCR 收据上编写几行代码即可轻松实现。 using IronOcr; using System; class WholeReceiptExtractor { static void Main() { var ocr = new IronTesseract(); using (var input = new OcrInput(@"r3.png")) { // Perform OCR on the entire receipt and print text output to console var result = ocr.Read(input); Console.WriteLine(result.Text); } } } using IronOcr; using System; class WholeReceiptExtractor { static void Main() { var ocr = new IronTesseract(); using (var input = new OcrInput(@"r3.png")) { // Perform OCR on the entire receipt and print text output to console var result = ocr.Read(input); Console.WriteLine(result.Text); } } } Imports IronOcr Imports System Friend Class WholeReceiptExtractor Shared Sub Main() Dim ocr = New IronTesseract() Using input = New OcrInput("r3.png") ' Perform OCR on the entire receipt and print text output to console Dim result = ocr.Read(input) Console.WriteLine(result.Text) End Using End Sub End Class $vbLabelText $csharpLabel !收据扫描 API(开发人员教程),图 9:扫描收据 API 输出。 扫描接收 API 输出 IronOCR 等收据图像扫描 API 为自动提取收据数据提供了强大的软件解决方案。通过利用先进的 OCR 技术,企业可以轻松地从收据图像或扫描件中提取重要信息,包括企业供应商名称、购买日期、明细清单、价格、税金和总金额。 通过支持多种语言、货币、收据格式和条形码支持,企业可以简化收据管理流程、节省时间、洞察消费模式并做出数据驱动的决策。 IronOCR 作为一个通用的 OCR 库和 API,为开发人员提供了从各种来源中准确、高效地提取文本所需的工具,实现了任务自动化,提高了整体效率。 通过满足必要的先决条件并将IronOCR集成到他们的应用程序中,开发人员可以解锁收据数据处理的好处并增强工作流程。 有关 IronOCR 的更多信息,请访问此许可页面。 要了解如何使用计算机视觉查找文本,请访问此计算机视觉操作指南页面。 有关收据 OCR 的更多教程,请访问以下 OCR C# 教程。 常见问题解答 如何在 C# 中使用 OCR 自动化收据数据提取? 您可以在 C# 中使用 IronOCR 自动化收据数据提取,它允许高效地从收据图像中提取项目明细、价格、税费和总金额等关键信息。 在 C# 中设置收据扫描项目的前提条件是什么? 在 C# 中设置收据扫描项目,您需要 Visual Studio、基本的 C# 编程知识以及在项目中安装 IronOCR 库。 如何使用 Visual Studio 的 NuGet 包管理器安装 OCR 库? 打开 Visual Studio,依次转到工具 > NuGet 包管理器 > 管理解决方案的 NuGet 包,搜索 IronOCR 并安装到您的项目中。 我可以使用 Visual Studio 命令行安装 OCR 库吗? 是的,您可以通过打开 Visual Studio 的包管理器控制台并运行命令:Install-Package IronOcr来安装 IronOCR。 如何使用 OCR 从整个收据提取文本? 要从整个收据提取文本,使用 IronOCR 对完整收据图像执行 OCR,然后使用 C# 代码输出提取的文本。 收据扫描 API 提供了哪些好处? 像 IronOCR 这样的收据扫描 API 自动化数据提取,减少手动错误,提高生产力,并为更好的商业决策提供消费模式的见解。 OCR 库是否支持多种语言和货币? 是的,IronOCR 支持多种语言、货币和收据格式,非常适合全球应用。 OCR 库在从图像中提取文本方面的准确性如何? IronOCR 通过使用先进的 OCR 算法、计算机视觉和机器学习模型,确保即使在复杂场景下也能实现高准确性。 使用 OCR 可以从收据中提取哪些类型的数据? IronOCR 可以提取项目明细、价格、税费、总金额以及其他收据详情等数据。 自动化收据解析如何改善业务流程? 通过 IronOCR 自动化收据解析,可以减少手动输入,实现准确的数据采集,并促进数据驱动的决策制定,从而改善业务流程。 Kannapat Udonpant 立即与工程团队聊天 软件工程师 在成为软件工程师之前,Kannapat 在日本北海道大学完成了环境资源博士学位。在攻读学位期间,Kannapat 还成为了车辆机器人实验室的成员,隶属于生物生产工程系。2022 年,他利用自己的 C# 技能加入 Iron Software 的工程团队,专注于 IronPDF。Kannapat 珍视他的工作,因为他可以直接从编写大多数 IronPDF 代码的开发者那里学习。除了同行学习外,Kannapat 还喜欢在 Iron Software 工作的社交方面。不撰写代码或文档时,Kannapat 通常可以在他的 PS5 上玩游戏或重温《最后生还者》。 相关文章 已发布十二月 18, 2025 C# 读取 PDF 表单字段:以编程方式提取表单数据 了解如何使用IronPDF在C#中读取PDF表单字段。从可填写PDF中提取文本、复选框、下拉列表等,提供简单的代码示例。 阅读更多 已发布十二月 18, 2025 C# 从 PDF 中提取图像:完整开发者指南 了解如何在C#中使用IronPDF强大的方法从PDF文档中提取图像。包含.NET开发人员的完整指南和代码示例。 阅读更多 已发布十二月 18, 2025 C# 将 PDF 转换为图像:完整开发者指南 了解如何在C#中使用IronPDF将PDF文档转换为图像。提供JPG、PNG和TIFF转换的逐步指南和代码示例。 阅读更多 开发者的 OCR 自动化指南发票处理的最佳 OCR(更新...
已发布十二月 18, 2025 C# 读取 PDF 表单字段:以编程方式提取表单数据 了解如何使用IronPDF在C#中读取PDF表单字段。从可填写PDF中提取文本、复选框、下拉列表等,提供简单的代码示例。 阅读更多