pdf文档格式入门教程

pdf文档格式入门教程

ID:35202098

大小:677.04 KB

页数:9页

时间:2019-03-21

pdf文档格式入门教程_第1页
pdf文档格式入门教程_第2页
pdf文档格式入门教程_第3页
pdf文档格式入门教程_第4页
pdf文档格式入门教程_第5页
资源描述:

《pdf文档格式入门教程》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、一.前言PDF是基于PostScript文本描述语言,PDF特点有1.跨平台2.包含多种类型的内容3.实时的合作编辑4.数字签名保证安全性5.安全和许可保证相关权限6.方便残疾人的阅读7.对其它文件格式和应用程序的重用二.语法应该从4个方面来理解语法1.对象2.文件结构3.文档结构4.内容流PDF并不局限于ASII字符,包括任意的8位字符,但是字符串和流建议用ASCII表示PDF字符集分成3种regular,delimiter,white-space.PDF8种基本数据类型1.Booleanvalues2.Integerandrealnumbers,默认为实数3.St

2、rings,可以写成两种方式(文本),<十六进制数字>,可以使用表示跨行,转义字符的16进制可以表示非ASCII字符4.Names,名字对象总是以/开始5.Arrays,可以由不同的对象构成,6.Dicitionaries,键必须是一个名字,是单重集7.Streams,PDF可以读取流对象以增量的方式,且大小没有限制,而字符串对象必须一次性完全读入,1.Thenullobject2.1文档页面注:如果一个PDF文件包含二进制数据,那么建议报头那行之后应紧紧跟着一行至少包含四个二进制字符的评论,也就是,字符的代码是128或更大。这样确保文件传输应用程序在检测文件开头部

3、分数据时能够采取恰当的操作来确定是把文件内容当作纯文本文件还是二进制数据。文档页面通过页面树结构来访问,该结构定义了文档中页面的顺序。该树结构允许PDF应用程序,使用很小的内存,就能快速打开一个上千页的文档。树型结构包含2种节点--中间节点称为页树型结构节点,和叶节点称为页面对象。应用程序应准备处理构成节点的树型结构的任何格式。最简单的结构是仅包含一个页面树节点,直接指向所有的文档页对象。2.2内容流和资源内容流是描述页面外观和其它图形数据元素的主要手段。内容流取决于所载信息相关的资源词典,这两个对象相结合形成一个自我包含的实体。一个内容流是一个PDF流对象,它的数据

4、由一系列描述在页面上绘图的图形数据元素的指令构成。这些指令以PDF对象形式呈现,使用同样的对象语法。然而尽管文档整体上是一个静态的,随机访问的数据结构,但是内容流中的对象将会按照顺序被解析。1.一个页面可以由一个或多个内容流表示.2.内容流可以独立表示对象(FormXobject,Patterns,Type3字体,外观流)3.内容流可以被编码FlateDecode,在解析PDF文件中的FlateDecode过滤器时存在整数溢出。FlateDecode过滤器中可指定多个参数,之后在算术运算中使用了这些参数值计算所要分配的堆缓冲区的字节数。这个计算可能溢出,导致分配了不充

5、分的堆缓冲区。处理PDF文档中的TrueType字体和JBIG2数据时存在内存破坏。4.内容流中的操作数在操作符之前(后缀表示法),为了便于程序实现.5.内容流中操作符的操作数只能是直接对象,间接对象和对象的引用都是不允许的。在某些情况下,操作符必须指向一个定义在内容流外的PDF对象,例如字体字典或图像数据流。6.一个内容流中的命名资源是由资源字典来定义,资源字典列举了内容流中操作符需要的指定资源和指向所需要的名称。比如,如果一个文本操作符在内容流中出现需要某一个字体,内容流资源字典可以将名称Font1与相应的字体字典结合起来。文本操作符可以使用这个名称指向相应的字体

6、。资源字典可以通过以下方法中的一种与内容流结合:1.作为页面Contents选项的值的内容流,(由于页面Resource属性是可继承性,它可能就位于某个页面对象的父节点中).2.对于其他内容流,流字典的Resources选项指定资源字典。这个适合于指定FormXObjects的内容流,pattern,Tpye3字体,和标注外观流。3.FormXObject或Type3字体字形描述可能缺省Resources选项在这种情况下,可以在使用表单或字体的页面的Resources选项中查询资源。但不建议用这种方法。4.过滤器过滤器可以串联,基本上可以分成两类<4.1>ASCII过

7、滤器,可以将任意的8位数据编码成ASCII文本形式.对于加密过的PDF文件没有作用<4.2>解压过滤器对于压缩过的数据,•交叉引用表(Cross-referenceTable)中包含允许随机访问文件应有的间接对象的信息,从而在定位某一特定对象时不必去读整个PDF文件。每一个PDF文件均应该包含一张交叉引用表,由一个或多个部分(sections)组成。如果没有更新信息扩充到PDF文件,则交叉引用表表仅包含一个部分(section)以对象编号0开始,每更新一次文件就在该文件的交叉引用表表中增加一个部分。三.图形1.Pdf将符号当做一般的图形来对待

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。