2016-06-08 3 views
1

У меня проблемы с этими тремя вместе. Я считаю, что палочка не признает библиотеки ImageMagick, но я не уверен.Wand + ImageMagick + Anaconda: «'wand' не имеет атрибута 'image' '

Окружающая среда: Python 3.5.1 :: Anaconda 4.0.0 (64-разрядная версия) для Windows 7

Настройка инструкции, которые я взял:

  1. установлен ImageMagick-6.9.4-Q8 (x64) с опцией «C/C++ development ». (Установлено в C: \ Program Файлы \ ImageMagick-6.9.4-Q8)
  2. Установить MAGICK_HOME envar C: \ Program Files \ ImageMagick-6.9.4- Q8
  3. Установленная палочка из пип

Мой код:

import wand 
... 
with wand.image.Image(filename=source_file, resolution=(RESOLUTION, RESOLUTION)) as img: 
... 

Traceback:

Traceback (most recent call last): 
    File ".\pdf_convert.py", line 31, in <module> 
    ret = pdf2jpg(f, target_file, 2480) 
    File ".\pdf_convert.py", line 10, in pdf2jpg 
    with wand.image.Image(filename=source_file, resolution=(RESOLUTION, RESOLUTION)) as img: 
AttributeError: module 'wand' has no attribute 'image' 

Из всего, что я видел, я следовал правильные инструкции по установке. Я использую 64-разрядную версию ImageMagick с 64-разрядной версией Anaconda. Это работало со мной до того, как я начал использовать Anaconda (до того, как я использовал обычный 32-битный Python и 32-разрядный ImageMagick.)

Есть что-то, что мне не хватает? Почему жезл работает неправильно?

ответ

1

Попробуйте

from wand.image import Image 

with Image(filename=source_file, resolution=(RESOLUTION, RESOLUTION)) as img: 
    pass 

Есть ли что-то я не хватает? Почему жезл работает неправильно?

Я считаю, что это работает, как ожидалось, и оригинальный архитектор не намерен позволить ярлыки верхнего уровня пакета (т.е. import wand). Этот вид имеет смысл, поскольку интегрируется с IM с и не пытается разрешать библиотеки в течение setup.py.

Вы можете изменить пакет, чтобы включить ярлыки модулей, ожидающие вас, добавив следующее.

# wand/__init__.py 
import api 
import color 
import compat 
import display 
import drawing 
import exceptions 
import font 
import image 
import resource 
import sequence 
import version 

Но я бы не рекомендовал это. from package.module import Class намного более чище.

+0

Да, это все. Спасибо! Я не знаю, почему он работал, когда я злоупотреблял им раньше. – DataDude

+0

Возможно, вы использовали 'import wand.image' в другом месте? – emcconville

 Смежные вопросы

  • Нет связанных вопросов^_^