Modul :: ImageResizeHTML

Alles rund um Module und Plugins in CONTENIDO 4.9.
Antworten
matt.loker
Beiträge: 203
Registriert: Mo 7. Mai 2007, 09:05
Kontaktdaten:

Modul :: ImageResizeHTML

Beitrag von matt.loker »

Hallo Zusammen,
mich würde mal interessieren, wie Ihr das Problem löst, wenn große Bilder hochgeladen und dann im Editor verkleinert werden. Im Prinzip werden diese im Editor ja nur skaliert und nicht wirklich verkleinert. Kummer hatte dazu mal ein klasse Modul geschrieben welches dieses Problem eigentlich sehr elegant gelöst hatte, aber dieses gibt es nicht für 4.9.
http://forum.contenido.org/viewtopic.ph ... 06#p106406
Dazu eine Frage, würde dieses Modul auch in der 4.9 funktioniert?

Viele Grüße
Matt
Faar
Beiträge: 1951
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Hat sich bedankt: 15 Mal
Kontaktdaten:

Re: Modul :: ImageResizeHTML

Beitrag von Faar »

Das ist eigentlich ein Problem, das 4fb lösen sollte, damit es solide ist.
Es macht selten einen Sinn, riesige Megapixel Fotos in ein normales CMS hoch zu laden und den Webspace damit zu zu müllen.
Das passiert aber oft z.B. bei bestimmten Usern, die Bilder höchstens nur innerhalb Word bearbeiten können, weil sie kein anderes "Grafikprogramm" kennen. :evil:
Folglich müsste der Ansatz gleich beim Upload beginnen.
Per vom Admin festgelegten Werten in den Mandanten-Einstellungen könnte dann das Bild nach dem Upload gleich skaliert werden, bevor es gespeichert wird.
Und das ist Sache von 4fb, weil es den Kern des Programmes betrifft.

A. Kummer sein Modul greift hinten an, dort wo das Bild schon im Uploadbereich ist.
So wie ich verstanden habe, greift es irgendwo zwischen Bildeingabe und Ausgabe auf den Browser ein.
Nun, das wirft einige Fragen zum Cache-Verhalten auf, als auch zu den Ressourcen.
Wie werden die Thumbnails gecashed und wie geht Contenido damit um?
Wo steckt das Originalbild?
Wird jedesmal beim Browseraufruf ein Bild skaliert oder liegen die Bilder irgendwo rum?
Dass man laut Beschreibung ein Thumbnail-Verzeichnis erstellen soll, legt nahe, dass die Thumbnails erzeugt und dort abgelegt werden.
In welcher Tabelle stehen dann die Beziehungen zu dem Thumbnail und wie werden die Metadaten des Originalbildes übermittelt?
Wird dadurch mehr Datenbank-Aktion und langsamerer Seitenaufbau erzeugt?

So wie ich Kummer kenne, hat er sich durchaus Gedanken gemacht aber der Quellcode ist gar nicht mehr da, die Links alle tot.

Ein Problem hat er nicht damit lösen können:
"übrigens: wenn die bilder zu gross sind (mehrere MB), dann wird php schlapp machen."

Heute haben wir Kameras, die locker 20 oder 30 Megapixel große Bilder machen.
Lass mal so ein jpg Bild gut 20 bis 40 MB groß sein, so ist es im Rechenspeicher ganz erheblich größer, weil unkomprimiert. Spätestens dann sagt der Server des standard Providers, "ohne mich".
Das heißt, die Skalierung so großer Bilder wird gar nicht möglich sein, weil die Massenhoster-Server gar nicht so viel RAM für diesen Prozess bereit stellen.
(Den Effekt konnten wir öfters z.B. bei 1&1 beobachten, aber bei viel viel kleineren Bildern schon)

Nicht anders wird es bei dem Modul von Kummer gehen, wenn große Bilder hochgeladen worden sind und die zur Laufzeit (?) skaliert werden sollen.
So Späße gab und gibt es auch bei Typo3 zu beobachten, das ebenfalls Bilder skaliert und im Bildercache ablegt.
Löscht man dann mal "versehentlich" diesen Cache, ist die Hölle ausgebrochen. Alle Bilder jeder Seite müssen neu skaliert werden, dümmstenfalls sogar neu eingebunden (was auch schon mal vor kam).
Meistens bleibt dann die Seite einfach stehen und nichts rührt sich mehr. Aus die Maus.

Um das zu vermeiden, verringert man einfacherweise die maximale Dateigröße, die hochgeladen werden kann. Aber das beträfe dann ja auch PDF und anderes für den Download, was durchaus groß sein dürfte.
Folglicherweise hilft es nur, vor dem Upload die Datei als Grafikdatei zu erkennen und Maße des Bildes (Länge mal Breit in Pixel).
Was da dann größer ist als in den Mandanteneinstellungen angegeben, kann erst gar nicht hochgeladen werden.
Das geht aber nur über den Upload-Mechanismus, den wiederum nur 4fb beherrscht. :wink:

Um den Randmüll bei manchen Fotos gleich weg zu lassen, gibt es Programm wie z.B. dieses hier: bilder-zuschneiden-direkt-im-browser
Das spart dann zusätzlich noch Ressourcen.
Da hatte ich hier schon früher mal angefragt, ob man sowas nicht in die Medienverwaltung mit einbauen könnte.

Und um auf die Frage zu antworten, sollte der Quellcode noch auffindbar sein: Ob das Modul in 4.9 funktioniert, hängt nicht zuletzt von den Umständen beim Server und dem Verstand des Uploaders zusammen.
Dann kann man aber gleich jemanden nehmen, der sich zumindest so weit mit Bildern auskennt, dass er sie zuschneidet und in die richtige Größe skaliert, bevor er sie auf den Server hoch lädt.
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.
matt.loker
Beiträge: 203
Registriert: Mo 7. Mai 2007, 09:05
Kontaktdaten:

Re: Modul :: ImageResizeHTML

Beitrag von matt.loker »

Ich hab den Code noch. Ich hänge ihn mal dran.

Das Bilder mit zu viel MB schon beim Upload reduziert werden, dafür habe ich hier im Forum für die 4.9 bereits ein Plugin gesehen.
Wie genau das Modul von Kummer arbeitet weiß ich gerade gar nicht aber alles ist besser als Bilder in der Ausgabe nur zu skalieren ansatt Sie physisch enstsprechend zu verkleinern.

Viele Grüße
Dateianhänge
AtqImageResizeHTML.zip
AtqImageResizeHTML
(3.47 KiB) 158-mal heruntergeladen
Faar
Beiträge: 1951
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Hat sich bedankt: 15 Mal
Kontaktdaten:

Re: Modul :: ImageResizeHTML

Beitrag von Faar »

Auf den ersten Blick sieht es gut aus, typisch Kummer programmierte er sehr unabhängig vom CMS eigenen Code.
Nur bei den Datenbankverbindung müsste man etwas anpassen und den Präfix (con_upl) der Contenido-Variablen überlassen.
Der Rest ist eigentlich unabhängiger PHP-Code.
Müsste man testen :roll:
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.
Antworten