Вернуться на первую страницу с помощью iTextSharp - PullRequest
2 голосов
/ 10 декабря 2010

Вопрос

Используя iTextSharp, можно ли пропустить первую страницу документа, а затем вернуться к ней позже.

Подробнее

Я создаю отчет. Я хочу предоставить «подробности» отчета на страницах 2, 3 и т. Д. После создания подробностей у меня будет сводная информация. Теперь мне нужно вернуться на страницу 1 и распечатать резюме.

Примечание: я использую DirectConent для записи в pdf.

Мысли

Нужно ли создавать PDF с подробностями на странице 1. Затем сохраните PDF. Затем создайте резюме в формате PDF. Затем объедините две PDF-файлы вместе?

Звучит сложно. Я хотел бы иметь возможность просто вернуться к странице 1 при создании документа.

1 Ответ

2 голосов
/ 10 декабря 2010

Вы должны построить сводку и детали и объединить их вместе.Возможно.

Если вы используете Document и PdfWriter, как только вы вызываете document.newPage(), все для этой страницы сбрасывается в выходной поток (файловая память, что угодно) и можетне будет изменен, если вы не проанализируете и не измените его с помощью другого Reader & Writer

OTOH, если вы используете штамп и создаете пустые страницы, вы можете обрабатывать их в любом порядке, но вам нужен"семя" PDF для начала.Я уверен, что штамповщики тоже могут удалять страницы, поэтому начальный размер страницы не имеет значения.Единственным недостатком этого метода является то, что «дата создания» метаданных покажет дату из начального файла pdf.

И вы можете просто набросать начальный файл pdf в iText.

Document doc = new Document();
PdfWriter writer = new PdfWriter(doc, outputStream);
doc.setPageEmpty(false);
doc.close();

Я не знаюНе рекомендую восстанавливать семя каждый раз, но вы наверняка могли бы.

...