Skip to content

[Serendipity] Qualität der Vorschaubilder verbessern

Vor einer ganzen Weile bin ich über einen alten Beitrag im s9y-Forum gestolpert, in dem beschrieben wird, wie man (vielleicht) die Qualität der Vorschaubilder mittels ImageMagick verbessern kann.

Dazu muss man in der Datei /include/functions_images.inc.php etwa bei Zeile 663 folgende Zeile

$cmd     = escapeshellcmd($serendipity['convert']) . ' -antialias -resize '. serendipity_escapeshellarg($newSize) .' '. serendipity_escapeshellarg($infile) .' '. serendipity_escapeshellarg($outfile);

gegen diese tauschen

$cmd     = escapeshellcmd($serendipity['convert']) . ' -antialias -resize '. serendipity_escapeshellarg($newSize) .' -modulate 105,140 -unsharp 0.5x0.5+1.0 -quality 75 '. serendipity_escapeshellarg($infile) .' '. serendipity_escapeshellarg($outfile);

Im Endeffekt werden Helligkeit und Kontrast etwas erhöht, eine Unschärfe-Maskierung darüber gelegt und die JPG-Qualität mit 75% festgelegt (standardmäßig wird m. W. die Qualität des Originalbilds übernommen). Wer es genauer wissen will, kann ja einfach mal die Hilfe von ImageMagick durchlesen. smile

Ob die Vorschaubilder im Ergebnis wirklich besser sind, muss jeder für sich selbst entscheiden. wink

Eigentlich würde ich auch gerne mal einen Feldversuch starten und alle Vorschaubilder quadratisch zuschneiden lassen (damit z. B. die blöden versetzten Umbrüche nicht immer sind), aber darüber muss ich mir erstmal noch Gedanken machen.

ImageMagick in Serendipity nutzen (all-inkl.com)

Falls ich mal wieder in die Verlegenheit komme…

Ich bin ja seit einiger Zeit wieder bei all-inkl.com mit meinen Domains. An sich eine schöne Sache und der Support reagiert auch schnell. Nur manchmal vermisste ich dann doch meinen Shell-Zugang und die Bequemlichkeit eines Server, auf dem einen der Admin alles installiert was man will wink

Warum? Nun, im Falle von ImageMagick hat man bei all-inkl einfach nicht genug Rechte, das Programm ausführen zu lassen, wenn man es in Serendipity z. B. zum erstellen der Vorschaubilder verwenden möchte.

Man kann das Problem aber relativ leicht lösen, wenn man weiß wie…

Zu aller erst einmal muss natürlich ImageMagick in der Konfiguration unter „Bildkonvertierung” aktiviert werden. Als Pfad muss man bei all-inkl /usr/bin/convert angeben. Wie das bei anderen Providern aussieht, kann ich leider nicht sagen. Am besten einfach mal fragen.

Zu guter Letzt muss PHP-Dateien die Möglichkeit geben Shell-Befehle auszuführen. Standardmäßig ist dies nämlich verboten. Dazu muss man in der Datei .htaccess im Hauptverzeichnis von Serendipity folgende Zeile hinzufügen

AddHandler php-fastcgi .php .php4

Testen kann man dann die Sache einfach, indem man die Vorschaubilder erneuern lässt, das sollte dann ohne Fehlermeldungen durchlaufen.

…und falls jemanden interessiert, warum man das machen sollte: Die Methode mit GDLib funktioniert bei mir nicht mehr, da man standardmäßig 65MB PHP-Speicher zur Verfügung hat und das Vorschau-Script mehr bräuchte. Entsprechend kann es mit einer Fehlermeldung nicht ausgeführt werden.