12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- """
- 图片生成器
- """
- 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)
- # if '__main__' == __name__:
- # imagebuilder=imageBuilder(2514, 1760, color=(255, 255, 255, 255))
- # imagebuilder.draw_text(0,0,"adadasdsd")
- # imagebuilder.draw_text(100, 500, "dadasdinmmm")
- # image=imagebuilder.splitImage((0,0,500,100))
- # image.save("2.jpg")
- # imagebuilder.saveimage("1.jpg")
- #new_image_with_file('image_data.txt')
|