python-使用云图库实现文字填画的效果-0225

准备工作

  • 相关的库需要准备好,详情见导入模块的所需
  • 一个小说文本
  • 一张白色底图

材料一览

》小说文本
python-使用云图库实现文字填画的效果-0225_第1张图片

》白色的底图

python-使用云图库实现文字填画的效果-0225_第2张图片

期望的效果

python-使用云图库实现文字填画的效果-0225_第3张图片

正文开始===》

导入模块

from wordcloud import WordCloud
import matplotlib.pyplot as plt
from PIL import Image
import numpy as np

配置路径

img_path = "mr.jpg"
font_path = r'C:\Windows\Fonts\simhei.ttf'

准备文字内容

con = open('baixue.txt','r',encoding='utf8').read()

主要的处理

mask = np.array(Image.open(img_path))
wc1 = WordCloud(font_path=font_path,background_color='white', mask=mask).generate(con)
fig = plt.figure(1)
plt.imshow(wc1)
plt.axis('off')

显示与保存

# plt.show()
plt.savefig('wcmr.jpg',dpi=500)

完整的代码


from wordcloud import WordCloud
import matplotlib.pyplot as plt
from PIL import Image
import numpy as np


# 图片路径
img_path = "timg.jfif"
# 字体路径
font_path = r'C:\Windows\Fonts\simhei.ttf'
# 小说路径
con = open('baixue.txt','r',encoding='utf8').read()
# 保存路径
save_path = 'wcmr.jpg'


### 打开作为轮廓的图片,并转为数组
mask = np.array(Image.open(img_path))
wc1 = WordCloud(font_path=font_path,background_color='white', mask=mask).generate(con)

fig = plt.figure(1)
plt.imshow(wc1)
plt.axis('off')

# plt.show()
plt.savefig(save_path,dpi=500)

你可能感兴趣的:(python-使用云图库实现文字填画的效果-0225)