main
John Lauer Component record TPS16850VMAR: files batch 1 6db00ed 20h ago
#!/usr/bin/env python3
"""Compose docs/hero.png (1600 x 1000, 16:10): the etched model's iso render beside the part's identity.
usage: hero_png.py iso.png out.png"""
import sys
from PIL import Image, ImageDraw, ImageFont
iso = Image.open(sys.argv[1]).convert("RGB")
W, H = 1600, 1000; bg = (13, 17, 23)
im = Image.new("RGB", (W, H), bg); im.paste(iso.resize((900, 900), Image.LANCZOS), (10, 50))
d = ImageDraw.Draw(im)
F = "/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf"; FB = "/usr/share/fonts/truetype/dejavu/DejaVuSans-Bold.ttf"
def t(y, s, size, col, bold=False):
    d.text((930, y), s, font=ImageFont.truetype(FB if bold else F, size), fill=col)
t(250, "TPS16850VMAR", 46, (230, 237, 243), True)
t(330, "Texas Instruments", 32, (139, 148, 158))
t(410, "9 V to 80 V, 20 A integrated eFuse", 32, (230, 237, 243))
for i, s in enumerate(["3.5 mOhm FET, 2 A to 20 A circuit breaker", "73 A fast trip, auto-retry", "Current and temperature monitors",
                       "LQFN-CLIP-23 (VMA), 6.0 x 5.0 mm"]):
    t(480 + i * 52, s, 28, (0, 230, 220) if i == 0 else (200, 208, 216))
d.rectangle([930, 720, 1070, 726], fill=(0, 230, 220))
im.save(sys.argv[2]); print(im.size)