Нет изображения tif, сгенерированного любым, кто видит ошибку? Я не получаю никаких ошибок. Теперь я вижу сообщение о том, что ghosscript запущен, но все же не получил выход tif. from output Я теперь получаю "GPL Ghostscript 9.02 (2011- 03- 30)\nCopyright (C) 2010 Artifex Software, Inc. Все права защищены.\nЭто программное обеспечение поставляется без ГАРАНТИИ: подробнее см. файл PUBLIC.\n 'приближается
Отредактированные изменения, предложенные комментариями **
from subprocess import Popen, PIPE,STDOUT
output = Popen([
r'C:\Program Files (x86)\gs\gs9.02\bin\gswin32c.exe',
'-dNOPAUSE',
'-dBATCH',
'-sDEVICE=tiffg4',
'-dDEBUG',
'-r196X204',
'-sPAPERSIZE=a4',
'-sOutputFile=%s' % (r'C:\Python25\pdfmining\page.tif'),
'%s' %(r'C:\Python25\pdfmining\nca.pdf'),
],stdout=PIPE,stderr = STDOUT).communicate()[0]
Я не вижу входной файл для вашей команды. Добавьте полный путь к входному файлу (PDF, PostScript, Encapsulated PostScript или AI) в качестве последнего аргумента, и ваши TIFF должны быть сгенерированы...
Также удалите -q
. Он сообщает Ghostscript, чтобы он оставался "тихим".
Наконец, вы можете добавить -dDEBUG
в свою командную строку. Он сообщает Ghostscript для вывода большого количества отладочной информации.
Некоторые проблемы с вашим кодом:
Вам нужно использовать необработанные строки, чтобы обратная косая черта не обрабатывалась как escape-последовательности.
например. r'C:\Python25\pdfmining\nca.pdf'
вместо 'C:\Python25\pdfmining\nca.pdf'
.
self._
выглядит неуместно здесь: 'self._C:\Program Files (x86)\gs\gs9.02\bin'
Похоже, вы передаете директорию и исполняемое имя файла как отдельные аргументы. Они должны быть вместе как путь к исполняемому файлу.
Вы также можете захватить stderr
, чтобы вы видели сообщения об ошибках, например, используя stderr=STDOUT
для присоединения вывода stderr с помощью stdout.