Slide 3: der Rahmen um die Aufgabe ist weg
Duenner half nicht, im Beitrag sah es aus wie vorher. Die Slide braucht ihn
auch nicht: sie besteht aus drei Nachrichten, die aufeinander folgen, und die
Aufgabenkarte ist das einzige Element mit einer gelben Marke ("Offen") -- der
Blick geht ohnehin dorthin. Ein Rahmen sagt nochmal, was die Anordnung schon
sagt, und kostet dafuer die Ruhe der Flaeche.
Mit ihm faellt letzterAnhang weg: blase() merkte sich die Lage der zuletzt
gezeichneten Anhangkarte, damit der Rahmen nicht aus einer zweiten Rechnung
kommt. Das liest jetzt niemand mehr.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
a884df4cda
commit
9fe7b848ee
2 files changed
+18
-53
No files matched your search
@@ -242,31 +242,26 @@ wer sie noch einmal verkleinert, nimmt der Slide ihre eigene Aussage.
|
||||
|
||||
---
|
||||
|
||||
## 5c. Der ausbrechende Rahmen auf Slide 3
|
||||
## 5c. Slide 3 kommt ohne Hervorhebung aus
|
||||
|
||||
Aus den Slack-Beiträgen kommt noch ein zweites Mittel, das mehr trägt als die
|
||||
bloße Anordnung: **ein runder Rahmen, der über die Fläche hinausragt und auf
|
||||
genau eine Sache zeigt.** Bei Slack ist er violett und liegt über einem Handy;
|
||||
hier ist er gelb und liegt über der Anhangkarte der Aufgabe. Die Marke gibt den
|
||||
Ton vor, nicht das Vorbild.
|
||||
Um die Anhangkarte der Aufgabe lag einmal ein gelber Rahmen, geborgt aus den
|
||||
Slack-Beiträgen: rund, über die Blase hinausragend, auf genau eine Sache
|
||||
zeigend. Er ist weg.
|
||||
|
||||
Er sitzt dort, weil diese Karte den Satz der Slide trägt: aus der Nachricht
|
||||
wird etwas mit Frist und Namen. Seitlich bricht er aus der Blase aus, oben und
|
||||
unten bleibt er knapp — rundum gleich viel Luft schnitt den Satz darüber und
|
||||
die Uhrzeit darunter mitten durch.
|
||||
Bei sechs Pixeln war er plump — er trug mehr Farbe als die Karte, auf die er
|
||||
zeigen sollte. Der Versuch, ihn zu retten, ging über vier Varianten (ganz weg,
|
||||
weicher Schein, gelbe Kante links, dünner Ring), jeweils gerendert und auf
|
||||
Feed-Breite heruntergerechnet; gewählt war am Ende derselbe Ring mit drei
|
||||
statt sechs Pixeln. Im Beitrag sah das aus wie vorher.
|
||||
|
||||
**Drei Pixel, nicht sechs.** Bei sechs war er plump: er trug mehr Farbe als die
|
||||
Karte, auf die er zeigen soll, und im Profilraster wurde daraus ein gelber
|
||||
Balken. Geprüft wurden vier Alternativen — ganz weg, ein weicher Schein, eine
|
||||
gelbe Kante links, ein dünner Ring — jeweils gerendert und auf Feed-Breite
|
||||
(480 px) heruntergerechnet, weil dort entschieden wird, ob eine Linie noch
|
||||
etwas sagt. Dünner als drei hält das nicht aus: bei 480 px sind drei Pixel noch
|
||||
gut einer, darunter verschwindet die Linie. Der dünne Ring gewinnt, weil er als
|
||||
einziger die Aufgabe des alten behält, nämlich auf genau diese Karte zu zeigen.
|
||||
**Die Slide braucht ihn nicht.** Sie besteht aus drei Nachrichten, die
|
||||
aufeinander folgen, und die Aufgabenkarte ist das einzige Element mit einer
|
||||
gelben Marke („Offen") — der Blick geht ohnehin dorthin. Ein Rahmen sagt
|
||||
nochmal, was die Anordnung schon sagt, und kostet dafür die Ruhe der Fläche.
|
||||
|
||||
Seine Lage kommt aus `blase()` selbst: die Funktion merkt sich, wo sie die
|
||||
Anhangkarte gezeichnet hat. Die Rechnung ein zweites Mal zu führen hätte
|
||||
geheißen, dass beide auseinanderlaufen, sobald sich an der Karte etwas ändert.
|
||||
Mit ihm ist `letzterAnhang` weggefallen: `blase()` merkte sich die Lage der
|
||||
zuletzt gezeichneten Anhangkarte, damit der Rahmen nicht aus einer zweiten
|
||||
Rechnung kommt. Ohne Rahmen liest das niemand mehr.
|
||||
|
||||
---
|
||||
|
||||
|
||||
+2
-32
@@ -2739,11 +2739,6 @@ if (location.search.indexOf("nur=anim") >= 0)
|
||||
return { zeilen, hoehe: Math.round(h), breite: Math.round(Math.min(b, max || BLASE_MAX)) };
|
||||
}
|
||||
|
||||
/* Wo die zuletzt gezeichnete Anhangkarte lag. Wer einen Rahmen darum
|
||||
legen will, liest es direkt nach dem Aufruf von blase() aus -- besser,
|
||||
als die Rechnung ein zweites Mal zu fuehren und sie auseinanderlaufen zu
|
||||
lassen. */
|
||||
let letzterAnhang = null;
|
||||
let klappNr = 0;
|
||||
|
||||
function blase(x, y, b, m) {
|
||||
@@ -2785,7 +2780,6 @@ if (location.search.indexOf("nur=anim") >= 0)
|
||||
cy += ma.zeilen.length * 25;
|
||||
if (m.anhang) {
|
||||
const ah = anhangHoehe(m.anhang, ma.breite - 32);
|
||||
letzterAnhang = { x: bx + 16, y: cy + 4, b: ma.breite - 32, h: ah };
|
||||
g += anhangKarte(bx + 16, cy + 4, ma.breite - 32, m.anhang[0], m.anhang[1],
|
||||
m.anhang[2], m.anhang[3]);
|
||||
cy += ah + 8;
|
||||
@@ -3128,36 +3122,12 @@ if (location.search.indexOf("nur=anim") >= 0)
|
||||
/* Schmaler gesetzt als die Spalte auf Slide 1: dadurch skaliert die
|
||||
Zeichnung groesser und fuellt die Flaeche. */
|
||||
const W = 470;
|
||||
let inhalt = "", y = 0, rahmen = "";
|
||||
let inhalt = "", y = 0;
|
||||
for (const m of VERLAUF.slice(2, 5)) {
|
||||
inhalt += blase(0, y, W, m);
|
||||
/* Der Rahmen um die Aufgabe. Die Machart ist aus den Slack-Beitraegen
|
||||
geborgt: ein runder Rahmen, der ueber die Flaeche hinausragt und auf
|
||||
genau eine Sache zeigt. Bei Slack ist er violett, hier gelb -- die
|
||||
Marke gibt den Ton vor, nicht das Vorbild.
|
||||
|
||||
Er sitzt um die Anhangkarte der Aufgabe, weil die den Satz der Slide
|
||||
traegt: aus der Nachricht wird etwas mit Frist und Namen. Die Lage
|
||||
kommt aus blase() selbst, damit sie nicht auseinanderlaeuft. */
|
||||
if (m.anhang && m.anhang[3] === "Offen" && letzterAnhang) {
|
||||
/* Seitlich bricht er aus, oben und unten bleibt er knapp: rundum
|
||||
gleich viel Luft schnitt den Satz darueber und die Uhrzeit
|
||||
darunter mitten durch. Der Ausbruch nach links und rechts ist
|
||||
ohnehin der, den man sieht.
|
||||
|
||||
Drei Pixel, nicht sechs. Bei sechs war er plump: er trug mehr Farbe
|
||||
als die Karte, die er zeigen soll, und im Profilraster wurde daraus
|
||||
ein gelber Balken. Duenner als drei haelt die Verkleinerung auf
|
||||
Feed-Breite nicht aus -- bei 480 px Darstellung sind drei Pixel
|
||||
noch gut ein Pixel, darunter verschwindet die Linie. */
|
||||
const a = letzterAnhang, seit = 14, ob = 4, un = 6;
|
||||
rahmen = '<path d="' + rundRechteck(a.x - seit, a.y - ob, a.b + 2 * seit,
|
||||
a.h + ob + un, 18) +
|
||||
'" fill="none" stroke="#F1B729" stroke-width="3" stroke-linejoin="round"/>';
|
||||
}
|
||||
y += blaseHoehe(m, W) + 18;
|
||||
}
|
||||
return wfSvg(W, y - 18, inhalt + rahmen);
|
||||
return wfSvg(W, y - 18, inhalt);
|
||||
}
|
||||
|
||||
/* ─── Slide 4 · Was noch in den Chat passt ───────────────────────────────
|
||||
|
||||
Reference in new issue
Block a user