# Programm-Icon `predictalytics.ico` ist die **einzige Quelle**. Alles andere ist daraus abgeleitet: | Datei | Wozu | |---|---| | `predictalytics.ico` (9 Größen, 16–256) | `` in `Predictalytics.Shell.csproj` — Explorer, Taskleiste, Task-Manager unter Windows | | `predictalytics.png` (256) | `Window.Icon` in `MainWindow.axaml` und `LicenseWindow.axaml`; Dialoge erben es vom Besitzerfenster. Bewusst PNG, weil Skia unter Linux kein ICO dekodiert | | `Predictalytics.Api/wwwroot/favicon.ico` (16–48) | Browser-Tab der Web-UI | | `Predictalytics.Api/wwwroot/apple-touch-icon.png` (180) | iOS-Homescreen | | `Predictalytics.Api/wwwroot/icon-192.png`, `icon-512.png` | Verlinkt aus `index.html`, `landing.html`, `docs.html` | Ersetzt du das Icon, tausche `predictalytics.ico` aus und erzeuge den Rest neu: ```bash python - <<'PY' from PIL import Image src = 'src/Predictalytics.Shell/Assets/predictalytics.ico' im = Image.open(src); im.size = (256, 256); im.load(); im = im.convert('RGBA') im.save('src/Predictalytics.Shell/Assets/predictalytics.png', optimize=True) im.save('src/Predictalytics.Api/wwwroot/favicon.ico', sizes=[(16,16),(24,24),(32,32),(48,48)]) for n, name in [(180,'apple-touch-icon.png'), (192,'icon-192.png'), (512,'icon-512.png')]: im.resize((n,n), Image.LANCZOS).save(f'src/Predictalytics.Api/wwwroot/{name}', optimize=True) PY ```