首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用iTextSharp从PDF中提取PDF417条形码并获取其数据

iTextSharp是一个开源的PDF处理库,可以用于创建、修改和提取PDF文档中的内容。在使用iTextSharp从PDF中提取PDF417条形码并获取其数据时,可以按照以下步骤进行操作:

  1. 导入iTextSharp库:首先,需要将iTextSharp库导入到你的项目中。你可以从iTextSharp的官方网站(https://github.com/itext/itextsharp)下载最新版本的库文件,并将其添加到你的项目引用中。
  2. 加载PDF文档:使用iTextSharp的PdfReader类加载待处理的PDF文档。你可以使用PdfReader的构造函数传入PDF文件的路径来实现。
  3. 遍历PDF页面:通过PdfReader对象的GetPageN()方法,可以获取PDF文档中的每个页面。你可以使用PdfReader的GetNumberOfPages()方法获取PDF文档的总页数,并使用一个循环遍历每个页面。
  4. 提取条形码:在每个页面中,可以使用iTextSharp的BarcodeReader类来提取条形码。首先,你需要使用PdfReader的GetPageContent()方法获取页面的内容。然后,将页面内容传递给BarcodeReader的ProcessContent()方法,该方法将返回一个包含所有条形码的列表。
  5. 获取条形码数据:对于每个提取到的条形码,你可以使用BarcodeReader的GetResultPoints()方法获取条形码的位置信息,并使用GetBarcodeText()方法获取条形码的数据。

以下是一个示例代码,演示了如何使用iTextSharp从PDF中提取PDF417条形码并获取其数据:

代码语言:csharp
复制
using System;
using iTextSharp.text.pdf;
using iTextSharp.text.pdf.parser;
using iTextSharp.text.pdf.qrcode;

public class PDF417Extractor
{
    public static void Main(string[] args)
    {
        string pdfPath = "path/to/your/pdf/file.pdf";
        PdfReader reader = new PdfReader(pdfPath);

        for (int page = 1; page <= reader.NumberOfPages; page++)
        {
            PdfDictionary pageDict = reader.GetPageN(page);
            PdfArray contentArray = pageDict.GetAsArray(PdfName.CONTENTS);

            if (contentArray != null)
            {
                foreach (PdfObject contentObj in contentArray)
                {
                    if (contentObj is PRStream)
                    {
                        PRStream stream = (PRStream)contentObj;
                        byte[] contentBytes = PdfReader.GetStreamBytes(stream);
                        BarcodeQRCode barcode = new BarcodeQRCode(contentBytes, contentBytes.Length, null);
                        string barcodeData = barcode.GetBarcodeText();

                        Console.WriteLine("Barcode Data: " + barcodeData);
                    }
                }
            }
        }

        reader.Close();
    }
}

这是一个简单的示例,它遍历PDF文档的每个页面,提取其中的PDF417条形码并获取其数据。你可以根据实际需求进行修改和扩展。

腾讯云相关产品和产品介绍链接地址:

请注意,以上链接仅供参考,具体的产品选择应根据实际需求和情况进行评估。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

java PDF开源库选择与iText发展历史

它可以创建一个新PDF文档,操作现有PDF文档并提取文档的内容。 JFreeReport 2146 JFreeReport的数据继承自Swing组件的TableModel接口。...2.2.2 模块/功能比拼 接着来看一下各自的功能特性: PDFBox: Unicode文本提取 PDF文档拼接/分离 PDF表单里面提取数据/数据填充表单 验证PDF文档是否符合PDF/A...iText GitHub 能方便地加入你的数据处理,详情参阅参考资料7 2.2.3 文档例子比拼 最后看一下两者提供的文档: iText: 官网提供的资料很多 出版了几本电子书,最新的iText7...iText提供除了基本的创建、修改PDF文件外的其他高级的PDF特性,例如基于PKI的签名,40位和128位加密,颜色校正,带标签的PDFPDF表单(AcroForms),PDF/X,通过ICC配置文件和条形码进行颜色管理...2.1.7/iTextSharp 4.1.6.0) iText 5.x和iTextSharp 5.x(2009-2016) 2009年,许可协议LGPL/MPL变成了AGPL iTextSharp被设计成

5.6K30

SpreadJS 类Excel表格控件 - V12 新特性详解

