From b99e3043b600be0914157671262328d86f96bdc4 Mon Sep 17 00:00:00 2001 From: Dogfather Date: Thu, 27 Aug 2026 00:49:49 +0200 Subject: [PATCH] Bilder werden vor dem Hochladen aufbereitet Das Bild "Event des Jahres" liegt als PNG mit 2524 KB auf dem Server und macht damit zwei Drittel der gesamten Startseite aus. Angezeigt wird es mit 246 bis 420 Punkten -- die Datei hat 1672. PNG ist fuer ein Foto ausserdem das falsche Format. Der Fehler passiert beim Hochladen: Ein Handy liefert Fotos in voller Kameraaufloesung, und niemand denkt vorher ans Verkleinern. Es ist auch nicht die Aufgabe dessen, der ein Bild aussucht -- sondern die der Seite, die es entgegennimmt. IM BROWSER, NICHT AUF DEM SERVER Serverseitig braeuchte es eine Bildbibliothek mit nativem Code, installiert in einem Verzeichnis, an das ich nicht herankomme. Der Browser kann das ohnehin: Canvas skaliert und kodiert seit jeher. Nebeneffekt: Schon der Upload wird kleiner. Wer vom Handy aus ein 8-MB-Foto hochlaedt, wartet sonst am Mobilfunknetz. DREI ENTSCHEIDUNGEN 1. Kleine PNGs bleiben unangetastet. Ein Logo mit durchsichtigem Hintergrund wuerde als JPEG einen schwarzen Kasten bekommen. Die Grenze liegt bei 400 KB -- darunter ist es wahrscheinlich eine Grafik, darueber praktisch immer ein Foto. 2. Wird die Datei NICHT kleiner, bleibt das Original. Bei bereits gut komprimierten Bildern kann erneutes Kodieren sogar zulegen -- und Qualitaet kosten fuer nichts. 3. Schlaegt irgendetwas fehl, wird das Original hochgeladen. Ein misslungenes Verkleinern darf niemals einen Upload verhindern. GEPRUEFT Grosses PNG 3000px: 130 -> 55 KB, auf 1600px begrenzt. Grosses JPEG 3000px: 269 -> 131 KB. Kleines PNG: unveraendert, bleibt PNG. Keine Skriptfehler. Gilt fuer alle drei Upload-Stellen: Event-Bild, Team-Foto, Stimmen-Bild. Das vorhandene 2524-KB-PNG bleibt davon unberuehrt -- es liegt schon auf dem Server. Ein einmaliges Neu-Hochladen ueber die Verwaltung ersetzt es durch die aufbereitete Fassung. Co-Authored-By: Claude Opus 5 --- verwaltung.html | 117 ++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 114 insertions(+), 3 deletions(-) diff --git a/verwaltung.html b/verwaltung.html index 050de6b1..571a5bb8 100644 --- a/verwaltung.html +++ b/verwaltung.html @@ -1255,6 +1255,117 @@