pyvips似乎正确地做到了。我尝试了这个:
$ python3
Python 3.7.3 (default, Apr 3 2019, 05:39:12)
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pyvips
>>> x = pyvips.Image.text("Puzzling", dpi=300, font="Miss Fajardose", fontfile="/home/john/pics/MissFajardose-Regular.ttf")
>>> x.write_to_file("x.png")
pyvips文档对选项进行了快速介绍:
https://libvips.github.io/pyvips/vimage.html#pyvips.Image.text
或者C库文档有更多详细信息:
http://libvips.github.io/libvips/API/current/libvips-create.html#vips- text
它为抗锯齿文本制作了一个带状的8位图像,可用于进一步处理,传递给NumPy或PIL等。在简介中有一节介绍了如何将libvips图像转换为数组: