最近我下载了iText的试用许可证。 我尝试实现以下目标:
我尝试了以下代码:(C#)
LicenseKey.LoadLicenseFile(@"D:\Development\itextkey-0.xml");
PdfDocument pdfDoc = new PdfDocument(new PdfReader(SRC), new PdfWriter(DEST, new WriterProperties().SetPdfVersion(PdfVersion.PDF_1_7)));
pdfDoc.SetTagged();
pdfDoc.GetCatalog().SetLang(new PdfString("HE-IL"));
pdfDoc.GetCatalog().SetViewerPreferences(
new PdfViewerPreferences().SetDisplayDocTitle(true));
PdfDocumentInfo info = pdfDoc.GetDocumentInfo();
info.SetTitle("iText7 PDF/UA example");
pdfDoc.Close();
但是,在Acrobat Reader上检查后,输出文件标记为“未标记”PDF文件。
请告知我应该如何使用iText来实现我的目标。
答案 0 :(得分:2)
无法完成。
让我给你最简单的证据:
假设输入文件包含两只猫在纱球上作战的图像。
pdf / UA要求您为想象插入明智的替代文字 目前没有可用的系统能够为您投射的任何随机图像提供合理的标题。
更不用说无论系统如何为图像添加标题,都必须链接到完美的翻译服务。由于大多数图像识别服务都是英文的,这可能不是您正在编写文档的语言。这也意味着您需要一个能够检测您正在编写的语言的系统。
我们现在添加了3个非常难以解决的问题,只是为了能够处理图像:
现在想象一下其他有趣的东西,比如
此外,PDF / UA需要嵌入字体。如果您遇到使用未嵌入字体的PDF,该怎么办?您是否可以访问可用于替换这些字体的字体程序?
在您的代码段中,您使用PdfReader
,并提供文件SRC
的路径。您需要转换Word,PPT和其他文件,但iText不会将Word,PPT等转换为PDF。 PdfReader
仅接受PDF文件(如名称所示)。