2011-02-08 64 views
2

一個PDF中提取額外的元數據我已經看到了基本的元數據(即作者,標題)的使用iTextSharp的提取,它通常看起來是這樣的:使用iTextSharp的

var pdfReader = new PdfReader(pdfData); 
var author = pdfReader.Info["author"] 

然而,在我的情況我在一些更奇特的東西之後,文檔可能包含額外的「高級」元數據。

赦免油漆的亮點,但在這裏是從使用Adobe Acrobat內的截圖顯示有問題的數據:

the data in question via adobe acrobat

在這種情況下,它似乎並不喜歡這個數據可通過Info字典。使用不同的庫(TallKponents PDFKit)這個數據是暴露的,但我想知道是否有任何方式使用iItext

我目前正在玩iText 4.1.6由於許可限制,但我wouldn如果增加了必需的功能,不會反對購買5.0.6的商業許可證。

回答

3

不知道這是否會得到正是你需要的,但要獲得XMP metadata嘗試是這樣的:

PdfReader reader = new PdfReader(YOUR_PDF); 
byte[] b = reader.Metadata; 
if (b != null) { 
    string xml = new UTF8Encoding().GetString(b); 
} 

通知你得到一個XML字符串。

IIRC代碼將與4.1.6一起使用。

+0

抽籤太慢。你擊敗了我。上面的代碼也應該與5.x一起工作。 – 2011-02-08 17:04:43