我的公众号头图属于特地简洁的,起因是我在乎的是文章中的内容,而不是头图。尽管我晓得一个好的头图会晋升点击率,但其背地消耗的工夫是我目前不愿去做的。因而,我目前的头图都是 PS 关上一张图,而后间接放上一行文字来生成的。

然而,关上 PS 还是太破费精力了,因而,我心愿能够用更少的工夫来生成简单明了的头图。因而,我决定优化我的头图制作计划,应用代码来实现公众号头图的生成。

环境依赖

这一次的代码应用 Python 来实现,并基于 Python 的 Pillow 库实现图片的生成,因而,你在运行我的代码时,须要先装置 Pillow

pip install pillow

实现思路

在应用 Pillow 绘图的时候,和咱们在前端应用 Canvas 绘图的思路基本一致,咱们要做的是

  1. 筹备特定背景的画布
  2. 加载字体
  3. 绘制文字
  4. 导出图片

生成的难度并不高,也只须要破费一些工夫来编写代码。具体的代码我贴在下方了,供你参考。

代码实现

具体的代码如下

from PIL import Image, ImageDraw, ImageFont# 罕用变量img_size = (900, 383)bg_color= "#fca652"big_text_size = (900,383)text = "代码生成图片"text_color = "#eeeeee"filename = "export.jpg"font_size = 80# 生成画布export_image = Image.new("RGB", img_size, bg_color)# 加载字体font = ImageFont.truetype("NotoSansSC-Medium.otf", font_size)# 计算字体宽度text_width = font.getsize(text)text_coordinate = int((big_text_size[0]-text_width[0])/2), int((big_text_size[1]-text_width[1])/2-20)# 生成绘图 ctximg_draw = ImageDraw.Draw(export_image)# 绘制文字img_draw.text(text_coordinate, text, font=font, fill=text_color)export_image.save(filename, quality=95)

总结

应用 Python 来绘制头图的难度并不大,比方明天的头图,就是通过代码来绘制的,你能够看看成果。

不过,下面的代码还是很简陋,你感觉这段代码有没有什么值得优化的点呢?