Ant*_*rth 10 python windows pdf runtime-error pythonmagick
我从Unofficial Windows Binaries下载并安装了python 2.7,64位Windows 7的PythonMagick .
我正在尝试运行此代码(Processor.py)
import PythonMagick
pdf = 'test.pdf'
p = PythonMagick.Image()
p.density('600')
p.read(pdf)
p.write('doc.jpg')
Run Code Online (Sandbox Code Playgroud)
在此文件夹中(D:\ Python Projects\Sheet Music Reader)

但是,使用该相对pdf路径或pdf = "D:\\Python Projects\\Sheet Music Reader"导致此错误;
Traceback (most recent call last):
File "D:/Python Projects/Sheet Music Reader/Processor.py", line 6, in <module>
p.read(pdf)
RuntimeError: Magick: PostscriptDelegateFailed `D:\Python Projects\Sheet Music Reader\test.pdf':
No such file or directory @ error/pdf.c/ReadPDFImage/664
Run Code Online (Sandbox Code Playgroud)
我根本不明白为什么找不到我的pdf; 它与python脚本位于同一目录中.
导致此错误的原因是什么,我该如何解决?
(我的印象是将pdf转换成python中的图像是一个夜晚的母马)
flo*_*qqi 26
几天前我遇到了完全相同的问题.虽然从.gif(或其他东西)转换为.jpg工作得非常好,但从.pdf转换为.jpg会产生完全相同的错误.多数民众赞成因为ImageMagick使用Ghostscript来阅读/转换PDF.
您可以通过安装Ghostscript(仅32位版本)来解决问题.不要忘记将"C:\ Program Files(x86)\ gs\gs9.06\bin"添加到您的系统中.
这是一个循序渐进的指导我如何使PythonMagick工作:(
我在Windows 7 64位上使用32位32位Python.)
C:\Program Files (x86)\ImageMagick-6.8.1-Q16).C:\Program Files (x86)\gs\gs9.06\bin为系统范围的路径.convert some.pdf some.jpg在命令行中.如果它不起作用,你在第1-3点做错了.from PythonMagick import Image
im = Image()
im.read(r"C:\Path\To\Some.pdf")
im.write("some.jpg")
Run Code Online (Sandbox Code Playgroud)
另外一个包含多个页面的PDF示例:
import os
from pyPdf import PdfFileReader, PdfFileWriter
from tempfile import NamedTemporaryFile
from PythonMagick import Image
reader = PdfFileReader(open("some.pdf", "rb"))
for page_num in xrange(reader.getNumPages()):
writer = PdfFileWriter()
writer.addPage(reader.getPage(page_num))
temp = NamedTemporaryFile(prefix=str(page_num), suffix=".pdf", delete=False)
writer.write(temp)
temp.close()
im = Image()
im.density("300") # DPI, for better quality
im.read(temp.name)
im.write("some_%d.jpg" % (page_num))
os.remove(temp.name)
Run Code Online (Sandbox Code Playgroud)
这是我脑海中唯一解决这个问题的方法.
| 归档时间: |
|
| 查看次数: |
8972 次 |
| 最近记录: |