You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用GhostScript生成Factur-X/ZUGFeRD文件遇ISO 19005-3:2012校验错误求助

解决GhostScript生成Factur-X/ZUGFeRD文件的VeraPDF校验错误

问题概述

使用GhostScript生成合规Factur-X/ZUGFeRD文件时,VeraPDF或在线验证器返回如下错误:

DestOutputProfile键对应的配置文件流必须是输出配置文件(Device Class = "prtr")或显示器配置文件(Device Class = "mntr"),且配置文件的色彩空间需为"GRAY"、"RGB"或"CMYK"。

当前使用的命令行:

gswin64 --permit-file-read=C:\source\repos\test_gs\  
-sDEVICE=pdfwrite -dPDFA=3 -sColorConversionStrategy=RGB 
-sZUGFeRDXMLFile=C:\source\repos\test_gs\xmlfile.xml 
-sZUGFeRDProfile=C:\source\repos\test_gs\sRGB_v4_ICC_preference.icc -sZUGFeRDVersion=2p1 -sZUGFeRDConformanceLevel=BASIC 
-o C:\source\repos\test_gs\output.pdf
C:\source\repos\test_gs\zugferd.ps
C:\source\repos\test_gs\input.pdf

其中zugferd.ps为GhostScript/lib目录默认文件,曾尝试sRGB_v4_ICC_preference.icc和sRGB2014.icc,问题未解决。

解决方案

1. 更换合规的ICC配置文件

直接使用GhostScript安装目录下lib/iccprofiles/中的sRGB.icc文件,该配置文件的Device Class为mntr(显示器类),色彩空间为RGB,完全符合校验要求。

2. 调整命令行参数

修改命令行,添加强制覆盖ICC的参数,并调整输入文件顺序:

gswin64 --permit-file-read=C:\source\repos\test_gs\  
-sDEVICE=pdfwrite -dPDFA=3 -dOverrideICC -sColorConversionStrategy=RGB 
-sOutputICCProfile=C:\path\to\GhostScript\lib\iccprofiles\sRGB.icc
-sZUGFeRDXMLFile=C:\source\repos\test_gs\xmlfile.xml 
-sZUGFeRDProfile=C:\path\to\GhostScript\lib\iccprofiles\sRGB.icc -sZUGFeRDVersion=2p1 -sZUGFeRDConformanceLevel=BASIC 
-o C:\source\repos\test_gs\output.pdf
C:\source\repos\test_gs\input.pdf
C:\source\repos\test_gs\zugferd.ps

参数说明:

  • -dOverrideICC:强制忽略原有PDF的色彩配置,使用指定的ICC文件
  • -sOutputICCProfile:明确指定PDF/A的输出色彩配置,确保DestOutputProfile符合校验规则
  • 调整输入顺序:将zugferd.ps放在输入PDF之后,保证脚本正确处理PDF内容

3. 验证结果

重新生成PDF后,用VeraPDF或在线验证器校验,确认DestOutputProfile相关错误已修复。

内容的提问来源于stack exchange,提问作者aprotiere

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 15:52:49