GhostScript: обрезать несколько областей PDF в одном чтении? - PullRequest
0 голосов
/ 31 марта 2020

Мне нужно обрезать определенную область [несколько раз с другой областью] в формате pdf и сохранить ее как изображение. Для этого я использую следующие команды в моей системе windows для ghostscript [9.5]:

    "C:\Program Files\gs\gs9.50\bin\gswin64c.exe" ^
-dSAFER -dBATCH -dNOPAUSE  ^
-dTextAlphaBits=4 -dGraphicsAlphaBits=4 ^
-dDEVICEWIDTHPOINTS=238 -dDEVICEHEIGHTPOINTS=149.5 ^
-dFIXEDMEDIA -r600  -dDownScaleFactor=2 -sDEVICE=jpeg -o out1.jpeg ^
-c "<</PageOffset [ -64.2 40 ]>> setpagedevice" ^
-sPDFPassword=01011977 ^
-f "E:\PDFs\ECC\PDF_AESTRO.pdf"

"C:\Program Files\gs\gs9.50\bin\gswin64c.exe" ^
-dSAFER -dBATCH -dNOPAUSE  ^
-dTextAlphaBits=4 -dGraphicsAlphaBits=4 ^
-dDEVICEWIDTHPOINTS=238 -dDEVICEHEIGHTPOINTS=149.5 ^
-dFIXEDMEDIA -r600  -dDownScaleFactor=2 -sDEVICE=jpeg -o out2.jpeg ^
-c "<</PageOffset [ -308.5 40 ]>> setpagedevice" ^
-sPDFPassword=01011977 ^
-f "E:\PDFs\ECC\PDF_AESTRO.pdf" 

, указанная выше команда выполняет свою работу и обрезает обе части из этого pdf. Но это рендеринг одного и того же pdf дважды для этой работы и отнимает время, и я хочу сэкономить это время для более быстрой обработки, так как это будет использовано в функции Firebase для приложения myweb.

Как я могу обрезать обе области до изображение в однократном чтении pdf?

1 Ответ

1 голос
/ 31 марта 2020

Быть тупым об этом; ты не можешь делать то, что просишь. Для того, чтобы один и тот же файл отображался по-разному, вам нужно отображать его по-разному так, как вы хотите.

Попутно; вам больше не нужно указывать -dSAFER (начиная с выпуска 9,50), потому что это значение по умолчанию. Если вы укажете -o (вместо -sOutputFile), как вы это сделали, то вам не нужны -dBATCH или -dNOPAUSE, -o включает оба из них.

Лично я не стал бы беспокоиться с GraphicsAlphaBits или TextAlphaBits, учитывая, что вы рендеринг в JPEG, но это вопрос личных предпочтений.

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