Установите ориентацию страницы в альбомную, используя ps2pdf


Ответы:


0

См. Настройка ориентации страницы , где этот довольно запутанный текст говорит, что это невозможно:

По умолчанию Ghostscript определяет ориентацию просмотра страницы на основе доминирующей ориентации текста на странице. Иногда, когда страница имеет текст в нескольких ориентациях или вообще не имеет текста, может быть выбрана неправильная ориентация.

Параметр Acrobat Distiller AutoRotatePages управляет алгоритмом автоматического выбора ориентации. На Ghostscript, помимо входного потока, параметры Distiller могут быть заданы в качестве аргументов командной строки. Например: -dAutoRotatePages = / None или / All или / PageByPage.

Если на странице нет текста или для автоматического поворота страницы установлено значение / Нет, используется значение ориентации из setpagedevice. Допустимые значения: 0 (портрет), 3 (пейзаж), 2 (вверх ногами) и 1 (морской пейзаж). Ориентация может быть установлена ​​из командной строки как -c "<> setpagedevice" с использованием Ghostscript напрямую, но не может быть установлена ​​в ps2pdf . См. Ограничения ниже.

Ghostscript передает значения ориентации из комментариев DSC в драйвер pdfwrite, но там они фактически игнорируются . Это похоже на поведение Distiller 5.


2

ps2pdfэто довольно ограниченная утилита. Это всего лишь небольшой командный файл (в Unix / Linux: сценарий оболочки), который создает и вызывает довольно сложную командную строку Ghostscript, а сам использует очень простой синтаксис командной строки.

Если вам нужна вся мощь Ghostscript, вам лучше напрямую вызвать gswin32c.exe.

Хорошо, вот как вращать страницы с Ghostscript. Однако это может не сработать для ваших намерений, потому что вы не можете навязать определенную ориентацию только для отдельной страницы. Он опирается на внутренний алгоритм Ghostscript, который пытается автоматически поворачивать страницы в зависимости от потока текста внутри PDF-файлов:
* -dAutoRotatePages=/None - сохраняет ориентацию каждой страницы;
* -dAutoRotatePages=/All - вращает все страницы (или ни одной) в зависимости от вида «решения большинства»;
* -dAutoRotatePages=/PageByPage- автоматически поворачивает страницы по отдельности.

Добавьте один из них в командную строку Ghostscript, которую вы используете.

Если на странице нет текста (или если для функции автоматического поворота страницы установлено значение /None), Ghostscript использует setpagedeviceнастройки. Вы можете передавать такие setpagedeviceпараметры в командной строке Ghostscript, используя -cпереключатель следующим образом:
* -c "<</Orientation 3>> setpagedevice"- устанавливает альбомную ориентацию;
* -c "<</Orientation 0>> setpagedevice"- устанавливает портретную ориентацию;
* -c "<</Orientation 2>> setpagedevice"- устанавливает перевернутую ориентацию;
* -c "<</Orientation 1>> setpagedevice"- устанавливает ориентацию морского пейзажа .

Вы требуете использования pstopdfили Ghostscript? Было бы приемлемо использовать другой инструмент с открытым исходным кодом, работающий в командной строке, например pdftk.exe?

В любом случае, я бы порекомендовал посмотреть pdftkтоже (что также доступно для Windows). Это инструмент командной строки, который может вращать страницы из PDF-файлов и многое другое. Проще в использовании, чем Ghostscript для вашей заявленной цели, и гораздо быстрее. В частности, он может вращать отдельные страницы в документе PDF, оставляя другие страницы нетронутыми. Подробности смотрите здесь: http://www.accesspdf.com/pdftk/ .

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.