Etwas zum Hintergrund:
Ich bastle grade an einer Bildergalerie in Flash. Paar Gründe haben mich dazu bewegt die Bilder nicht von dateien sondern von php-script auszugeben, zentrale funktion hier ist ImageCreateFromJPEG(). Es muss nicht unbedingt JPG sein, wenn das weiterhilft, kanns genauso z.B. PNG sein, habe mich noch nicht damit beschäftigt was besser wäre.
Jetzt brauche ich die größe(kB)des zu ladenden bildes. und darum dreht sich auch meine Frage. Bei dateien erkennt flash sofort die gesamtgröße(kB), hier aber nicht. Aus diesem Grund schätze ich dass die bilder aus php-script als stream ausgegeben werden. Im PHP-Manual steht aber das gegenteil davon.
Zitat:
imagecreatefromjpeg -- Erzeugt ein neues Bild im JPEG-Format, welches aus einer Datei oder von einer URL gelesen wird
|
"ein neues Bild" versteh ich hier mal nicht als stream.
Prinzipiell könnte ich mit sehr geringem Aufwand die kB-Werte in einer Datenbank ablegen. Diese daten würde ich dann im voraus laden. So könnte man das Problem umgehen. Da ist nur noch ein Wunsch offen:
da diese Gallerie sehr unterschiedliche Menschen mit unterschiedliher Internet-Verbindungen benutzen werden (zum Teil unter 56kb) dachte ich an ein regler der es zulässt dass man selber die gewünschte Qualität einstellen kann.
Hat man langsamere verbindung -> stelle doch bitte die qualy bissel runter, so bis auf 70-80% und habe dadurch weniger zum laden. Haste DSL - kannst gerne alles in 100% sehen.
Alles kein problem, nur: soviel daten in der datenbank zu speichern ist wahnsinn, einfach nicht effizient, zuviel. Bilder werden in (mindestens 3) verschiedenen auflösungen ausgegeben, das kann man noch in der DB speichern. Aber werte für x-viele qualätwerte und dazu auch noch für verschiedene Auflösungen wird diese datenmenge so schätzungsweise um da 50-fache vergrössern.
Deshalb frage ich nach einem algorithmus, mit dem man die endgültige größe berechnen (oder gut abschätzen) kann.
Beispiel1: bild1.jpg ist 200kB groß, 2000x1000Pixel. Algorithmus berechnet mir wie groß es wäre in 200x100Pixel bei 80% Qualität.
Beispiel2: bild2.jpg ist 200kB groß, 2000x1000Pixel. Algorithmus berechnet mir wie groß es wäre in 200x100Pixel bei 80% Qualität. Zusätzlich weis ich dass es bei 100% 20kB groß wäre.
Ich hoffe das ich mein Anliegen verständlich vormuliert habe. Hoffe auf die schnelle Hilfe.
Alternativ würd ich mir freuen, wenn einer weis wo ich GD-Lib-Profis finde um sie direkt zu fragen.
Grüße