是否可以使用wordcloud生成基于矢量的pdf

时间:2015-07-10 00:39:01

标签: python word-cloud

我在python中使用wordcloud来生成单词云。

我能够在我的计算机上重现此example,然后尝试将最后一行plt.show()更改为plt.savefig('image.pdf')以获得pdf输出。

我有一个相同结果的pdf,然而,pdf看起来像基于像素而不是基于矢量。当我将特定点集中在pdf中时,它会变成质量非常低的画面。

有没有办法使用wordcloud制作基于矢量的pdf?如果没有,是否还有其他库可以在Python中生成基于矢量(pdf)的wordclouds?

2 个答案:

答案 0 :(得分:1)

如果wordcloud可以生成任何类型的矢量输出,例如ps或svg,则inkscape通常可以将其转换为PDF而不对其进行栅格化。你甚至可以做到无头,例如inkscape my.svg -A my.pdf。

嗯,看着wordcloud,它看起来像是使用了PIL。我不认为PIL可以产生矢量图像。但是如果您可以在wordcloud中使用逻辑并将其与PIL分开,则可以通过绘制到reportlab画布上将矢量字体绘制到PDF上。

答案 1 :(得分:-1)

您可以将图像保存为矢量格式,以便它们可以扩展而不会丢失质量。这些格式是PDF和EPS。只需将扩展名更改为.pdf或.eps,matplotlib就会编写正确的图像格式。

plt.savefig('destination_path.eps', format='eps')
plt.savefig('destination_path.pdf', format='pdf')

我发现eps / pdf文件效果最好。