2013-08-19 5 views
0

У меня есть несколько типов отчетов в формате PDF. Каждый отчет имеет свой собственный заголовок и нижний колонтитул с различным контентом и форматом. Все они должны иметь поле «страница X of Y». Все эти отчеты объединены в один файл PDF.Как динамически генерировать страницу x of y с помощью javascript?

Как я могу реализовать проблему X of Y? Я думал, что это должна быть очень простая задача, используя простой javascript. Но, к сожалению, это не так :(

Как это сделать? Мне просто нужно вставить текст на каждую страницу (возможно, используя PDFStamper) и запустить javascript для создания соответствующего X Y, когда открыт объединенный документ.

+0

Зачем вам нужен javascript здесь? Вы говорите о проблеме с номером страницы с itext..right ?? –

+0

Да. Мне нужно динамически генерировать номера страниц в документе. Поскольку каждая страница может иметь другую позицию, шрифт, цвет номера страницы (документ состоит из нескольких разных PDF-файлов). – Behnil

+0

Вопрос нуждается в уточнении: JavaScript или Java? (Если JavaScript, вопрос абсурден.) Также: OP говорит, что примеры на itextpdf.com все добавляют номера страниц, используя тот же стиль. Это извинение: это просто примеры, вы можете изменить примеры, используя любой стиль, который вам нужен, даже используя разные стили для разных страниц. Однако неясно, где хранятся стили. Если в существующих полях AcroForm неясно, должен ли документ быть сплющен (если нет: это может привести к ряду проблем). Короче: вопрос показывает отсутствие понимания PDF. –

ответ

2

Если с помощью Javascript вы имеете в виду Java, вот несколько examples. Поскольку вы не создаете файл PDF с нуля, вы будете лучше со вторым примером.

Если вы на самом деле означает JavaScript, то iText определенно не инструмент, который вы хотите использовать.

+0

Я знаю эти примеры. Все они касаются вставки номеров страниц с одинаковым стилем в одну позицию на всех страницах. Но мне нужно изменить (или заполнить) существующие текстовые поля предопределенными стилями и позицией. – Behnil

+1

Вы имеете в виду, что разные файлы, которые вы объединяете, уже имеют «Страница X of Y», и вам нужно изменить значения? Если нет, что мешает вам адаптировать примеры, которые я дал (особенно второй), и установить стиль и положение по вашему желанию? –

+0

Каждая страница в PDF, которую я генерирую, имеет текст PdfFormField с определенной позицией и стилем. Но он не имеет никакого текста. Сам документ содержит javascript, который оценивается, когда документ открыт, и он перебирает все эти поля страницы и устанавливает его текст на соответствующий номер страницы. Но я не знаю, есть ли лучшее решение. – Behnil