Python:有没有不使用PIL在图像上绘制文本的方案
我正在使用Python 3.3,并且我从下面的链接安装了aspell和PIL(只需执行下载的.exe文件,不需要任何设置?),但当我导入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?
3 个回答
1
使用 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)
1
因为还没有发布适用于3.3的版本。
“当前的免费版本是PIL 1.1.7。这个版本支持Python 1.5.2及更新的版本,包括2.5和2.6。3.X版本会在之后发布。” - 这段话来自PIL的主页。
如果你想使用PIL,建议使用Python 2.6。因为Python 3.X对语言做了一些改动,所以它和之前的版本不完全兼容。
我建议你使用旧版本的Python,而不是3.X,除非你有非常好的理由需要使用3.X。