获取每个Pdf页面的书签

时间:2012-02-27 09:57:05

标签: c# itextsharp

我正在尝试使用“iTextSharp.text.pdf”获取特定pdf页面的书签信息,我找到了如何在pdf中获取书签的集合,但我想只为特定的PDF格式的页面,这是我整个pdf的代码:

public void ExportBookmarksToXml(string SourcePdfPath, string xmlOutputPath, string Password = "")
    {
        PdfReader reader = new PdfReader(SourcePdfPath, new System.Text.ASCIIEncoding().GetBytes(Password));
        IList<Dictionary<string, object>> bookmarks = SimpleBookmark.GetBookmark(reader);
        using (MemoryStream memoryStream = new MemoryStream())
        {
            SimpleBookmark.ExportToXML(bookmarks, memoryStream, "ISO8859-1", true);
            //MessageBox.Show(bookmarks[0].Values.ToString());
            File.WriteAllBytes(xmlOutputPath, memoryStream.ToArray());
        }
    }

我需要这个,因为我想知道每个书签有多少页和它有多少空白页。

谢谢!

1 个答案:

答案 0 :(得分:-1)

使用以下代码获取pdf的每个页面中的所有书签。

IList<Dictionary<string, object>> bookmarks = SimpleBookmark.GetBookmark(pdfReader);
foreach (Dictionary<string, object> bk in bookmarks)
{
string bjj = bk.Values.ToArray().GetValue(0).ToString();
}