0

我使用 Python 3.3,并且我已经安装(只需执行下载的文件 .exe,不需要任何设置?)从下面的链接中拼写 PIL,不幸的是我导入 PIL 是错误未解决的 PIL。为什么?

http://www.lfd.uci.edu/~gohlke/pythonlibs/

import PIL
from PIL import Image
from PIL import ImageDraw
from PIL import ImageFont
font = ImageFont.truetype("C:/arial.ttf",25)
img=Image.new("RGBA", (200,200),(120,20,20))
draw = ImageDraw.Draw(img)
draw.text((0, 0),"This is a test",(255,255,0),font=font)
draw = ImageDraw.Draw(img)
draw = ImageDraw.Draw(img)
img.save("a_test.png")

或者有任何想法而不使用 PIL 在图像上绘制文本?

4

3 回答 3

1

因为它还没有发布 3.3。

“当前的免费版本是 PIL 1.1.7。此版本支持 Python 1.5.2 及更新版本,包括 2.5 和 2.6。稍后会发布 3.X 的版本。” -取自 PILs 主页。

如果您想使用 PIL,请使用 Python 2.6。Python 的 3.X 版本稍微改变了 python,因此它不完全向后兼容。

我建议您使用旧版本的 Python 而不是 3.X,除非您有充分的理由使用 3.X。

于 2013-02-07T15:26:21.617 回答
1

Pillow是 Python Imaging Library 的延续,它已更新为可与 Python 3 一起使用。这应该可以解决您未解决的 PIL 问题。

在最近的 Python 中,还有其他用于在图像上绘制文本的选项:

  • Pygame是自 Pygame 1.9.2 起支持 Python 3 的 SDL 1.2 包装器。
  • Wand是基于 ctypes 构建的 ImageMagick 包装器。
  • gdmodule包装了 GD,但它的安装程序似乎仅适用于 Linux。它不会在 Windows 下帮助您(参见"C:/arial.ttf"),但它可能会帮助其他有同样问题的人。
于 2014-11-07T18:27:22.163 回答
0

使用 opencv

import cv2
font = cv2.FONT_HERSHEY_SIMPLEX 
orgin = (50, 50) 
fontScale = 1
color = (255, 0, 0) 
thickness = 2

使用 cv2.putText() 方法

image = cv2.putText(image, 'OpenCV', org, font, fontScale, color, thickness, cv2.LINE_AA) 
于 2020-11-26T11:29:56.017 回答