Create Thüringen branding edition on shared core

This commit is contained in:
pan
2026-07-05 22:38:59 +02:00
commit ff53f88f35
19 changed files with 359 additions and 0 deletions
+37
View File
@@ -0,0 +1,37 @@
#!/usr/bin/env python3
"""Regenerate the portable 256-color crest data."""
from __future__ import annotations
import json
import re
import subprocess
from pathlib import Path
ROOT = Path(__file__).resolve().parent.parent
ASSETS = ROOT / "synadm_tui_thueringen" / "assets"
PIXEL = re.compile(r"#([0-9A-Fa-f]{8})\s")
def main() -> int:
process = subprocess.run(
["convert", str(ASSETS / "thueringen-wappen.png"), "-filter", "Lanczos", "-resize", "18x20!", "txt:-"],
check=True,
text=True,
stdout=subprocess.PIPE,
)
pixels = [match.group(1).lower() for line in process.stdout.splitlines() if (match := PIXEL.search(line))]
if len(pixels) != 18 * 20:
raise RuntimeError(f"360 Pixel erwartet, {len(pixels)} erhalten")
target = ASSETS / "thuringia.block.json"
target.write_text(
json.dumps({"width": 18, "height": 20, "pixels": pixels}, separators=(",", ":")) + "\n",
encoding="utf-8",
)
print(target)
return 0
if __name__ == "__main__":
raise SystemExit(main())