На моем ноутбуке Lenovo T500, работающем под управлением Ubuntu Natty, с 2 ГБ ОЗУ, с использованием GhostPDL 9.02, потребовалось 2,3 секунды, чтобы преобразовать предоставленный Microsoft 38-страничный XPS ( ExchangeServer2007_ AdminComp_ chapter_02.xps ) в идеальный PDF документ:
time gxps \
-dDEBUG \
-o ExchangeServer2007_AdminComp_chapter_02.xps.gxps.pdf \
-sDEVICE=pdfwrite \
ExchangeServer2007_AdminComp_chapter_02.xps
real 0m2.213s
user 0m1.852s
sys 0m0.200s
Тем не менее, я думаю gxps
(команда GhostPDL, которая может конвертировать XPS в PDF в настоящее время, не предоставляет каких-либо стандартных средств, чтобы сделать его более разговорчивым на stdout - даже -dDEBUG
не работает) ...
Обновление: Я не знаком с любым другим инструментом, который может конвертировать XPS в PDF напрямую, но я знаю , есть куча из них. Возможно, вам повезет больше, если вы обратитесь к результатам поиска Google.
Конечно, вы всегда можете распечатать XPS на «PDF Printer». Есть несколько способов сделать это в командной строке, что может дать вам некоторую информацию о прогрессе.
Если вы заранее знаете, сколько страниц вам нужно конвертировать, (дрянной) обходной путь с GhostPDL может заключаться в том, чтобы преобразовать файл кусками, используя такую конструкцию, как -dFirstPage=1 -dLastPage=10
, и сообщить пользователю, что в настоящее время страницы 1-10 из NNN обрабатываются.
Обновление 2: Вот способ получить отзыв о stdout при обработке каждой страницы:
time gxps \
'-Z|' \
-o ExchangeServer2007_AdminComp_chapter_02.xps.gxps.pdf \
-sDEVICE=pdfwrite \
ExchangeServer2007_AdminComp_chapter_02.xps
Обратите внимание на одинарные кавычки '
вокруг -Z|
. Второй символ - это знак Pipe , а не заглавная i ... Результат:
start part /FixedDocumentSequence.fdseq
fixdoc /Documents/1/FixedDocument.fdoc
page /Documents/1/Pages/1.fpage w=0 h=0
page /Documents/1/Pages/2.fpage w=0 h=0
page /Documents/1/Pages/3.fpage w=0 h=0
[....]
page /Documents/1/Pages/37.fpage w=0 h=0
page /Documents/1/Pages/38.fpage w=0 h=0
Спасибо разработчику Ghostscript Тору Андерсону, который дал мне решающий совет в IRC-канале # ghostscript на Freenode.