なしデコードデリゲート私はImageMagickのを使ってJPEGファイルにいくつかのPDFファイルを変換しようとしています。私は10、64のpython 3.62 - 64ビットと0.4.4のwanで作業しています。私はImageMagick-6.9.9-Q16-HDRIで作業することができました。私はパスを設定したとMAGICK_HOMEのenvが
E:\ImageMagick-6.9.9-Q16-HDR
にこれができるようにvarsは:
from wand.image import Image
が動作します。
マイスクリプト:
import os
magick_home=os.getcwd() + os.sep + "E:\ImageMagick-6.9.9-Q16-HDR"
os.environ["PATH"] += os.pathsep + magick_home + os.sep
os.environ["MAGICK_HOME"] = magick_home
os.environ["MAGICK_CODER_MODULE_PATH"] = magick_home + os.sep + "modules" + os.sep + "coders"
from wand.image import Image
.....
file_path = os.path.dirname(os.path.abspath(__file__))+os.sep+"myfile.pdf"
image_pdf = Image(filename=file_path, resolution=300)
image_jpeg = image_pdf.convert('jpeg')
私が取得しています:
File "ocr_test.py", line 38, in <module>
image_pdf = Image(filename=file_path, resolution=300)
File "e:\Myenv\lib\site-packages\wand\image.py", line 2744, in __init__
self.read(filename=filename, resolution=resolution)
File "e:\Myenv\lib\site-packages\wand\image.py", line 2822, in read
self.raise_exception()
File "e:\Myenv\lib\site-packages\wand\resource.py", line 222, in raise_exception
raise e
wand.exceptions.MissingDelegateError: no decode delegate for this image format `PDF' @ error/constitute.c/ReadImage/504
は、どのように私はこの作業を得ることができますか?
EDIT:あなたのアドバイスに従い
、私はhttps://glenbambrick.com/2017/01/10/pdf-to-jpg-conversion-with-python-for-windows/を踏襲し、ghostscriptの9.22インストール - 32ビット。 (私は、64ビットのPythonMagick can't find my pdf filesに動作しないことを理解して)私は両方のパスを設定したとMAGICK_HOMEのenvが含まれてvarsの:
E:\ImageMagick-6.9.9-Q16-HDR;E:\gs9.22\bin
を私は走った:
$ E:/ImageMagick-6.9.9-Q16-HDRI/convert --version
Version: ImageMagick 6.9.9-23 Q16 x64 2017-11-12 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2015 ImageMagick Studio LLC
License: http://www.imagemagick.org/script/license.php
Visual C++: 180040629
Features: Cipher DPC HDRI Modules OpenMP
Delegates (built-in): bzlib cairo flif freetype jng jp2 jpeg lcms lqr openexr pangocairo png ps raw rsvg tiff webp xml zlib
私はGSが表示されませんまたはgslib。私は次に何をすべきですか?
Imagemagickには、PDFファイルを読むためのデリゲートライブラリとしてGhostscriptが必要です。 ImageMagickが見つけられる場所にGhostscriptがインストールされていることを確認してください。多くの場合、 'convert -version'を実行するかどうかを知ることができ、gsまたはgslibがデリゲートとしてリストされているはずです。 – fmw42
私の編集 – user61629
gsを参照してください。または、gslibが代理人に表示されていません。つまり、ImageMagickはGhostscriptを見つけることができません。それが存在しないことを確認するには、 'convert -list configure'を実行し、gsかgslibがDELEGATESで始まる行にリストされているかどうかを確認してください。そうでなければ、GhostscriptまたはImageMagickのインストールが正しくない可能性があります。私はGhostscriptまたはImageMagickのインストール時にエラーが表示されないことを確認するために、インストールをやり直すでしょう。 config.logファイルを確認できます。 – fmw42