在Adobe中按ctrl + d时显示pdf的属性。从该文档属性如何使用iTextSharp获取taggedpdf
值?
答案 0 :(得分:0)
StructTreeRoot 是标记PDF的必填元素:
PdfDictionary root = reader.Catalog;
PdfObject structTreeRoot = root.Get(PdfName.STRUCTTREEROOT);
如果structTreeRoot
等于null
,那么您的PDF就不会被标记。
此外,您需要检查 MarkInfo 属性。
PdfDictionary markInfo = root.GetAsDict(PdfName.MARKINFO);
此markInfo
字典可能不为null,需要标记条目。此条目的值必须为Boolean
,且必须为true
。
在回答您的评论时,错误地声称您测试的某些PDF是有效的标记PDF,请参阅以下屏幕截图:
在左侧,您可以看到共享文档的内部对象树。如您所见,文档的格式为StructTreeRoot
,但MarkInfo
的值为false
。
在右侧,您可以看到在Adobe Reader中打开的文档。在所有三种情况下,文档属性都有一个条目:标记PDF:否。
打败我为什么要求其他人。