PDF/X、PDF/A、PDF/E:有什么区别,为什么有这么多格式?

news/2024/12/21 21:07:48/

PDF 是一种通用文件格式,允许用户演示和共享文档,无论软件、硬件或操作系统如何。多年来,已经创建了多种 PDF 子类型来满足各个行业的不同需求。让我们看看一些最流行的格式:PDF/X、PDF/A 和 PDF/E。

    FastReport .net下载

PDF/X

PDF/X 是一种专业的图形交换标准,针对一致且可预测的打印进行了优化。与可以包含任何内容(例如交互式元素和媒体文件)的常规 PDF 不同,PDF/X 仅限于某些数据类型,这使其特别适合共享可打印的文件。

PDF/X的主要特点:

  • 颜色模型。文档中的所有颜色都必须在已知的颜色空间中定义,通常是 CMYK 或专色。它消除了与印刷中颜色解释相关的不确定性。
  • 内置资源。所有必需的资源(例如字体和图像)都必须嵌入到文件中。它确保文档在任何硬件上看起来都相同。
  • 没有互动元素。没有评论、表单字段、视频和 JavaScript 等交互元素。
  • 指定的输出格式。该文档必须包含有关打印时如何显示的信息,这意味着对页面的位置和布局有一定的要求。

PDF/X 子 类型:

PDF/X-1a:

  • 基于 PDF 1.3 标准。
  • 颜色仅定义为 CMYK 或专色。
  • 不支持 ICC 配置文件。

PDF/X-3:

  • 支持 CMYK、专色和 ICC 配置文件。
  • 允许您在一份文档中使用不同的色彩空间。

PDF/X-4:

  • 支持 PDF 1.6 及更高版本中提供的图层、透明度和其他新功能。
  • 支持多种色彩空间
PDF/A

PDF/A 是 PDF 格式的子集,旨在满足电子文档长期存储的需求。与 PDF 标准不同,PDF/A 禁止使用可能在较长时间内导致文档外观出现问题的组件,这使其成为归档的理想选择。

PDF/A的主要特点:

  • 内置资源。正确显示文档的所有资源(例如字体和图像)必须嵌入到文件中。
  • 缺乏互动性。禁止 JavaScript、音频、视频和可执行文件等交互元素。
  • 颜色稳定。文档必须使用稳定的颜色模型,以保证长期显示的一致性。
  • 禁止外部依赖。您不得引用可能随时间变化或消失的外部资源。

PDF/A 子类型:

PDF/A-1:

  • 基于 PDF 1.4 标准。
  • 它分为两部分:PDF/A-1a 用于完全合规性,包括用于可访问性的结构标签,以及 PDF/A-1b 用于基本视觉合规性。

PDF/A-2:

  • 基于 PDF 1.7 标准。
  • 包括改进的对嵌入注释、图层、透明度和压缩的支持。
  • 它还分为合规级别:PDF/A-2a、PDF/A-2b、PDF/A-2u。

PDF/A-3:

  • 扩展 PDF/A-2,允许构建任何格式的嵌入式文件(包括 XML、CSV 或 CAD 文件)。
  • 它还分为合规级别:PDF/A-3a、PDF/A-3b、PDF/A-3u。
PDF/电子版

PDF/E 是 PDF 格式的子集,专为工程、建筑和施工专业人士设计。该标准解决了共享、查看和打印动态技术文档(包括图表、绘图和 3D 图形)的需求。

PDF/E的主要特点:

  • 支持复杂图形。包括图层、透明度、3D 模型和交互元素。
  • 元数据。增强的元数据可改进文档内容的搜索和管理。
  • 精确的几何形状。用于精确再现直线、曲线和曲面等几何对象。
  • 嵌入文件。能够包含相关文件或源文件,例如规格或 CAD 数据。
为什么有这么多格式?

不同的行业有不同的需求。创建专门的 PDF 子集使我们能够满足这些需求,而无需创建全新的标准。这些配置文件可确保特定应用的标准化、可预测性和可靠性。

FastReport .NET 中是否提供这些格式?

FastReport .NET 拥有大部分导出格式,仅缺少 PDF/E。这些格式可以在设计器和应用程序代码中使用。要在设计器中选择所需的格式,请单击“保存”和“PDF 格式”。然后转到“设置”选项卡并选择所需的格式。

格式选择

最后,我们将收到所需格式的所需文件。

要导出为特定格式,我们需要创建一个应用程序,连接FastReport包,并编写所需的代码。以下是如何将 PDF 另存为 PDF/A 的示例。

Report report = new Report();
report.Load("PathToYourReport.frx");
// Setting up PDF export
PDFExport pdfExport = new PDFExport();
// For export to PDF/A format
pdfExport.PdfCompliance=PDFExport.PdfStandard.PdfA_2a;
// You can select the desired compliance level
report.Prepare();
report.Export(pdfExport, "OutputPath.pdf");

尽管 PDF 子类型有很多,但每种子类型都是为了特定目的并满足特定行业的需求而开发的。选择哪种格式以及您需要它的目的完全取决于您。


http://www.ppmy.cn/news/1222693.html

相关文章

Workplace Search 的演变:使用 Elasticsearch 搜索你的私人数据

作者:Dana Juratoni, Aditya Tripathi Workplace Search 功能将来将与 Elastic Search 合并。 这是你需要了解的内容。 生成式人工智能技术的最新进展为搜索带来了一系列可能性。 随着开发人员构建新的体验,用户正在采用新的搜索使用方式 —— 从用自然…

【人工智能实验】A*算法求解8数码问题 golang

人工智能经典问题八数码求解 实际上是将求解转为寻找最优节点的问题,算法流程如下: 求非0元素的逆序数的和,判断是否有解将开始状态放到节点集,并设置访问标识位为true从节点集中取出h(x)g(x)最小的节点判断取出的节点的状态是不…

IntelliJ IDEA启动一个普通的java web项目的配置

原创/朱季谦 这是我很久以前刚开始用IntelliJ IDEA时记录的笔记,应该是五年前的一篇笔记了。正好赶上最近离职了,可以有比较多的时间把以前的记录整理一下,可以让刚接触到IntelliJ IDEA的童鞋学习如何在IntelliJ IDEA引入一个单机版的jar形式…

为什么嵌入式没有35岁危机?

为什么嵌入式没有35岁危机? 在当今数字化时代,IT行业变化迅速,技术的更新迭代速度惊人。然而,有一个技术领域却能够在这个竞争激烈的行业中稳步前行,而且不受35岁危机所困扰,那就是嵌入式技术。 嵌入式技术是指将计算…

Pytorch D2L Subplots方法对画图、图片处理

问题代码 def show_images(imgs, num_rows, num_cols, titlesNone, scale1.5): #save """绘制图像列表""" figsize (num_cols * scale, num_rows * scale) _, axes d2l.plt.subplots(num_rows, num_cols, figsizefigsize) axes axes.flatten…

python之使用深度学习创建自己的表情符号

目录 部署项目1、首先运行train.py训练模型2、接下运行gui.py测试 一、使用 CNN 进行面部情绪识别二、GUI 代码和表情符号映射 在这个深度学习项目中,我们将对人类面部表情进行分类,以过滤和映射相应的表情符号或头像。 数据集(面部表情识别&…

监控直流防雷浪涌保护器综合方案

监控系统是一种广泛应用于安防、交通、工业、军事等领域的信息系统,它通过摄像机、传输线路、监控中心等设备,实现对目标区域的实时监视和控制。然而,监控系统也面临着雷电的威胁,雷电可能通过直击雷、感应雷、雷电波侵入等途径&a…