Konfiguration Bildqualität

Guten Morgen,.

ich habe eine Verständnis Frage. Was macht Oxid mit den Bildern, wenn man unter Grundeinstellungen—>Bilder den Wert auf 100 stellt?

Werden die Bilder da vergrößert…techn. aufpoliert etc?:smiley:

Mir ist beim optimieren aufgefallen, wenn ich ein Bild auf 50 kb komprimiert hochlade, wird mir hinterher von diversen Optimierungstools angezeigt wird, dass ich das Bild um 98 kb komprimieren könnte.

Nun habe ich jetzt nochmal das ganze im Google eigenen PageSpeed Tool getestet. Selbes Spiel. Das 50 Kb Bild soll um 98 Kb komprimiert werden.:confused:

Ich bin naiver weise davon ausgegangen, dass das Bild beim “Wert 100” auch 100% der Originalgröße besitzt und wenn man runterregelt, dann entsprechend kleiner. Dem ist nicht so?

Grüße

Qualität und Größe (Breite / Höhe) sind verschiedene Sachen.

Die Bilder werden mit gdLib Funktion imagejpeg verarbeitet


Doku: http://php.net/manual/en/function.imagejpeg.php

Hallo,

ja Maße und Quali sind unterschiedliche Dinge, dass ist mir schon klar. Aber weshalb arbeitet dieses dLib imagejpeg so kontraproduktiv? Es verkleinert die Maße des Bildes und bläht die Dateigröße auf.

Ich habe ein Hersteller Produktfoto. Das ist irgendwas um die 3000 px groß und hat 500 kb groß. Das ist mir zu groß und verkleinere es per Photoshop auf 1024x683 px und komprimiere es auf 50 kb.

Nun lade ich es im Backend hoch und Oxid legt es in den Ordner /out/pictures/generated/product/1/665_665_100…dort ist das in 50 kb hochgeladene Bild nun auf wundersame Weise 120 kb groß geworden bei gleichzeitig deutlich kleineren Abmessungen (665x444)

Das finde ich nicht optimal.

Das kann man so nicht vergleichen.
Photoshop kostet um die 150€/ Jahr, verwendet eigene propriätere und bessere Algorithmen und hat dabei viel mehr Rechenleistung zur Verfügung.
GD Lib ist kostenlos, wird kaum weiterentwickelt und verbessert, nutzt Open Source Algorithmen und hat einen Bruchteil der Leistung deines PCs zur Verfügung.

Du kannst genau so gut einen einhändigen Metzger beauftragen, dir eine Mona Lisa zu malen. Er wird es irgendwie schon hinkriegen, aber ein professioneller Künstler wird es immer deutlich besser machen.

OXID nutzt GD Lib nicht, weil GD Lib geil ist, sondern weil es nichts anderes gibt. ImageMagic ist deutlich besser, muss aber so gut wie immer nachinstalliert werden, was bei Shared Hosting nicht immer möglich ist. Du könntest höchstens etwas Feintuning für GD Lib zu versuchen.

Ok, verstanden. Aber so macht es ja keinen Sinn Bilder vorher zu optimieren, wenn am Ende eh was anderes rauskommt.

Habe ich eine Möglichkeit, dass zu umgehen? Irgend etwas was ein Programmierer bezahlbar umstricken könnte, dass meine Bilder genommen werden bzw. meine Bilder nur an die Größe (Abmessungen) angepasst werden und die Datengröße/Qualität unverändert bleibt?

Bin techn. Laie, daher die Frage…

Es macht schon Sinn die Bilder vorher auf die maximale nötige Größe zu verkleinern, wenn das original Foto z.b. 5000x5000 px groß ist, der Shop aber größtenfalls 1500x1500 px benötigt. Dann muss OXID weniger selber machen und kann weniger falsch machen.

Wir hatten mal bei einem Shop die Bilder mit einem Photoshop Batch Vorgang vorbereiten lassen und sie einfach in generated / master etc hochgeladen, so dass der Shop keine eigenen Bilder erstellen musste, sondern gleich unsere genommen hat.
Das wäre eine Möglichkeit.

Alternativ gibt es Cloud Dienste, die Bilder skalieren und optimieren.



wobei ich gerade noch was neues kostenloses gefunden habe:
https://compressor.io/ (hat aber keine API)
https://rsz.io/

Man müsste mal testen, ob es sich lohnt, den Aufwand für Bilder zu betreiben

Ich habe nun mal bei dem Testartikel das 120 kb Bild manuell durch meine eigenen ersetzt, inkl. der kleinen Vorschaubilder und dann mal den Google Test drüber gejagt…Meldung zur Bildoptimierung weg + satte 12% Punkte mehr und grüner Haken.

Ob sich das jetzt lohnt hinsichtlich Ranking und besseren Nutzerverhalten, kann ich freilich nicht sagen. Aber das bei jedem Artikel zu machen ist der Aufwand zu groß. Da bräuchte ich echt was automatisches. Zumal ich ab und zu jemanden beauftrage zur Artikelpflege. Das wäre dann vermutlich nicht bezahlbar und würden die auch gar nicht hinbekommen mit FTP.

[QUOTE=vanilla thunder;185805]

Du kannst genau so gut einen einhändigen Metzger beauftragen, dir eine Mona Lisa zu malen. Er wird es irgendwie schon hinkriegen, aber ein professioneller Künstler wird es immer deutlich besser machen.
[/QUOTE]

