Лучший способ изменить нумерацию существующих PDF - PullRequest
2 голосов
/ 07 января 2009

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

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

Ответы [ 4 ]

1 голос
/ 24 января 2009

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

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

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

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

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

0 голосов
/ 10 апреля 2009

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

0 голосов
/ 07 января 2009

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

0 голосов
/ 07 января 2009

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...