INNER CODE UNIT · Python
build_svg
WenyuChiou/awesome-agentic-ai-zh · scripts/build-banner.py:228
def build_svg(locale, art=None):
art = read_art(locale) if art is None else art
t = LOCALES[locale]
encoded = base64.b64encode(art).decode("ascii")
parts = [f'<svg xmlns="http://www.w3.org/2000/svg" width="1672" height="941" viewBox="0 0 1672 941" lang="{locale}" role="img" aria-labelledby="title desc">',
f'<title id="title">{escape(t["title"])}</title><desc id="desc">{escape(t["desc"])}</desc>',
f'<metadata>Original artwork: {SOURCE_COMMIT}; WebP quality 95; overlay only.</metadata>',
f'<style>{animation_css(locale)}</style>',
f'<image id="original-art" width="1672" height="941" href="data:image/webp;base64,{encoded}"/>',
icon_layers(locale, art)]
for name, (x,y,w,h,radius) in zip(WINDOWS,NODES[locale],strict=True):
route = "common" if name=="base" else "hub" if name in {"s5","s8"} else "a" if name.startswith("a") else "b"
parts.append(f'<rect id="node-{name}" class="halo halo-{name}" x="{x-3}" y="{y-3}" width="{w+6}" height="{h+6}" rx="{radius+3}" fill="none" stroke="{COLORS[route]}" stroke-width="3"/>')
for (name,route,start,end),path in zip(EDGES,PATHS[locale],strict=True):
parts.append(f'<path id="edge-{name}" d="{path}" fill="none" stroke="none"/>')
parts.append(f'<circle class="dot dot-{name}" r="6" fill="{COLORS[route]}" stroke="#ffffff" stroke-width="2"/>')
parts.append('</svg>')
return "\n".join(parts)+"\n"