Outside Resources
https://pillow.readthedocs.io/en/stable/reference/ImageDraw.html
The PIL ImageDraw module allows you to draw shapes and text onto a picture.
The following example draws onto a blank canvas image. The image is created using the new() function, but you can also draw on an existing image from the open() function.
The command “draw = PIL.ImageDraw.Draw(canvas)” creates an object called draw. Then the draw object can call a variety of functions to draw onto your image object.
Look through the example code and see how you can draw pixels, lines, polygons, arcs, and text.
The example code won’t work without a font file.
(download here: https://www.wfonts.com/font/dopestyle)
from PIL import Image from PIL import ImageDraw from PIL import ImageFont import random canvas = Image.new("RGB",(300,300),(255,255,100)) draw = ImageDraw.Draw(canvas) for i in range(20000): x1 = random.randint(0,299) y1 = random.randint(0,299) r = random.randint(100,255) g = random.randint(100,255) b = random.randint(0,50) draw.point( (x1,y1), (r,g,b) ) draw.line( (299,0,0,299), fill = (60,5,90), width = 8) draw.polygon( (230,240, 270,240, 280,290, 270, 299, 220,280), fill='green') draw.ellipse( (5,5,45,45), fill=(60,5,90) ) draw.arc( (0,75,299,225), 60, 300, fill="black") for x in range(0,255): g = random.randint(50,100) draw.line((x+22,100,x+22,200),fill=(x,g,255-x)) for y in (5,105,185,245,275): draw.ellipse((130,y,170,y+20),fill=(255,100,100)) #load font; you also need to download a font file dopestyle = ImageFont.truetype("dopestyle.ttf",40) draw.text((55, 135), "I am Fancy ", font=dopestyle, fill = (200,200,255) ) canvas.show()