Anderes Bsp. Das Bild liegt im Master Ordner mit 800x534 px und 29 KB. Dann wird es [U]runter skaliert [/U] auf 505x340 px und liegt im Generated Ordner mit 79 KB. Das ist ein Faktor von 2,5.

Da ist vom Ergebnis her ja noch eine Beleidigung für jeden Fleischer
Wundert mich, dass es keine Alternative gibt. Ich glaube dir das schon, du bist ja Profi.

Wenn ich daran denke, dass meine “Artikel Einsteller” gerne mal die unbearbeiten Herstellerbilder in hoher Auflösung hochladen…das mit dem Faktor 2,5:mad:

was für einen Hoster hast du?
gibts da ImageMagic?

Hier hat jemand das selbe Problem:


Aber die einzige Lösung war, GD Lib nicht zu benutzen,

ich hab mich mal bei kraken.io registriert und werde mir das am WE angucken.

[QUOTE=daytrader;185802]… legt es in den Ordner /out/pictures/generated/product/1/665_665_[B]100.[/B]… [/QUOTE]
stell mal max 80% Komprimierung ein - hift schon etwas!

[QUOTE=vanilla thunder;185805]… Du könntest höchstens etwas Feintuning für GD Lib zu versuchen.[/QUOTE]
Kann man es nicht eher einfacher für GD Lib machen - zB:

  • Artikelbilder auf der Detailseite 400 x 400 px
  • Zoombilder 800 x 800 px
  • hochgeladen wird 1200 x 1200 px
    Da GD Lib ja rein auf Pixelbasis arbeitet sollte es somit keine Qualitätsverluste geben!

Das war wirklich das Problem. Es steht zwar im Backend, dass die Datengröße bei Werten über 80 stark ansteigt, aber das Ausmaß ist sicher vielen unklar.

Ich habe es getestet. In meinem Beispiel wird aus dem 50 KB Masterbild im generated Ordner bei:

80% 16 kb
85% 23 kb
90% 32 kb
95% 47 kb
100% 123 kb

Ich habe habe die 100 naiverweise als 100% gedeutet. Ich bin also davon ausgegangen bei 100=100% original. Dass 100 = x2,5 bedeutet war mir nicht klar.

Irgendwo zwischen 95 und 100% kommt es zur tötlichen Überdosis. Sicher ist das auch bei jedem Bild etwas anders. Ich hatte in Generated Ordnern so tatsächlich Bilder mehreren MB. Das passiert, wenn man 100 eingestellt hat und die “Artikel Einsteller” eh schon riesige Herstellerbilder verwenden.

Naja wieder was gelernt.

ich habe mal Kraken getestet und direkt mit Photoshop und Oxid verglichen.
Das sind die Ergebnisse:

Originalbild 3276 x 1855 px - 1547 KB https://mb-dev.de/kraken/original.png

OXID
540 x 360 px - 122 KB https://mb-dev.de/kraken/540-ox.png
390 x 221 px - 71 KB https://mb-dev.de/kraken/390-ox.png
87 x 49 px - 9 KB https://mb-dev.de/kraken/87-ox.png

Photoshop CS6 - save for web
540 x 360 px - 104 KB https://mb-dev.de/kraken/540-ps.png
390 x 221 px - 69 KB https://mb-dev.de/kraken/390-ps.png
87 x 49 px - 11 KB https://mb-dev.de/kraken/87-ps.png

Kraken
540 x 360 px - 37 KB https://mb-dev.de/kraken/540-kr-lossy.png
390 x 221 px - 23 KB https://mb-dev.de/kraken/390-kr-lossy.png
87 x 49 px - 4 KB https://mb-dev.de/kraken/87-kr-lossy.png

Der Unterschied macht sich also bemerkbar.
Bei einer Kategorieansicht mit 12 Produkten würde es schon mal 800 KB - 1 MB ausmachen.

Eine andere grausame Entdeckung, die ich gemacht habe:
In Flow werden keine “Zoom Bilder” für das Produktbild-Popup genommen, sondern die hochgeladenen unskalierten Originalbilder. Wäre hier also das 1,5 MB große Originalbild.
In dem Demo Interface von Kraken konnte ich das Originalbild nicht hochladen (geht nur bis 1Mb), aber ein 1500 x 850 px - 487 KB Bild (mit Photoshop skaliert) wird auf 142 KB verkleinert.

Ich zeige das mal meinem Chef, vielleicht lässt er mich das Modul bauen.

@Marat,

das ist doch ein sehr guter Ansatz. den Du umsetzen solltest.
Ich bin gerade mit den selben Punkten beschäftigt die Du ansprichst:

  1. Bildqualität
    Bildqualität relativ zur Dateigrösse optimieren - ein Modul mit mehreren einstellbaren Parametern macht Sinn, da sich Oxid nicht darum kümmert.

  2. Zoom-Bilder aus Master-Ordner
    Das ist schon kurios: Im Flow-Theme wird das generierte Zoom-Bild (gemäss Bildgrössen-Einstellungen im Admin) nur für den Hover-Lupen-Zoom verwendet aber nicht für den Popup-Zoom. In Azure war es ja noch korrekt aber in Roxive fehlte der Popup-Zoom.