(图:SpreadJS v12 新增雷达图(Radar)) 旭日图(Sunburst)展示了根节点(中心)向外到较低层次结构的分层数据。内圆的一段是外圆的分段的父代,它位于父代的角度扫描范围内。...在下面的例子,世界人口用大陆、区域、国家来表示,使用颜色进行区分。...如果您的应用程序存在空间限制,并且您需要使用工作表的表定义的众多实体绘制数千个数据点,则它们特别有用。...以下是用树图表示的世界人口图表: (图:SpreadJS v12 新增树图(Treemap)) 新增迷你图(Sparkline)类型:条形码(Barcode) 通过设置迷你图类型,您可以轻松的在单元格呈现您需要的条形码...,SpreadJS v12已经支持 QRCode, EAN-13, EAN-8, Codabar, Code39, Code93, Code128, GS1_128, Code49, PDF417, DataMatrix

1.8K20

二维码知识介绍

一、二维码的分类 二维码,字面上看就是用两个维度(水平方向和垂直方向)来进行数据的编码,条形码只利用了一个维度(水平方向)表示信息,在另一个维度(垂直方向)没有意义,所以二维码比条形码有着更高的数据存储容量...形成方式上,二维码可以分为两类, 1、堆叠式二维码:在一维条形码的基础上,将多个条形码堆积在一起进行编码,常见的编码标准有PDF417等 ?                          ...图1 PDF417码示例 2、矩阵式二维码:在一个矩阵空间中通过黑色和白色的方块进行信息的表示,黑色的方块表示1,白色的方块表示0,相应的组合表示了一系列的信息,常见的编码标准有QR 码,汉信码等 ?...图2 QR码示例                                  图3 汉信码示例 PDF417由美国研发,在美国地区使用广泛 汉信码由中国自主研发,目前已在政府相关领域得到初步的使用...图9                                                                       图10 左下角开始,1为黑色,0为白色,按顺序依次填入二维码

2.3K100

微信小程序调用摄像头扫描识别二维码和条形码

然后就找了一下,其实微信小程序 API 自带一个扫码识别的功能。 wx.scanCode(Object object) 调起客户端扫码界面进行扫码。...示例代码: // 允许相机和相册扫码 wx.scanCode({   success(res) {     console.log(res)   } }) // 只允许相机扫码 wx.scanCode...接口调用结束的回调函数(调用成功、失败都会执行) object.scanType 的合法值 值 说明 barCode 一维码 qrCode 二维码 datamatrix Data Matrix 码 pdf417...PDF417 条码 object.success 回调函数 参数 Object res 属性 类型 说明 result string 所扫码的内容 scanType string 所扫码的类型 charSet...一维码 UPC_E 一维码 UPC_EAN_EXTENSION 一维码 WX_CODE 二维码 CODE_25 一维码 声明:本文由w3h5原创,转载请注明出处:《微信小程序调用摄像头扫描识别二维码和条形码

10.1K40

LIMS系统仪器数据采集-使用xpdf解析pdf内容

不同语言解析PDF内容都有各自的库,比如Java的pdfbox,.net的itextsharp。.../mahongbiao/p/3760867.html 这些类库解析PDF文本有一个弊端,就是可配置性不强,它们多数是用于PDF文件生成的,对于PDF文本内容的提取仅提供一两个函数供调用。...而使用xpdf,则可以指定-layout参数,将其按照页面显示的布局方式输出。 下图为PDF样式: ? 下图为pdfBox、itextsharp解析出的内容样式: ?...可以看出,使用xpdf解析出的内容较容易识别出有意义的数据项。...例子的中文没有解析出来,可通过配置PDF中文字体解决,xpdf的另一个强项功能,就是它支持配置pdf字体,有些PDF内容通过itextsharp解析不出来的情况下,使用xpdf在配置了正确字体后可以解析出内容

1.7K40

【译】让图片更有意义——图形检测API

不过目前这些动态或静态图像数据处理都是不透明的,尽管图片实际上包含了许多有趣的特征,如人脸、条形码和文本。...购物app可以允许用户自行扫描商店货品的EAN或UPC条形码,用于在线对比商品价格。 机场可以推出在线信息服务,乘客通过扫描登机牌上的条形码,来获取与他们乘坐的航班相关的信息。...进展情况 项目 进度 创建解释器 已完成 构建草案规范 进度 反馈收集和设计 进度 浏览器验证 进度 发布 未开始 图形检测API的使用 FaceDetector、BarcodeDetector...code_39', 'code_93', 'codabar', 'data_matrix', 'ean_13', 'ean_8', 'itf', 'pdf417...探测结果可以被序列化通过postMessage方法传会主线程。这里有个演示demo。 并不是所有的平台都支持这些功能,所以一定要进行特征检测检查支持情况,并把图形检测API视为渐进增强的功能。

