如何将现有模板中的书签导入另一个包含操作的PDF?

时间:2016-09-28 11:55:26

标签: c# pdf itext console-application bookmarks

我正在开发Bookmark Export Task,它将所有书签从一个pdf导出到另一个pdf。这对我来说现在很好,但是像放大/缩小/页面导航操作这样的书签属性不起作用。

请在下面找到我的代码并指导我完成任务。

控制台C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using iTextSharp.text.pdf;
using iTextSharp.text;
 class BookMark
    {
        static void Main(string[] args)
        {
            string source = "D:\\Sourcefile.pdf";
            string destination = "D:\\Outputfile.pdf";
            string temp_destination = dest.Replace(".", "_temp.");
            File.Copy(destination, temp_destination);
            PdfReader reader = new PdfReader(src);
            List<Dictionary<String, Object>> list = SimpleBookmark.GetBookmark(reader).ToList();
            reader.Close();
            PdfReader reader1 = new PdfReader(temp_destination);
            PdfStamper stamper = new PdfStamper(reader1, new FileStream(dest, FileMode.Create));
            stamper.Outlines = list;
            stamper.Close();
            reader1.Close();
            File.Delete(temp_destination);
        }
    }

当我运行上述程序时,我将从Sourcefile.pdf获取所有pdf书签到Outputfile.pdf,但书签的操作如页面向下,向上翻页,放大,缩小..等操作都无法正常工作(当我在导出的pdf中检查其属性时,操作为无)。

请查看源文件(附带屏幕截图)书签操作属性和目标(附带屏幕截图)书签操作属性。

源文件书签操作属性

enter image description here

源文件书签列表和目标书签列表与源文件看起来相同

enter image description here

目标文件书签操作未从源书签导入操作的属性

enter image description here

0 个答案:

没有答案