Adobe で ctrl+d を押すと、pdf のプロパティが表示されます。そのドキュメントのプロパティから、taggedpdf
iTextSharp を使用して値を取得する方法は?
質問する
1815 次
1 に答える
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 ではない可能性があります。Markedエントリが必要です。このエントリの値は である必要があり、Boolean
である必要がありますtrue
。
テストした PDF の一部が有効なタグ付き PDF であると誤って主張するコメントへの回答として、次のスクリーンショットを参照してください。
左側には、共有したドキュメントの内部オブジェクト ツリーが表示されます。ご覧のとおり、ドキュメントにはStructTreeRoot
がありますが、の値はMarkInfo
ですfalse
。
右側には、Adobe Reader で開いたドキュメントが表示されます。3 つのケースすべてで、ドキュメントのプロパティには、タグ付き PDF: いいえというエントリがあります。
あなたがそうでないと主張する理由が私を打ちのめします。
于 2013-04-29T09:17:32.453 に答える