82820

Umi-OCR一款火遍全网的智能文字识别工具

在笔者看来,AI处理能力强弱的最核心的评判指标终将是数据,先是数据质量,再是数据规模。两者任何一个的差距都将是能力强弱的分水岭。那么接踵而至数据哪里来?我们又将要如何提取数据?......本文的这款软件将会重点帮我们解决如何图片、二维码、PDF等介质中提取文件内容的问题,相信大家读完本文后会有一定的收获。...•二维码 - 支持扫码或生成二维码图片•文档识别- PDF扫描件中提取文本,或转为双层可搜索PDF• 全局设置 - 添加更多PP-OCR支持的语言模型库!...可截图/粘贴/拖入本地图片,读取其中的二维码、条形码。2. 支持一图多码。3....近期开发计划 在接下来的v2版本的头几个更新,我们计划逐步推出以下新功能: •PDF识别:将支持PDF文件识别文本,包括扫描的PDF文档中提取文字。

3.2K10

ActiveReports 9实战教程(3): 图文并茂的报表形式

报表实战1:常规报表--数据清单--客户清单 ? 本实例,通过组合使用AR报表的Lable、TextBox控件,来实现表格展现客户数据。...这里我们使用一个AR报表设计的小技巧:直接报表资源管理器中选择字段拖入Detail区域。 Step 5 设计PageFooter区域 ? ? 至此,我们通过上面的实战步骤,完成了客户清单报表。...报表实战3:常规报表--条形码--国航机票 ? 在这个实例,我们通过条形码和AR9新出的圆角设计进行一个类似国航机票的报表实战。...添加Image报表控件,设置国航机票的背景图片。 ? Step 3:添加条形码 上面添加了Image控件后,我们来添加条形码控件。 ? 配置条形码属性 ? LayerName:设置为Layer1。...ActiveReports 提供的Barcode控件支持37种条码格式,其中包括:Code39码、Code25码、ITF25码、Matrix25码、UPC-A码、UPC-E码、EAN-13码、EAN-8码等一维条码和PDF417

1.7K60

二维码是如何实现的?

二维条码是指在一维条码的基础上扩展出另一维具有可读性的条码,使用黑白矩形图案表示二进制数据,被设备扫描后可获取其中所包含的信息。一维条码的宽度记载着数据,而其长度没有记载数据。...堆叠式/行排式二维条码,如,Code 16K、Code 49、PDF417(如右图)等。 ?...矩阵式二维码,最流行莫过于QR CODE,二维码的名称是相对与一维码来说的,比如以前的条形码就是一个“一维码”。...3、纠错编码:按需要将上面的码字序列分块,根据纠错等级和分块的码字,产生纠错码字,并把纠错码字加入到数据码字序列后面,成为一个新的序列。...对于这224个纠错码字,它能够纠正112个替代错误(如黑白颠倒)或者224个据读错误(无法读到或者无法译码),这样纠错容量为:112/346=32.4% 4、构造最终数据信息:在规格确定的条件下,将上面产生的序列按次序放如分块按规定把数据分块

82750

开源免费且稳定实用的.NET PDF打印组件itextSharp(.NET组件介绍之八)

对于项目开发中使用到打印的地方会非常多,在.NET项目中,选择打印的方式比较多,例如原始的IE网页打印、水晶报表、JS插件实现打印、导出文档打印,以及今天提到的使用itextSharp组件实现PDF打印等等...在.NET实现PDF打印的组件比较多,例如PDFsharp、Report.NET、sharpPDF、itextSharp等等,今天主要简单的介绍itextSharp组件。...一.itextSharp组件概述:          1.iText的是PDF库,它允许你创建,调整,检查和维护的可移植文档格式文件(PDF):         (1).基于XML文件或数据数据生成文件和报告...iText所使用的的Java,.NET,Android和GAE开发人员加强与PDF功能的应用程序。iTextSharp的是.NET端口。    ...文件模板可以将相关信息序列化(json或者二进制),在项目中直接加载模型,并将数据绑定在模板,实现pdf打印的动态配置。

