问题标签 [pdfa]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1236 浏览

c# - 使用 GhostscriptProcessor 创建 PDF/A

我想使用 GhostscriptProcessor 将 PDF 文件转换为 PDF/A,但结果是 PDF 而不是 PDF/A。

和方法:

如果我从命令行使用 gswin32.exe,则结果是 PDF/A 文件。

0 投票
1 回答
1294 浏览

c# - 我可以用 GhostscriptProcessor 返回 byte[] 吗?

是否可以使用 GhostscriptProcessor 返回 byte[]?例如:

StartProcessing 方法是一个 void 方法,但是有没有其他方法可以从 PDF 文件创建 PDF/A 并从其内容中返回一个 byte[]?

0 投票
2 回答
7779 浏览

pdf - 如何使用 iText 和 XMLWorker 生成有效的 PDF/A 文件(HTML 到 PDF/A 过程)

我目前正在开发一种可以接受 HTML 输入并将其转换为有效 PDF/A 文件的方法。我知道如何使用 iText(参考:http: //itextsupport.com/download/pdfa3.html )以编程方式构建有效的 PDF/A 文件,但我无法使用 HTML 作为输入和使用生成有效的 PDF/A 文件XMLWorker 将此输入转换为 PDF 文件。我现在遇到的问题是由于 PDF/A 格式的嵌入字体要求。我总是得到这个例外:

线程“main”com.itextpdf.text.pdf.PdfAConformanceException 中的异常:必须嵌入所有字体。这不是:Helvetica

我尝试通过 CSS 文件强制 HTML 输入将使用哪些字体,并通过 XMLWorkerFontProvider 类在输出 PDF 文件中注册要使用的字体,但似乎我做错了什么,因为上面评论的异常总是抛出。

为了让 XMLWorker 使用通过 XMLWorkerFontProvider 类注册的字体,我还需要什么?我想避免在输入中存在的每个 HTML 元素中使用默认字体 Helvetica。

以下是我用于测试的代码:

style.css(只有 1 行):

主.java:

编辑:

作为对 Bruno 的回答,我扩展了 FontFactoryImp 类,覆盖了 getFont() 方法(具有所有参数的方法)。它像这样调用 System.out.println 函数:

然后使用相同的参数调用 parent.getFont() 方法。我看到的唯一输出是:

=fontname: null =encoding: Cp1252 =embedded: true =size: -1.0 =style: -1 =BaseColor: null =fontname: null =encoding: Cp1252 =embedded: true =size: -1.0 =style: -1 =BaseColor : 无效的

并抛出异常,粘贴在此代码之前。

0 投票
1 回答
1418 浏览

vb.net - iTextSharp XML ZUGFeRD-invoice.xml 附件

我使用 iTextSharp 5.5.3,我需要使用 ConformanceLevel = ZUGFeRD 生成 PDF/A。我无法设置正确的 XMP 模式标志。

代码正在运行,但我总是遇到异常

ZUGFeRD XMP 模式应包含附件名称

当我关闭作家。PDF 是之前生成的,但似乎不符合 ZUGFeRD。

我不知道如何解决这个警告。我真的希望有人能帮助我。我已经在这个问题上工作了 2 天,但找不到方法。

0 投票
1 回答
6509 浏览

ghostscript - 通过 Ghostscript 将 PDF 文件转换为 PDF/A

我想使用 Ghostscript 9.15 将任意 PDF 文件转换为 PDF/A。

  1. Ghostscript 是否能够创建符合 PDF/A-3b 的 PDF?没有代表 PDF/A 一致性级别的参数,所以我认为不可能。还是我忽略了什么?

  2. 我正在关注一篇博客文章,其中使用 Windows 批处理文件将 PDF 转换为 PDF/A(请参阅http://www.mcbsys.com/techblog/2013/04/batch-convert-pdf-to-pdfa/) . 批处理中的gs调用是:

    /li>

PDFA_def.ps是官方版本的调整版:

因此,我使用Adob​​eRGB1998.icc,它显然可用于具有 RGB 颜色空间的 PDF 文件。根据-sProcessColorModel值 (DEVICERGB) 打印出正确的值。

转换适用于所有文件。但是当我根据 PDF/A-1b 验证创建的 PDF 文件时,我会得到不同的结果,具体取决于输入文件是否具有 RGB 颜色空间(例如 CMYK)。因此,当我有一个使用 CMYK 颜色空间的输入 PDF 文件时,该文件会被脚本转换,但验证器会这样说:

我的问题:有没有办法为任意文件完成转换(即独立于输入文件中使用的颜色空间)?


更新

@KenS 感谢您的回答。我已经更新了我最初的帖子,以澄清我想要实现的目标。

为了更明确,我将使用一个示例。有两个文件:(input1.pdf似乎使用RGB)和input2.pdf(似乎使用CMYK)。我想将它们都转换为 PDF/A-1。感谢您的提示,我已经放弃了上述批处理脚本,而是直接在命令行中测试了该命令。阅读Ps2pdf.htm#PDFA后,我调整了(官方)PDFA_def.ps以便使用 Adob ​​eRGB1998.icc。然后我对两个输入文件调用了以下命令(将 output1.pdf 替换output2.pdf 和 input1.pdf 由input2.pdf替换第二文件):

转换完成,没有任何错误。output1.pdf 似乎有效,但 output2.pdf 仍然无效(使用 3heights Validator 测试):

因此,当我正确理解您的答案时,上述命令应生成一个使用 RGB 颜色空间的 pdf 文件 - 与输入文件的颜色空间无关。如果输入文件使用 CMYK,则必须使用上述命令将颜色转换为 RGB。

当我正确解释第一条错误消息时,output2.pdf 中使用的颜色空间仍然是 CMYK(尽管命令参数如 ColorConversionStrategy=/RGB)。由于我使用的是AdobeRGB1998.icc,所以出现验证错误。

我在上面的命令中缺少什么?

回到我最初的问题(更进一步):我不想总是转换为 RGB(或 CMYK),而是想以某种方式检测输入文件中使用了哪种颜色空间,然后动态切换到 RGB 或 CMYK icc 文件. 有可能实现吗?

0 投票
0 回答
422 浏览

itextsharp - PdfAWriter 不转换无序列表和表格

我在使用PdfAWriter类将我的 HTML 转换为 PDF 时遇到问题,HTML 会正常转换,直到找到表格或列表。

如果我使用PdfWriter类它工作正常,但我需要一个 PDF/A 版本。

这是我用来进行转换的代码:

图片: http: //postimg.org/image/9utepiza1/

我正在使用 itextsharp/itextsharp.pdfa/itextsharp.xmlworker/itextsharp.xtra 版本 5.5.3.0。

如果有另一种方法,请告诉我,我什至尝试过使用HtmlWorkerwhich is obsolete。

0 投票
1 回答
1656 浏览

java - 使用 java 检查 pdf PDF/A-1A 时出现 iText 错误

我写的是在使用 Java iText 库版本 5.5.3 签署具体的 pdf 文件时遇到的错误。

Adobe Pro 验证一致性并告诉我一致性已得到验证,但 iText 告诉我“/Widget 类型的注释应该具有 Contents 键”。

您可以在http://www.boe.es/boe/dias/2014/08/06/pdfs/BOE-A-2014-8500.pdf获取具体文件

我在我得到的跟踪下面发布:

提前感谢您的任何回复。

0 投票
0 回答
865 浏览

java - 如何使用 pdfbox 连接两个 pdf 并保留书签和 pdf/a 合规性?

代码:

pdf合并后我想要实现的目标:

  • 如果 sourceDocument 符合 PDF/A,则保持 PDF/A 合规性
  • 如果 sourceDocument 包含书签,则保留书签
  • 保留 sourceDocument 的元数据(例如标题、作者、主题、关键字)

请不要建议 iText,我已经使用 iText 实现了这一点,但由于许可,我们需要使用 pdfbox 代替。另请注意,这些代码不是我写的,这是来自 dspace。你可以在这里找到完整的代码:CitationDocument.java

0 投票
3 回答
6616 浏览

java - 获取异常 .NoClassDefFoundError: com/itextpdf/text/log/CounterFactory

我正在尝试使用 itext 和 java 使用以下代码创建 PDF/A 文档:

但我不断收到此异常:

这是我的 pom.xml

谁能告诉我应该怎么做才能解决这个问题?

谢谢

0 投票
1 回答
2593 浏览

validation - 通过 Ghostscript 将 PS 文件转换为 PDF/A,色彩空间问题

我面临着与此线程中讨论的非常相似的问题。使用 GhostScript 9.14 我正在尝试从 Postscript 文件创建有效的 PDF/A。我正在调用以下命令:

这样做之后,我通过 Apache 的 PDFBox 和通过 www.pdf-tools.com 在线验证。PDF-tools 告诉我:

如果我使用-sColorConversionStrategy=/CMYK适当的 CMYK-.icc.file 和 PDFA_def,验证也会失败。干得好:

Java PDFBox 验证令人惊讶地返回 true(PDF/A 有效)。

如果我使用-sColorConversionStrategy=/UseDeviceIndependentColor而不是 /CMYK,在线验证将失败,结果如上。PDFBox 再次返回一个有效文件。如果我使用-sColorConversionStrategy=/UseDeviceIndependentColor顶部所示的 RGB 设置,在线验证将失败,与第一条错误消息相同:

PDFBox 验证也失败。

当使用-sProcessColorModel=DeviceCMYK而不是-sColorConversionStrategy在线验证时,PDFBox 都检测到有效的 PDF/A。

所以有什么问题?据我了解 GhostScript 命令,-sColorConversionStrategy 应确保将输入 PS 的颜色空间转换为输出 PDF 的所需颜色空间 - 无需知道输入文件具有什么颜色空间。显然这是不可能的,因为我还测试了一个具有明显色彩空间 CMYK 的 ps 文件,结果与上面发布的结果相同。

我需要从 Java 代码中调用 GhostScript,获取未知的 ps 文件作为输入,将它们转换为有效的 PDF/A 文件。那么有没有可能使用 GhostScript 来做到这一点,唯一的保证是输入文件格式是 Postscript?

感谢您的任何帮助,

克里斯托弗