Icon-Quellen nach brand/icons/ verschieben und benennen

Die drei SVGs lagen in der Repo-Wurzel und hiessen noch wie beim Download
("open-box (1).svg" – inklusive Leerzeichen und Klammer). Durch mein git add -A
im letzten Commit sind sie dort auch gelandet.

Jetzt liegen sie in brand/icons/ und heissen wie die Icons im Code:
einlagern.svg, auslagern.svg, korrektur.svg. Ein README daneben haelt fest,
wofuer jede da ist - die beiden Kisten unterscheiden sich nur in der
Pfeilrichtung, wer sie verwechselt dreht Ein- und Auslagern um, ohne dass etwas
kaputtgeht - und wie man die Pfaddaten nach einer Aenderung neu uebernimmt.

Zur Laufzeit laedt niemand diese Dateien: die Pfade stehen inline in Icon.jsx,
damit die Icons ueber currentColor die Textfarbe annehmen. Die Originale tragen
festes Schwarz.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Scarriffle
2026-08-16 12:41:21 +02:00
parent 9a2dc3a482
commit e33c01ec37
6 changed files with 45 additions and 0 deletions

View File

@@ -8,6 +8,9 @@ Name `box`) in Weiß auf der Akzentfläche.
- **`app-icon.svg`** 1024×1024, vollflächig, feste Farbe (`#4d5cd4`), ohne
abgerundete Ecken. Für App-Icon (iOS/macOS via Icon Composer oder Xcode
„AppIcon", App Store). Die Rundung macht das System selbst.
- **`icons/`** Quellgrafiken der gefüllten Icons (Ein-/Auslagern, Korrektur).
Ihre Pfaddaten stehen inline in `../web/src/components/Icon.jsx`; siehe
`icons/README.md`.
- **Favicon / Web-Logo:** `../web/public/favicon.svg` dasselbe Zeichen mit
abgerundeter Platte und Hell-/Dunkel-Umschaltung (für den Browser-Tab).

38
brand/icons/README.md Normal file
View File

@@ -0,0 +1,38 @@
# Icon-Quellen
Hier liegen zugekaufte/heruntergeladene Grafiken, deren Pfaddaten **inline** in
`web/src/components/Icon.jsx` stehen (Abschnitt `GEFUELLT`). Zur Laufzeit lädt
niemand diese Dateien sie sind die Quelle, nicht das Auslieferungsformat.
Warum inline statt `<img src>`: Die Icons sollen die Textfarbe annehmen
(`fill="currentColor"`), damit sie sich mit Thema und Zustand mitfärben. Als
externe Datei ginge das nicht; die Originale tragen eine feste schwarze Füllung.
## Dateien
| Datei | Icon-Name | Bedeutung |
|---|---|---|
| `einlagern.svg` | `einlagern` | Kiste, Pfeil **hinein** Bewegungsart „Eingelagert" |
| `auslagern.svg` | `auslagern` | Kiste, Pfeil **heraus** Bewegungsart „Ausgelagert" |
| `korrektur.svg` | `korrektur` | Stapel mit Stift Bewegungsart „Korrektur" |
Die beiden Kisten unterscheiden sich nur in **einem** Pfad: der Pfeilrichtung.
Wer sie verwechselt, dreht Ein- und Auslagern um, ohne dass etwas kaputtgeht
deshalb die ausdrückliche Zuordnung oben.
## Nach einer Änderung neu übernehmen
Die Pfaddaten wurden per Skript übernommen, nicht abgetippt. Wird eine Datei
ersetzt, dieselbe Extraktion wiederholen und das Ergebnis in `GEFUELLT`
eintragen (`viewBox` mitnehmen die Kisten sind 24×24, die Korrektur 64×64):
```sh
python3 - <<'PY'
import re, pathlib
for name in ("einlagern", "auslagern", "korrektur"):
roh = pathlib.Path(f"brand/icons/{name}.svg").read_text()
print(name, re.search(r'viewBox="([^"]+)"', roh).group(1))
for d in re.findall(r'<path[^>]*\sd="([^"]+)"', roh):
print(f' <path d="{d}" />')
PY
```

View File

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -146,6 +146,10 @@ const PATHS = {
// Gefuellte Icons mit EIGENEM viewBox. Die uebrigen hier sind Strichzeichnungen
// (fill:none, stroke:currentColor); diese kommen als fertige Grafik und muessen
// deshalb getrennt gehalten werden.
//
// Quelle der Pfade: brand/icons/*.svg (dort steht auch, wie man sie nach einer
// Aenderung neu uebernimmt). Inline statt <img>, damit sie ueber currentColor
// die Textfarbe annehmen die Originaldateien tragen festes Schwarz.
const GEFUELLT = {
// Kiste mit Pfeil HINEIN aus open-box (1).svg
einlagern: {