from PIL import Image, ImageDraw, ImageFont class imageBuilder(): def __init__(self,width,height,color): self.new_img = Image.new('RGB', (int(width), int(height)), color) self.draw_image() def draw_image(self): self.draw=ImageDraw.Draw(self.new_img) self.img_size = self.new_img.size def draw_text(self,x,y,text): """ x:横坐标 y:纵坐标 text:内容 """ font_size=40 fnt = ImageFont.truetype('simsun.ttc', font_size) fnt_size = fnt.getsize(text) while fnt_size[0] > self.img_size[0] or fnt_size[0] > self.img_size[0]: font_size -= 5 fnt = ImageFont.truetype('arial.ttf', font_size) fnt_size = fnt.getsize(text) self.draw.text((x, y), text, font=fnt, fill=(255, 0, 0)) def splitImage(self,box): """ 通过元祖(x,y,width,height)裁切图片 """ splitimage=self.new_img.crop(box) return splitimage def saveimage(self,path): self.new_img.save(path)