没有找到合适的产品?
联系客服协助选型:023-68661681
提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:莫成敏|2019-08-23 11:52:23.210|阅读 325 次
概述:LEADTOOLS Barcode Pro包含了开发人员需要检测、读取和写入超过100种不同的1D和2D条形码类型和子类型,如UPC、EAN、Code 128、QR Code、Data Matrix和PDF417等等。在这篇文章中,将讨论如何智能地从扫描的文件中捕获条形码。
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
相关链接:
LEADTOOLS (Lead Technology)由Moe Daher and Rich Little创建于1990年,其总部设在北卡罗来纳州夏洛特。LEAD的建立是为了使Daher先生在数码图象与压缩技术领域的发明面向市场。在29年的发展历程中,LEAD以其在全世界主要国家中占有的市场领导地位,在数码图象开发工具领域中已成为既定的全球领导者。LEADTOOLS开发与发布的LEAD是屡获殊荣的开发工具包。
LEADTOOLS Barcode Pro包含了开发人员需要检测、读取和写入超过100种不同的1D和2D条形码类型和子类型,如UPC、EAN、Code 128、QR Code、Data Matrix和PDF417等等。相比于市场上其他同类型的条形码成像技术,LEADTOOLS Barcode Pro无疑是最好的。
智能捕获可以指从图像或文档捕获数据的几种不同方式。在这篇文章中,将讨论如何智能地从扫描的文件中捕获条形码。LEADTOOLS TWAIN SDK和条码SDK是开发人员可以轻松地使用它来创建物理文档的扫描应用程序,同时捕捉和提取发现的任何条形码数据库。
AIIM 最近的一项调查表明,32%的受访公司使用智能捕获技术从PDF和其他数字文档中提取条形码。说到这里,让我们创建一个.NET桌面应用程序,它将识别扫描图像中的条形码。对于找到的每个条形码,我们将提取数据,然后将该数据保存到文本文件,同时将扫描的文档另存为PDF。
这个应用程序将只使用三个按钮。一个用于选择将保存PDF和TXT的输出目录,一个用于选择要扫描的扫描仪,另一个用于执行扫描并识别条形码。
SelectDir_Click
// Change the output directory using (FolderBrowserDialog dlg = new FolderBrowserDialog()) { dlg.ShowNewFolderButton = true; if (dlg.ShowDialog(this) == DialogResult.OK) _outputDirectory = System.IO.Path.GetFullPath(dlg.SelectedPath); }
ScannerSelect_Click
// Select the scanner to use _twainSession.SelectSource(null);
Scan_Read_Click
// Scan the new page(s) _twainSession.Acquire(TwainUserInterfaceFlags.Show);
现在添加以下变量。
private static BarcodeEngine engine = new BarcodeEngine(); private static BarcodeReader reader = engine.Reader; // The Twain session private static TwainSession _twainSession; // The output directory for saving PDF files private static string _outputDirectory; // The image processing commands we are going to use to clean the scanned image private static List<RasterCommand> _imageProcessingCommands; private static int _scanCount; private static StringBuilder sb;
在Form1_Load中,添加用于设置许可证的代码、初始化新的Twain会话、订阅TwainSession.Acquire事件,然后初始化任何图像处理命令。
RasterSupport.SetLicense(@"", ""); _twainSession = new TwainSession(); _twainSession.Startup(this.Handle, "My Company", "My Product", "My Version", "My Application", TwainStartupFlags.None); _twainSession.AcquirePage += new EventHandler<TwainAcquirePageEventArgs>(_twainSession_AcquirePage); // Add as many as you like, here we will add Deskew and Despeckle _imageProcessingCommands = new List<RasterCommand>(); _imageProcessingCommands.Add(new DeskewCommand()); _imageProcessingCommands.Add(new DespeckleCommand());
在Form1_FormClosed中,结束TWAIN会话。
// End the twain session _twainSession.Shutdown();
最后添加Twain获取句柄的代码。
private void _twainSession_AcquirePage(object sender, TwainAcquirePageEventArgs e) { _scanCount++; // We have a page RasterImage image = e.Image; // First, run the image processing commands on it foreach (RasterCommand command in _imageProcessingCommands) { command.Run(image); } // Read all the barcodes in this image BarcodeData[] barcodes = reader.ReadBarcodes(e.Image, LeadRect.Empty, 0, null); // Print out the barcodes we found sb = new StringBuilder(); sb.AppendLine($"Contains {barcodes.Length} barcodes"); for (int i = 0; i < barcodes.Length; i++) { BarcodeData barcode = barcodes[i]; sb.AppendLine($" {i + 1} - {barcode.Symbology} - {barcode.Value}"); } // Save string builder to a text file System.IO.File.WriteAllText($@"{_outputDirectory}\barcodes{_scanCount}.txt", sb.ToString()); // Save image as PDF using (RasterCodecs codecs = new RasterCodecs()) { codecs.Save(e.Image, $@"{_outputDirectory}\ScannedImage{_scanCount}.pdf", RasterImageFormat.RasPdf, 0); } }
想要购买LEADTOOLS产品正版授权,或了解更多产品信息请点击
扫描关注慧聚IT微信公众号,及时获取最新动态及最新资讯
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@wqylolg.cn
FastReport .NET 的主要功能之一是能够将多份报告合并为一份。当您需要合并来自不同来源的数据或以更方便的格式呈现信息时,此功能非常有用。在本文中,我们将讨论如何在 FastReport .NET 中将多份报告合并为一份。
本文将手把手教你如何用VMProtect对这一关键函数进行虚拟化保护,大幅提升代码安全性,让逆向工程攻击者无从下手!
在 PDF 文档中添加页眉和页脚有助于保持一致的版式和专业的外观。本文将介绍如何使用 Spire.PDF for Java,通过 Java 在现有的 PDF 文档中添加页眉和页脚,并提供详细的步骤和代码示例。
对于开发人员来说,由于自动化和定制化,通常首选使用编程方法来去除 PDF 中的水印。Aspose.PDF 提供可靠且可定制的解决方案,可无缝集成到各种应用程序中,确保准确性并保持文档完整性。
一款全面的可读写1D和2D条形码的软件开发工具包。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@wqylolg.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