Лучший способ изменить нумерацию существующих PDF

У нас есть PDF-файл, созданный в виде страниц формата A5. При этом нам нужно сделать PDF-файл в книжном формате A4, поместив 2 страницы исходного PDF поверх друг друга на каждой странице итогового PDF.

Знаете ли вы хорошую библиотеку, которая могла бы выполнять такие манипуляции с PDF? Это должно происходить на стороне сервера из веб-приложения ASP.NET с минимально возможным развертыванием на сервере.

4 ответа

Для полноты добавлю, что PDFjam более прямой, чем прохождение PostScript и psnup. Он включает в себя "pdfnup", который, вероятно, может делать то, что вы хотите. Но есть несколько недостатков для вашего приложения:

  • Это просто оболочка для pdfTeX и пакет "pdfpages"

  • Сценарии в основном написаны для Unix-подобных систем и говорят только о работе в Windows через cygwin.

Комбинация установки TeX с cygwin не совсем соответствует вашей спецификации "как можно меньше для развертывания на сервере".

Но если вы ищете решение с открытым исходным кодом, pdf(La)TeX действительно превосходен в этом виде манипуляций с pdf. Лучшим вариантом может быть посмотреть, что делает pdfnup, и продублировать ту функциональность, которая вам нужна в.NET.

В прошлом я использовал PDF Toolkit (GPL). Я думаю, что он может делать то, о чем вы спрашиваете.

Объединение двух страниц формата A5 в одну страницу формата A4 должно быть точно таким же, как объединение двух страниц формата A4 в одну страницу формата A3 (кроме масштаба), и на эту проблему здесь был дан ответ через две недели после того, как был задан этот вопрос.

У psutils есть утилита psnup, которая сделает это с файлом Postscript. Вы можете выгрузить PDF в postscript, используя любой из нескольких методов (например, pdf2ps), запустить psnup поверх него и преобразовать обратно в PDF, используя ps2pdf или Distiller.

Другие вопросы по тегам