from PIL import Image,ImageDraw,ImageFont
from pathlib import Path
import textwrap,time
root=Path(__file__).parent
font=ImageFont.truetype('/usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf',18)
for side,sha in [('before','bdf6c6ec89'),('after','71e6999f25')]:
    text=(root/(side+'.txt')).read_text()
    lines=[side.upper()+' | '+sha,'Captured real CLI stdout (wrapped for readability)','']
    for line in text.splitlines():lines.extend(textwrap.wrap(line,100,replace_whitespace=False,drop_whitespace=False) or [''])
    def render():
        im=Image.new('RGB',(1150,960),'#101820'); d=ImageDraw.Draw(im)
        for i,line in enumerate(lines):d.text((24,20+i*26),line,font=font,fill='#e9eef2')
        return im
    a=render();time.sleep(.5);b=render();assert a.tobytes()==b.tobytes();b.save(root/(side+'.png'))
