[erledigt] Imagecache um if-Abfrage erweiterbar?
![](https://www.drupalcenter.de/files/imagecache/upic_mini/pictures/picture-4041.png)
am 17.08.2009 - 17:52 Uhr in
Hallo
ich habe bei einem Projekt folgendes Problem mit Imagecache, welches ich einfach nicht gebacken bekomme. Für die Mitarbeiterseiten einer Website habe ich mit Views und ImageCache Mitarbeiterporträts erstellt, die eine fixe Bildgrösse (144x180 Pixel - Seitenverhältnis 4:5) haben. Imagecache soll alle Bilder auf diese fixe Grösse runter rechnen.
Nun finde ich einfach keine Presets in ImageCache, welche sowohl für schmalere Bilder (schmalere Bilder als 4:5 - also z.B. 3:4 oder 2:3 usw.) als auch für breitere Bilder (z.B. 5:6, 6:7, oder 7:8 usw.) Resultate liefern ohne oben und unten oder seitlich schwarze Balken zu produzieren.
Die folgende Einstellung erzeugt bei Bildern welche ein «breiteres» Seitenverhältnis als 4:5 haben, oben und unten schwarze Balken.
Skalierung: width: 144, height: , upscale: nein;
Crop: width: 144, height: 180, xoffset: center, yoffset: center;
Das Muster zeigt das gerenderte Resultat:
Die folgende Eisntellung erzeugt bei Bildern welche ein «schmaleres» Seitenverhältnis als 4:5 haben, rechts und links schwarze Balken.
Skalierung: width: , height: 180, upscale: nein;
Crop: width: 144, height: 180, xoffset: center, yoffset: center;
Das Muster zeigt das gerenderte Resultat:
Ich brauche also bei schmaleren Bildern eine andere Einstellung, als bei breiteren Bildern.
Die Lösung stelle ich mir in einer if-Abfrage vor: Falls das Verhältnis von Breite x Höhe des Bildes kleiner als 4:5 (oder Faktor 0.8) ist, dann verwende Preset 1, ansonsten Preset 2.
Hier noch die (auf 180 Pixel Höhe herunter gerechneten Ausgangsbilder)
Gibts für dieses Problem irgend einen Lösungsansatz? Hab ich da was entscheidendes Vergessen und man kann das durch eine sinnvolle Ergänzung von Presets erreichen, oder muss ich einfach damit leben und meinem Kunden (der natürlich von Bildbearbeitung keine Ahnung hat) sagen, hör mal, wenn du keine schwarzen Balken haben willst musst du dein Bild vor dem Hochladen schon auf ein bestimmtes Seitenverhälntis beschneiden welches z.B. grösser oder kleiner 4:5 ist, damit das ImageCache Preset entsprechend richtig funzt?
Ich hoffe ihr könnt meinen Beschreibungen folgen und habt eine Lösung für mein Problem.
Herzlichen Dank
Pierre
- Anmelden oder Registrieren um Kommentare zu schreiben
Scale and Crop
am 18.08.2009 - 12:18 Uhr
Dafür gibt es die Aktion Scale and Crop. Dabei wird das Bild zuerst so skaliert, das es so hoch oder so breit ist wie du willst, dabei aber nicht niedriger und nicht schmaler als du willst. Anschließend wird je nach gewünschtem Seitenverhältnis oben und unten oder an den Seiten abgeschnitten.
--
![XING](http://www.xing.com/img/buttons/6_de_btn.gif)
Das scheint ja wirklich zu
am 18.08.2009 - 13:33 Uhr
Das scheint ja wirklich zu sein, was ich brauche. Mich irritierte immer der Hilfetext beim Erstellen (ignoring aspect ratio) was für mich so klang, als dass das Bild verzogen würde. Wenn ich deine Erklärung lese tuts das aber nicht, sondern beschneidet es... eigentlich genau wie ich es will :-)
Sorry, ich hatte diese Option dermassen klar ausgeschlossen, dass ich die seit meinen ersten ImageCache versuchen immer aussen vor liess.
Dafür der Vollständigkeithalber noch das Resultat meiner Bilder mit der Scale and Crop Einstellung:
![](http://www.per-net.ch/garage/imagecache/preset3.jpg)
In diesem Post werden die einzelnen Funktionen auch nochmal beschrieben.