ABCpdf копирование свойств документа - PullRequest
2 голосов
/ 15 сентября 2009

Я пытаюсь скопировать PDF, используя ABCpdf AddImageDoc . Не похоже, что какие-либо свойства документа (такие как "/ Rotate") копируются вместе. Похоже, я должен скопировать эти свойства вручную из старого документа в новый, используя метод SetInfo. Вот так:

foreach page...{
    newPdfDoc.Page = newPdfDoc.AddPage();
    newPdfDoc.AddImageDoc(existingPdfDoc, i, null);
    newPdfDoc.SetInfo(newPdfDoc.Page, "/Rotate", existingPdfDoc.GetInfo(existingPdfDoc.Page, "/Rotate"))
}

Существует множество этих свойств, и я не хочу устанавливать их вручную. Есть ли способ скопировать все свойства сразу?

Ответы [ 2 ]

4 голосов
/ 19 мая 2010

Думайте о Doc.AddImageDoc как о функции для размещения страницы из другого документа в качестве изображения. Набор функций Doc.AddImage в основном масштабирует импортированные изображения, чтобы соответствовать текущему свойству документа Rect.

Чтобы объединить PDF-документы, используйте метод Doc.Append.

Чтобы скопировать или удалить страницы в документе, используйте метод Doc.RemapPages .

1 голос
/ 25 сентября 2009

ABCPdf не имеет итератора для свойств PDF

Так что, если вы не знаете все имена свойств, которые вы хотите передать, вам потребуется другой инструмент для получения имен свойств. Вы можете использовать библиотеку PDFsharp для чтения любых низкоуровневых элементов PDF

...