Files
homepage/static/cantons/ow.svg
T
Alexander cfdd58fb18 feat(hikes): inline cantonal Wappen next to region label
26 public-domain coats of arms fetched once from Wikimedia Commons
via scripts/download-cantons.ts and committed under static/cantons/.
$lib/data/cantons.ts maps Swisstopo's free-form name (German default,
French/Italian alternates for Romandie / Ticino) to the ISO code +
emblem URL.

Card shows an 18×22 emblem, detail page a 24×30 one — both with a
drop-shadow so they read against the dark hero gradient. Unknown
canton names fall back to plain text without the emblem.

The downloaded SVGs are written verbatim — earlier draft prepended a
provenance HTML comment but that breaks the leading `<?xml … ?>` and
browsers refuse to render the image. Provenance lives in the script's
CANTONS table instead.
2026-05-19 08:44:30 +02:00

104 lines
3.4 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
height="647"
width="530"
version="1.1"
id="svg60"
sodipodi:docname="20221120201213!Wappen_Obwalden_matt.svg"
inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs64" />
<sodipodi:namedview
id="namedview62"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showgrid="false"
inkscape:zoom="0.45737896"
inkscape:cx="83.08209"
inkscape:cy="157.4187"
inkscape:window-width="1920"
inkscape:window-height="1017"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="svg60" />
<g
id="g5781">
<path
d="m 2,3 v 377 a 263,263 0 0 0 526,0 V 3 Z"
fill="#ffffff"
id="path34"
style="stroke:#000000;stroke-width:3.6" />
<path
d="M 528,2 H 2 v 306 h 526 z"
id="path36"
style="fill:#e7423f;stroke:#000000;stroke-width:3.6;fill-opacity:1" />
<path
d="M 286,324 V 18 H 244 V 324 M 244,39 H 194 V 63.3 H 178 V 39 h -62 v 42 h 45 v 18 h -45 v 42 h 62 v -24 h 16 v 24 h 24 v 17 h -24 v 24 h -16 v -24 h -62 v 42 h 45 v 18 h -45 v 42 h 62 v -24 h 16 v 24 h 50"
fill="#ffffff"
id="path38"
style="stroke:#000000;stroke-width:3.6" />
<use
xlink:href="#b"
transform="matrix(-1,0,0,1,530,0)"
id="use40"
style="fill:#dd3322;stroke:#000000;stroke-width:3.6" />
<g
id="b"
style="fill:#e7423f;stroke:#000000;stroke-width:3.6;fill-opacity:1">
<path
id="a"
d="m 395,422 c 18,31 11,62 -14,76 -25,14 -36,1 -35,-22 -16,17 -5,43 11,47 12,3 31,-1 44,-8 36,-20 48,-72 24,-111"
style="fill:#e7423f;fill-opacity:1" />
<path
d="m 264,343 h 34 c 4,0 6,-4 6,-7 v -21 c 0,-3 -2,-7 -6,-7 h -34 m 0,318 c 37,0 67,-17 81,-46 11,-22 7,-42 1,-58 -11,-29 -51,-23 -55,1 15,-10 33,-11 36,11 4,36 -22,57 -63,57 m 1,-248 h 27 c 9,0 21,7 17,21 l -15,51 h -29"
id="path43"
style="fill:#e7423f;fill-opacity:1" />
<use
xlink:href="#a"
transform="matrix(0.472,-0.882,-0.882,-0.472,581,970)"
id="use45"
style="fill:#e7423f;fill-opacity:1" />
<path
d="m 264,334 h 40 c 12,0 11,-17 0,-17 h -40"
id="path47"
style="fill:#e7423f;fill-opacity:1" />
<circle
cy="483"
cx="320"
r="18.200001"
id="circle49"
style="fill:#e7423f;fill-opacity:1" />
<circle
cy="543"
cx="370"
r="18.200001"
id="circle51"
style="fill:#e7423f;fill-opacity:1" />
</g>
<ellipse
cy="371"
cx="265"
rx="21"
ry="28"
id="ellipse54"
style="fill:#e7423f;stroke:#000000;stroke-width:3.6;fill-opacity:1" />
<circle
cy="426"
cx="265"
r="24.700001"
id="circle56"
style="fill:#e7423f;stroke:#000000;stroke-width:3.6;fill-opacity:1" />
</g>
</svg>