223015b phase 3: summary-kap02 demo (kap2 folie 22 zusammenfassung). zwei spalten: verlustfrei grün (redundanz raus, umkehrbar, RLE/Huffman/Deflate, ZIP/PNG/FLAC/RAW, faktor 2x-5x) vs verlustbehaftet rot (irrelevanz raus, nicht umkehrbar, psychoakustik/psychovisualität, MP3/AAC/JPEG/H.264, faktor 10x-100x) mit key-value rows pro spalte (was passiert, umkehrbar, verfahren/trick, formate, faktor). drunter entscheidungsmatrix mit 6 szenarien mapped zu lossless/lossy (foto-archiv RAW lossless, spotify lossy, code-repo zip lossless, instagram jpeg lossy, studio-master flac lossless, youtube h.264 lossy). verdict 'lossless für archiv und code, lossy für streaming und anzeige. faustregel: werkzeug → lossless, konsum → lossy'
This commit is contained in:
@@ -0,0 +1,189 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="de">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Was wir über Kompression gelernt haben</title>
|
||||||
|
<style>
|
||||||
|
:root {
|
||||||
|
--dark: #1a1a2e;
|
||||||
|
--muted: #6b7280;
|
||||||
|
--soft: #f8fafc;
|
||||||
|
--border: #cbd5e1;
|
||||||
|
--hl: #d63384;
|
||||||
|
--lossless: #16a34a;
|
||||||
|
--lossy: #ef4444;
|
||||||
|
}
|
||||||
|
html, body { margin: 0; padding: 0; background: #fff; font-family: system-ui, -apple-system, sans-serif; color: var(--dark); }
|
||||||
|
body { padding: 30px 40px; }
|
||||||
|
h1 { text-align: center; margin: 0 0 6px; font-size: 1.75rem; }
|
||||||
|
.sub { text-align: center; color: var(--muted); margin-bottom: 26px; font-size: 1.05rem; }
|
||||||
|
.sub strong { color: var(--dark); }
|
||||||
|
|
||||||
|
.compare {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 1fr;
|
||||||
|
gap: 22px;
|
||||||
|
max-width: 1180px;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.col {
|
||||||
|
border: 2px solid;
|
||||||
|
border-radius: 12px;
|
||||||
|
padding: 18px 22px;
|
||||||
|
background: #fff;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
gap: 12px;
|
||||||
|
}
|
||||||
|
.col.lossless { border-color: var(--lossless); }
|
||||||
|
.col.lossy { border-color: var(--lossy); }
|
||||||
|
|
||||||
|
.col-head { display: flex; justify-content: space-between; align-items: baseline; }
|
||||||
|
.col-name { font-size: 1.4rem; font-weight: 700; }
|
||||||
|
.col.lossless .col-name { color: var(--lossless); }
|
||||||
|
.col.lossy .col-name { color: var(--lossy); }
|
||||||
|
.col-tag {
|
||||||
|
font-size: 0.72rem;
|
||||||
|
font-weight: 700;
|
||||||
|
text-transform: uppercase;
|
||||||
|
letter-spacing: 0.12em;
|
||||||
|
color: var(--muted);
|
||||||
|
}
|
||||||
|
|
||||||
|
.row { display: grid; grid-template-columns: 120px 1fr; gap: 10px 14px; }
|
||||||
|
.row-key {
|
||||||
|
font-size: 0.72rem;
|
||||||
|
font-weight: 700;
|
||||||
|
text-transform: uppercase;
|
||||||
|
letter-spacing: 0.08em;
|
||||||
|
color: var(--muted);
|
||||||
|
padding-top: 3px;
|
||||||
|
}
|
||||||
|
.row-val { font-size: 0.92rem; line-height: 1.5; color: var(--dark); }
|
||||||
|
.row-val strong {
|
||||||
|
font-family: ui-monospace, monospace;
|
||||||
|
background: var(--soft);
|
||||||
|
padding: 1px 6px;
|
||||||
|
border-radius: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.matrix {
|
||||||
|
margin-top: 22px;
|
||||||
|
max-width: 1180px;
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
background: var(--soft);
|
||||||
|
border: 1.5px solid var(--border);
|
||||||
|
border-radius: 10px;
|
||||||
|
padding: 14px 22px;
|
||||||
|
}
|
||||||
|
.matrix-head {
|
||||||
|
font-size: 0.78rem;
|
||||||
|
font-weight: 700;
|
||||||
|
text-transform: uppercase;
|
||||||
|
letter-spacing: 0.1em;
|
||||||
|
color: var(--muted);
|
||||||
|
margin-bottom: 8px;
|
||||||
|
}
|
||||||
|
.matrix-grid {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 1fr 1fr 1fr;
|
||||||
|
gap: 8px 16px;
|
||||||
|
font-size: 0.88rem;
|
||||||
|
}
|
||||||
|
.matrix-grid .scenario { font-weight: 700; color: var(--dark); }
|
||||||
|
.matrix-grid .answer {
|
||||||
|
font-family: ui-monospace, monospace;
|
||||||
|
color: var(--dark);
|
||||||
|
}
|
||||||
|
.matrix-grid .answer.lossless { color: var(--lossless); font-weight: 700; }
|
||||||
|
.matrix-grid .answer.lossy { color: var(--lossy); font-weight: 700; }
|
||||||
|
|
||||||
|
.verdict {
|
||||||
|
margin-top: 18px;
|
||||||
|
max-width: 1180px;
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
text-align: center;
|
||||||
|
border: 2px solid var(--hl);
|
||||||
|
border-radius: 12px;
|
||||||
|
padding: 14px 22px;
|
||||||
|
}
|
||||||
|
.verdict-q { font-size: 1.1rem; font-weight: 700; color: var(--hl); }
|
||||||
|
.verdict-a { font-size: 0.93rem; color: var(--dark); margin-top: 4px; }
|
||||||
|
.verdict-a strong { color: var(--hl); }
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1>Was wir über Kompression gelernt haben</h1>
|
||||||
|
<div class="sub">Zwei fundamental verschiedene Wege, dasselbe Ziel: <strong>Daten kleiner machen.</strong></div>
|
||||||
|
|
||||||
|
<div class="compare">
|
||||||
|
|
||||||
|
<div class="col lossless">
|
||||||
|
<div class="col-head">
|
||||||
|
<span class="col-name">Verlustfrei</span>
|
||||||
|
<span class="col-tag">Lossless</span>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="row-key">Was passiert</div>
|
||||||
|
<div class="row-val">Redundanz raus — Wiederholungen kürzer schreiben</div>
|
||||||
|
<div class="row-key">Umkehrbar</div>
|
||||||
|
<div class="row-val">Ja. Aus der komprimierten Datei wird das <strong>exakte</strong> Original wieder.</div>
|
||||||
|
<div class="row-key">Verfahren</div>
|
||||||
|
<div class="row-val">RLE, Huffman, Deflate, LZ77/LZ78</div>
|
||||||
|
<div class="row-key">Formate</div>
|
||||||
|
<div class="row-val">ZIP · PNG · FLAC · TIFF · RAW</div>
|
||||||
|
<div class="row-key">Faktor</div>
|
||||||
|
<div class="row-val">2× – 5× (typisch)</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col lossy">
|
||||||
|
<div class="col-head">
|
||||||
|
<span class="col-name">Verlustbehaftet</span>
|
||||||
|
<span class="col-tag">Lossy</span>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="row-key">Was passiert</div>
|
||||||
|
<div class="row-val">Irrelevanz raus — was Mensch nicht wahrnimmt, wird weggeworfen</div>
|
||||||
|
<div class="row-key">Umkehrbar</div>
|
||||||
|
<div class="row-val">Nein. Einmal weg, für immer weg.</div>
|
||||||
|
<div class="row-key">Trick</div>
|
||||||
|
<div class="row-val">Psychoakustik (MP3) · Psychovisualität (JPEG)</div>
|
||||||
|
<div class="row-key">Formate</div>
|
||||||
|
<div class="row-val">MP3 · AAC · JPEG · WebP · H.264 · H.265</div>
|
||||||
|
<div class="row-key">Faktor</div>
|
||||||
|
<div class="row-val">10× – 100× (typisch)</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="matrix">
|
||||||
|
<div class="matrix-head">Entscheidungsmatrix — wann nehme ich welches?</div>
|
||||||
|
<div class="matrix-grid">
|
||||||
|
<div class="scenario">Foto-Archiv (RAW)</div>
|
||||||
|
<div class="answer lossless">Lossless</div>
|
||||||
|
<div class="scenario">Spotify-Stream</div>
|
||||||
|
<div class="answer lossy">Lossy</div>
|
||||||
|
|
||||||
|
<div class="scenario">Code-Repository</div>
|
||||||
|
<div class="answer lossless">Lossless (ZIP)</div>
|
||||||
|
<div class="scenario">Instagram-Foto</div>
|
||||||
|
<div class="answer lossy">Lossy (JPEG)</div>
|
||||||
|
|
||||||
|
<div class="scenario">Studio-Master-Track</div>
|
||||||
|
<div class="answer lossless">Lossless (FLAC)</div>
|
||||||
|
<div class="scenario">YouTube-Video</div>
|
||||||
|
<div class="answer lossy">Lossy (H.264)</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="verdict">
|
||||||
|
<div class="verdict-q">Lossless für Archiv und Code. Lossy für Streaming und Anzeige.</div>
|
||||||
|
<div class="verdict-a">Faustregel: <strong>Werkzeug</strong> (du arbeitest noch dran) → Lossless. <strong>Konsum</strong> (du schaust/hörst nur) → Lossy.</div>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 108 KiB |
Reference in New Issue
Block a user