我第一次使用chemlab库。我正在尝试运行一些示例程序,但我不断收到以下错误消息:


  从PIL导入ImageFont#
  
  ImportError:没有名为ImageFont的模块


这是基本示例之一的代码(https://github.com/chemlab/chemlab/blob/master/examples/nacl.py):

from chemlab.core import Atom, Molecule, crystal
from chemlab.graphics import display_system

# Molecule templates
na = Molecule([Atom('Na', [0.0, 0.0, 0.0])])
cl = Molecule([Atom('Cl', [0.0, 0.0, 0.0])])

s = crystal([[0.0, 0.0, 0.0], [0.5, 0.5, 0.5]], # Fractional Positions
            [na, cl], # Molecules
            225, # Space Group
            cellpar = [.54, .54, .54, 90, 90, 90], # unit cell parameters
            repetitions = [5, 5, 5]) # unit cell repetitions in each direction

display_system(s)


我试过通过pip安装ImageFont,PIL和Pillow(Pillow是唯一实际安装的软件),但是没有运气。

最佳答案

安装PIL

pip install pillow


ImageFont的正确导入是:

from PIL import ImageFont


这是ImageFont的示例:

from PIL import ImageFont, ImageDraw

draw = ImageDraw.Draw(image)

# use a bitmap font
font = ImageFont.load("arial.pil")

draw.text((10, 10), "hello", font=font)

# use a truetype font
font = ImageFont.truetype("arial.ttf", 15)

draw.text((10, 25), "world", font=font)

07-24 15:54