ValueError: Only supported for TrueType fonts

回答 2 浏览 3365 2023-04-28

我正试图使用Python中的WordCloud模块生成一个词云,然而每当我调用.generate时,我都会看到以下错误

Traceback (most recent call last):
  File "/mnt/6db3226b-5f96-4257-980d-bb8ec1dad8e7/test.py", line 4, in <module>
    wc.generate("foo bar foo bar hello world")
  File "/home/mjc/.local/lib/python3.10/site-packages/wordcloud/wordcloud.py", line 639, in generate
    return self.generate_from_text(text)
  File "/home/mjc/.local/lib/python3.10/site-packages/wordcloud/wordcloud.py", line 621, in generate_from_text
    self.generate_from_frequencies(words)
  File "/home/mjc/.local/lib/python3.10/site-packages/wordcloud/wordcloud.py", line 453, in generate_from_frequencies
    self.generate_from_frequencies(dict(frequencies[:2]),
  File "/home/mjc/.local/lib/python3.10/site-packages/wordcloud/wordcloud.py", line 508, in generate_from_frequencies
    box_size = draw.textbbox((0, 0), word, font=transposed_font, anchor="lt")
  File "/usr/lib/python3/dist-packages/PIL/ImageDraw.py", line 671, in textbbox
    raise ValueError("Only supported for TrueType fonts")
ValueError: Only supported for TrueType fonts

目前,我正试图创建一个非常简单的WordCloud例子。

import matplotlib.pyplot as plt
from wordcloud import WordCloud
wc = WordCloud(background_color="white", font_path="./arial.ttf", width=800, height=400)
wc.generate("foo bar foo bar hello world")
plt.axis("off")
plt.imshow(wc)
plt.savefig("test.png")
plt.show()

其中arial.ttf是从https://www.freefontspro.com/14454/arial.ttf下载的,并与test.py放在同一目录下。我正在使用Ubuntu 22.04和Python 3.10.6。

我希望从输入的"foo bar foo bar hello world"中生成一个词云,但是看到了错误ValueError: Only supported for TrueType fonts,尽管在font_path参数中传递了一个ttf。

希望对解决这个问题有任何帮助!谢谢!

Matthew 提问于2023-04-28
2 个回答
#1楼
得票数 2

这些对我来说是有效的:

pip install --upgrade pip

pip install --upgrade Pillow

如果不成功,请告诉我

kbogdan 提问于2023-04-29
kbogdan 修改于2023-04-29
我试着安装/升级了Pillow,但还是遇到了同样的问题Matthew 2023-04-30
这对我来说是有效的,尽管我忽略了你的答案,而先试了被接受的那个答案。谢谢!BTW,不知道这是否相关,但在我的情况下(Windows)pillow包的名字是小写的abu 2023-05-05
似乎pillow是Windows的解决方案,libfreetype6是Ubuntu的解决方案。我保留了Mark的答案,因为它对我的情况有帮助。Matthew 2023-05-05
我在更新word cloud后遇到了同样的问题。在我的情况下(jupyter笔记本从WSL shell中启动),不幸的是,没有一个解决方法能起到作用。libfreetype6是最新的,我把pillow更新到9.5.0版本。然而,我仍然得到同样的错误信息。eel76 2023-05-05
#2楼 已采纳
得票数 0

我无法在Python 3.10中重现你的错误,即使下载了相同的字体--尽管我是在macOS上。

我唯一能想象到的是,你的PIL不支持TrueType字体,所以你可以用:

python3 -m PIL

输出的样本

--------------------------------------------------------------------
Pillow 9.4.0
Python 3.10.0 (v3.10.0:b494f5935c, Oct  4 2021, 14:59:19) [Clang 12.0.5 (clang-1205.0.22.11)]
--------------------------------------------------------------------
Python modules loaded from /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/PIL
Binary modules loaded from /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/PIL
--------------------------------------------------------------------
--- PIL CORE support ok, compiled for 9.4.0
--- TKINTER support ok, loaded 8.6
--- FREETYPE2 support ok, loaded 2.13.0             <--- HERE
--- LITTLECMS2 support ok, loaded 2.14
--- WEBP support ok, loaded 1.3.0
--- WEBP Transparency support ok
--- WEBPMUX support ok
--- WEBP Animation support ok
--- JPEG support ok, compiled for libjpeg-turbo 2.1.4
--- OPENJPEG (JPEG2000) support ok, loaded 2.5.0
--- ZLIB (PNG/ZIP) support ok, loaded 1.2.13
--- LIBTIFF support ok, loaded 4.5.0
--- RAQM (Bidirectional Text) support ok, loaded 0.9.0, fribidi 1.0.12, harfbuzz 7.1.0
*** LIBIMAGEQUANT (Quantization method) support not installed
--- XCB (X protocol) support ok
--------------------------------------------------------------------
BLP
Extensions: .blp
Features: open, save, encode
--------------------------------------------------------------------
BMP image/bmp
Extensions: .bmp
Features: open, save
--------------------------------------------------------------------
BUFR
Extensions: .bufr
Features: open, save
--------------------------------------------------------------------
CUR
Extensions: .cur
Features: open
--------------------------------------------------------------------
DCX
Extensions: .dcx
Features: open
--------------------------------------------------------------------
DDS
Extensions: .dds
Features: open, save
--------------------------------------------------------------------
DIB image/bmp
Extensions: .dib
Features: open, save
--------------------------------------------------------------------
EPS application/postscript
Extensions: .eps, .ps
Features: open, save
--------------------------------------------------------------------
FITS
Extensions: .fit, .fits
Features: open, save
--------------------------------------------------------------------
FLI
Extensions: .flc, .fli
Features: open
--------------------------------------------------------------------
FTEX
Extensions: .ftc, .ftu
Features: open
--------------------------------------------------------------------
GBR
Extensions: .gbr
Features: open
--------------------------------------------------------------------
GIF image/gif
Extensions: .gif
Features: open, save, save_all
--------------------------------------------------------------------
GRIB
Extensions: .grib
Features: open, save
--------------------------------------------------------------------
HDF5
Extensions: .h5, .hdf
Features: open, save
--------------------------------------------------------------------
ICNS image/icns
Extensions: .icns
Features: open, save
--------------------------------------------------------------------
ICO image/x-icon
Extensions: .ico
Features: open, save
--------------------------------------------------------------------
IM
Extensions: .im
Features: open, save
--------------------------------------------------------------------
IMT
Features: open
--------------------------------------------------------------------
IPTC
Extensions: .iim
Features: open
--------------------------------------------------------------------
JPEG image/jpeg
Extensions: .jfif, .jpe, .jpeg, .jpg
Features: open, save
--------------------------------------------------------------------
JPEG2000 image/jp2
Extensions: .j2c, .j2k, .jp2, .jpc, .jpf, .jpx
Features: open, save
--------------------------------------------------------------------
MCIDAS
Features: open
--------------------------------------------------------------------
MPEG video/mpeg
Extensions: .mpeg, .mpg
Features: open
--------------------------------------------------------------------
MSP
Extensions: .msp
Features: open, save, decode
--------------------------------------------------------------------
PCD
Extensions: .pcd
Features: open
--------------------------------------------------------------------
PCX image/x-pcx
Extensions: .pcx
Features: open, save
--------------------------------------------------------------------
PIXAR
Extensions: .pxr
Features: open
--------------------------------------------------------------------
PNG image/png
Extensions: .apng, .png
Features: open, save, save_all
--------------------------------------------------------------------
PPM image/x-portable-anymap
Extensions: .pbm, .pgm, .pnm, .ppm
Features: open, save
--------------------------------------------------------------------
PSD image/vnd.adobe.photoshop
Extensions: .psd
Features: open
--------------------------------------------------------------------
SGI image/sgi
Extensions: .bw, .rgb, .rgba, .sgi
Features: open, save
--------------------------------------------------------------------
SPIDER
Features: open, save
--------------------------------------------------------------------
SUN
Extensions: .ras
Features: open
--------------------------------------------------------------------
TGA image/x-tga
Extensions: .icb, .tga, .vda, .vst
Features: open, save
--------------------------------------------------------------------
TIFF image/tiff
Extensions: .tif, .tiff
Features: open, save, save_all
--------------------------------------------------------------------
WEBP image/webp
Extensions: .webp
Features: open, save, save_all
--------------------------------------------------------------------
WMF
Extensions: .emf, .wmf
Features: open, save
--------------------------------------------------------------------
XBM image/xbm
Extensions: .xbm
Features: open, save
--------------------------------------------------------------------
XPM image/xpm
Extensions: .xpm
Features: open
--------------------------------------------------------------------
XVTHUMB
Features: open
--------------------------------------------------------------------

或者,更快速地--因为我们只对"freetype"行感兴趣:

python3 -m PIL | grep -i type

然后,你可能需要用类似的命令来安装freetype--不太确定确切的软件包名称:

sudo apt install libfreetype6
Mark Setchell 提问于2023-04-29
很完美!我的libfreetype6已经过期,需要手动更新!Matthew 2023-04-30
我在几台Windows机器上出现了相同的错误信息(Win7,Python 3.8.7,Pillow 9.1.1 &;Win10,Python 3.9.9,Pillow 9.0.1),都有python3 -m PIL的输出:--- FREETYPE2 support ok.解决办法是将Pillow升级到9.5.0:pip install --upgrade pillow正如@kbogdan在另一个答案中建议的那样abu 2023-05-05