7.4K50

Python高阶项目(转发请告知)

代码 视频中提取文本 我将指导您如何使用Python视频中提取文本。第一步是下载视频。...使用Python的视频到音频转换器 将视频转换为音频文件似乎是一个奇怪的决定,但在特定情况下可能会派上用场。它最常用于录制视频的音轨或您仅对声音感知的视频中提取其他音轨。...现在,您可以通过将代码显示在笔记本电脑的摄像头上,轻松运行该代码扫描任何条形码和QR码。 使用Python创建有声读物 PyPDF2允许操作内存pdf。...PDF提取文本 PDF文件提取文本时,我们面临的最大挑战是PDF文件采用不同的文件格式。...以下部分调用PIL库,使用pytesseract导入图像: 我们需要初始化文档的路径和计数器,刹车稍后在pdf提取功能中使用以对文件夹的文档进行计数: 我们需要从pdf文件删除一些不需要的文件

4.3K10

一码通的时代,如何实现二维码的检测和解码?手把手教你!

setEpsY(double epsY); /** 图像的二维码检测返回二维码检测包围框矩形*/    CV_WRAP bool detect(InputArray img, OutputArray...straight_qrcode:可选的输出图像,该图像包含经过校正和二值化的二维码(返 回值)。 retval:解码的数据结果(返回值)。...常用的二维码编码方式有 PDF417、Data Matrix、QR Code、Code 49、Code 16K、 Code one 等,如 12.4 节的案例使用的二维码编码方式为 QR Code。...条形码与二维码的对比如下。 二维码包含的信息量远大于条形码包含的信息量:条形码包含的内容只能是字母和数 字,尺寸较大,因而空间利用率较低,容纳的数据量一般为 30 个字符左右。...超过100个案例,使用简洁生动的语言,和更新的Python语言实现代码去描述相应的操作方法 本书使用Python语言,以OpenCV源码结构的模块为章节,系统地介绍了OpenCV在图像处理和计算机视觉领域的应用

1.1K10

Visionpro从小白到大佬,第一章了解工具名称和用途

编程—配置采集、选择和优化视觉工具,做出通过/未通过决策(无论是否使用编程)智能软件动态地固定工具,同时可重复使用的工具组和用户可定义工具能够缩短开发时间。...功能:在图像找寻像素值的训练模板 CogDataAnalysisTool 功能:数据分析工具 CogImageFileTool 功能:将获得的图像保存至文件或文件获取图像 CogPatInspectTool...功能:彩色图像中分离像素 CogCompositeColorMatch 功能:彩色图像检查颜色容量 5、 Geometry - Creation ?...功能:确定字符串是否包含预期的字符 CogOCVTool 功能:确定字符串、logo等是否存在于图像 CogPDF417Tool 功能:用于解码PDF417符号 CogIDTool 功能...:识别二维码条形码 10、 Geometry - Measurement ?

10.1K54

AI绘画专栏之statble diffusion SD艺术二维码教程(六)

围绕这三个问题,模型下载,参数调试,场景抽卡来对艺术二维码入门到放弃写一篇介绍。  认识二维码 为啥叫二维?一维码是啥? 常见的商品条形码即为一维码 为啥叫QR?...是一个Quick Response Code的缩写,即为快速响应矩阵码 常见的二维码有:PDF417码、QR码、汉信码、颜色条码、quick mark code、data matrix 二维码简单可由定位码...,版本,数据即可组成 二维码的转化 使用QR Tool kit或者草料二维码解码或者转化为可识别二维码,包含短连接,网址,微信二维码等等 生成二维码 目前常用的分辨率为768*768,二维码的码眼是可选的...选择你想要的风格模型 输入您想要的二维码的样式的绘画关键词 然后只需要等待几秒,就可以获得你的专属二维码啦~ SD版本 本次需要用到三个cn单元,三个cn模型,这些我都整理好打包到网盘了,大家回复二维码就可以了 0...到0.25是最佳点,如果0开始,qr有优先权,你提高得越高,提示就越强,越容易识别 不建议使用Hires修复程序, 为了确保在二维码内顺利生成详细信息,建议使用短链接因为二维码的复杂性会随着链接或文本的增加而增加

39920
领券