操作PDF文件的关键技术点
一个PDF文档从大到小可以分成如下几个要素:文档、章节、小节、段落、表格、列表、
com.lowagie.text.Document表示PDF文档。必须为它创建一个PDF写入器,即com.lowagie.text.pdf.PdfWriter对象,写入器的作用是将Document对象与目标文件关联起来。调用
Document 的open方法便打开了与目标文件的连接;Document的add 方法用于为文档添加章节 。
2 com.lowagie.text.Chapter表示PDF文档中的章节。它的setTitle方法用于设置章节的标题;setNumberDepth方法用于设置小节的编号级别;add方法为小节添加内容,可以是段落、
表格列表、
3 com.lowagie.text.Paragraph表示PDF文档的段落。可以指定段落的对齐方式,字体等属性、
4 com.lowagie.text.Table表示PDF文档的表格。通过它的一系列set方法可以设置表格的样式,比如边框大小、颜色等;addCell方法用于为表格添加单元格,单元格是com.lowagie.text.Cell对象
5 com.lowagie.text.List表示PDF文档中的列表。com.lowagie.text.Listltem表示列表中的项,通过List的add 方法添加到列表中;
使用pdfbox类库读PDF文档的关键技术:
1 org.PDFBox.pdfparser.PDFParser 用于解析PDF文档。它的parse方法用于对PDF文件的输入流进行解析;getPDDocument方法用于获得解析后的PDF文档对象,是一个org.pdfbox.pdmodel.PDDocument对象。
2 org.pdfbox.util.PDF.TextStripper是分析PDF文档对象中广西的工具类,它的getText方法能够提取PDF文档对象中包含的文本。
操作PDF文件的关键技术点的更多相关文章
- vue项目中操作PDF文件
以前从来没接触过前端要求显示PDF文件,一时之间有点懵逼,不知从哪下手啊... 无奈之下,去找度娘,方法还不少,iframe embed object这些标签就可以, 可是拿过来做个demo一试, ...
- .net通过iTextSharp.pdf操作pdf文件实现查找关键字签字盖章
之前这个事情都CA公司去做的,现在给客户做demo,要模拟一下签字盖章了,我们的业务PDF文件是动态生成的所以没法通过坐标定位,只能通过关键字查找定位了. 之前在网上看了许多通多通过查询关键字,然后图 ...
- Itext简绍及操作PDF文件
iText简介 iText是著名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库.通过iText不仅可以生成PDF或rtf的文档,而且可以将XML.Html文件转 ...
- c#操作pdf文件系列之创建文件
1.我使用的工具是vs2013,引用的第三方程序集itextpdf 具体安装方法,可以通过nuget搜索iTextSharp然后进行安装. 2具体代码如下 创建两个不同pdf文件,每个地方什么意思代码 ...
- Qt 操作 pdf 文件
写了好久的东西,不小心按了下返回键就没了.CSDN居然没自动保存,坑爹啊 原本还有很多信息的,现在直入正题吧. QT没有内置PDF操作的功能(其实有一个,QPrinter,不过只能写不能读,基本是半残 ...
- fpdf fpdi 操作pdf文件 写入中文汉字
今天给公司做一个线上合同签约功能,用户签约后 生成pdf版的文件 .网上搜了搜大概都是用fpdf进行操作的 , 通过fpdi 可以进行读取pdf模板. 在通过继承fpdf 操作现有的pdf文档 ...
- itext操作PDF文件添加水印
功能描述:添加图片和文字水印 /** * * [功能描述:添加图片和文字水印] [功能详细描述:功能详细描述] * @param srcFile 待加水印文件 * @param destFile 加水 ...
- 分享一个操作pdf文件的js文件-pdfObject.js(文件预览、下载、打印等操作都具备)
获取相关资料或者源码的朋友可以关注下公众号,回复关键字pdf20200518即可
- 强大的pdf文件操作小工具——PDFtk的小白用法 【转载】
转载出处https://www.cnblogs.com/basterdaidai/p/6204518.html 前言 作为程序员,大家都知道的,总是会被技术小白问各种跟编程没什么关系的硬件.软件问题. ...
随机推荐
- vmware tools 在linux中的作用
VMware Tools是VMware虚拟机中自带的一种增强工具,相当于VirtualBox中的增强功能 是VMware提供的增强虚拟显卡和硬盘性能 以及同步虚拟机与主机时钟的驱动程序. 只有在VMw ...
- CIQRCodeGenerator Core Image Filter Reference
https://developer.apple.com/library/prerelease/content/documentation/GraphicsImaging/Reference/CoreI ...
- 10 months then free? 10个月,然后自由
Parole board to recommend Oscar Pistorius be released in August 假释委员会将建议奥斯卡·皮斯托瑞斯在8月份被释放 By Don Melv ...
- Dijkstra最短路径算法实例
#include <stdio.h>#include <stdlib.h>/* Dijkstra算法 */#define VNUM 5#define MV 65536int P ...
- ctypes 操作 python 与 c++ dll 互传结构体指针
CMakeLists.txt # project(工程名) project(blog-3123958139-1) # add_library(链接库名称 SHARED 链接库代码) add_libra ...
- VIM的姿势
http://blog.csdn.net/vincent_czz/article/details/7900670 http://bbs.feng.com/read-htm-tid-7435912.ht ...
- 使用 Object.create 创建对象,super 关键字,class 关键字
ECMAScript 5 中引入了一个新方法:Object.create().可以调用这个方法来创建一个新对象.新对象的原型就是调用 create 方法时传入的第一个参数: var a = {a: 1 ...
- ecshop 订单-》设置默认收货地址,或者删除
设置位置:ecs_users标的 country字段,默认是0,默认地址是 users_address 的address_id 设置默认收货地址 /** * 设置默认地址 * * @access ...
- css 父层 透明 子层不透明Alpha
html代码 <div class="user2-register-bg"> <div class="user2-register-con"& ...
- Mac安装Brew
安装命令如下:curl -LsSf http://github.com/mxcl/homebrew/tarball/master | sudo tar xvz -C/usr/local --strip ...