iTextSharp和ZUGFeRD基本配置文件

时间:2016-04-27 07:34:51

标签: itextsharp

我正在用iTextSharp 5.5.9创建ZUGFeRD PDF文件,到目前为止工作正常。目前唯一不起作用的是使用一致性级别进行设置。

writer = PdfAWriter.GetInstance(document, New FileStream(strFilenameOut, FileMode.Create), PdfAConformanceLevel.ZUGFeRDBasic)

writer.SetPDFXConformance(PdfAConformanceLevel.ZUGFeRDBasic)

对我不起作用。元数据包含%s而不是BASIC,如下面的屏幕截图所示。

ZUGFeRD Metadata

我想我错过了要设置的东西。也许有人有同样的问题,可以帮我解决这个问题。

此致 约亨

1 个答案:

答案 0 :(得分:0)

ZUGFeRD基于PDF / A-3标准。您正在使用一种方法来设置PDF / X一致性。 PDF / A和PDF / X是两个非常不同的标准。您不应该设置PDF / X一致性。

请查看官方文档。我写了一本关于ZUGFeRD的书。如果您填写此表单,可以将此书作为电子书下载:http://pages.itextpdf.com/ZUGFeRD.html

对于Basic配置文件,您需要查看Chapter 5。有many examples available online

这是用Java完成的:

PdfAWriter writer = PdfAWriter.getInstance(document,
    new FileOutputStream(dest), PdfAConformanceLevel.ZUGFeRDBasic);

在C#中,您将拥有:

PdfAWriter writer = PdfAWriter.GetInstance(document,
    New FileStream(strFilenameOut, FileMode.Create), PdfAConformanceLevel.ZUGFeRDBasic)

所有示例都使用Java,但最近使用C#端口检测到问题。也许你遇到了同样的问题。据我所知,这个问题已在当前的开发版本中得到修复。

如果您是客户,则应该要求您的客户经理获取解决此问题的修补程序。