因为工作中需要,需要生成一个带表格的图片
例如:
直接在html中写一个table标签,然后单独把表格部分保存成图片
或者是直接将excel中的内容保存成一个图片
刚开始的思路,是直接生成一个带有table标签的html文件,然后将这个文件转成图片,经过查找资料发现需要安装webkit2png,而这个库又依赖其他的东西,遂放弃。
当初的目标是直接生成一个图片,并且是只需要安装python依赖库就行,而不需要在系统层面安装相应的依赖包
后来考虑使用Python的图片处理库Pillow,和生成表格式的库prattytable,下面的图片是最终生成的图片效果
总体来说是分为两个步骤:
- 使用prattytable将要展示的数据生成一个表格字符串
- 使用pillow,将生成的表格字符串写入到图片中
下面是具体实现代码:
from prettytable import PrettyTablefrom PIL import Image, ImageDraw, ImageFonttab = PrettyTable()# 设置表头tab.field_names = ["Name