1. 首页
  2. 是什么

PDF是什么?

PDF是什么?

PDF是什么?便携式文档格式(英语:Portable Document Format,缩写:PDF)是一种用独立于应用程序、硬件、操作系统的方式呈现文档的文件格式。每个PDF文件包含固定布局的平面文档的完整描述,包括文本、字形、图形及其他需要显示的信息。1991年,Adobe Systems共同创始人约翰·沃诺克提出的名为“Camelot”的系统演变成PDF。 如今,PDF文件除平面的文本和图形外,还可能包括逻辑结构元素,注释、表单、图层、富媒体(包括视频内容)之类的交互元素,使用U3D或PRC的三维对象,以及多种其他数据内容。PDF规范还提供了启用这些功能时所需的加密功能、数字签名、文档附件和元数据等。

历史

Adobe Systems在1993年免费提供了PDF规范,当时与PDF一起竞逐跨平台文档格式的,还包括 DjVu(仍在开发中)、Envoy、Common Ground Digital Paper、Farallon Replica 及 Adobe 自己本身的 PostScript(.ps)格式。在万维网及HTML文本尚未兴起时,PDF在桌面出版工作流技术当中很受欢迎。PDF起初为Adobe所控制的专有格式,直到2008年7月1日才被官方以开放标准发行,并由国际标准化组织以 ISO 32000-1:2008 发布。此后,标准的控制权便移转到了产业专家志愿者所组的ISO委员会底下。2008年,Adobe在 ISO 32000-1 发布了公共专利许可,对于制作、使用、销售及发布PDF兼容的应用所需的专利,皆予买断式授权。

PDF 1.7 含有一些Adobe所定义的专有技术,如Adobe XML表单结构(XFA)和JavaScript中对Acrobat的扩展。这些技术被 ISO 32000-1 引用为对于该规范之完整实现不可或缺且规范性的,但是它们并没有被标准化,其规格也只有发布在Adobe的网站上。这些技术大部分也没有被热门的PDF第三方实现所支持。

2017年7月28日,发布了 ISO 32000-2:2017(PDF 2.0)。ISO 32000-2 不将任何专有技术当作是规范性引用文件。

技术基础

PDF主要由三项技术组成:

  • 派生自PostScript页面描述语言的子集,用以生成和输出图形。
  • 字体嵌入/替换系统,可使字体随文件一起传输。
  • 结构化的存储系统,用以绑定这些元素和任何相关内容到单个文件,带有适当的资料压缩系统。

PostScript

PostScript是一种运行于解释器以生成图像的页面描述语言,一个需要大量资源的进程。不仅能处理图形,也具有if及loop之类命令的标准编程语言特性。PDF很大程度上基于PostScript,但做了简化,以移除像这样的流控制特性,还保持着lineto之类的图形命令。

通常,类PostScript的PDF代码产生于PostScript源文件。以PostScript代码输出的图形命令被收集并标记;其中文档所引用的任何文件图像或字体也被收集,然后每一件都被压缩成单个文件。由此,整个的PostScript领域(字体、输出、计量)得以保持完整。

作为一个文档格式,PDF相比较于PostScript有一些优势:

  • PDF包含已标记和解析的PostScript源代码,以在修改PDF页面描述中的项与修改所产生的页面造型之间直接保持一致。
  • PDF(自1.4版)支持真图形透明度;PostScript不支持。
  • PostScript是一种带有隐形全局状态的直译编程语言,因此伴随着一页的指令能任何后续页面的表现。因此,PostScript文档中所有先前的页面必须经过处理以决定所给出的页面的正确的表现,而PDF文档中的每一页不受其他因素的影响。结果PDF查看器允许用户迅速跳转到长文档的最后一页,而一个PostScript查看器需要在能够显示目标页面之前继续地处理所有的页面(除可选PostScript文档结构规范已被周密地遵守外)。