daniel_philippi
Occasional Collector

Auflösung bei Bildern funktioniert nicht wie gewünscht

Hallo Zusammen.


Über die Projekteinstellungen kann man Auflösungen für Bilder bestimmen.


Beispiel:

Für einen Teaser brauche ich eine Bildgröße von 100x50 Pixel, das Bild darf aber nicht verzerrt werden, daher habe ich eingestellt, dass das Seitenverhältnis beibehalten werden soll. Somit muss man bei Bildern, deren Seitenverhältnis nicht 2:1 ist die Auflösung bestimmen. Um die Notwendigkeit eines Ausschnittes dem Radakteur kenntlich zu machen, soll das Bild nicht verzerrt werden, da es so stärker aufällt dass etwas nicht stimmt.


Problem ist, dass bei dem definierten Ausschnitt das Seitenverhältnis des Bildes übernommen wird.

Beispiel:

Möchte ich bei einem Bild mit der Größe 200x50 Pixel den Ausschnitt für 100x50 Pixel bestimmen, bekomme ich als Resultat ein 100x25 Pixel großen Ausschnitt. Obwohl er bei der Bestimmung des Ausschnitts die Zielgröße korrekt anzeigt.


Kann mir hier jemand helfen?


Viele Grüße




5 Replies
hoebbel
Crownpeak employee

Hallo Herr Philippi,

wie gerade bereits in dem entsprechenden Helpdesk-Ticket geschrieben:

Das, was Sie als Problem schildern, entspricht eigentlich der Definition der Auflösung, die Sie definiert haben (Seitenverhältnis beibehalten bedeutet ja, dass das Seitenverhältnis des Originalbildes beibehalten werden soll.

Einen Feature Request, der das von Ihnen beschrieben Verhalten wünscht, gibt es bereits unter der internen ID 61359.

Viele Grüsse aus Dortmund,

  Holger Höbbel

0 Kudos

Hallo Herr Höbbel.

Vielen Dank für die Antwort.

Ich gebe Ihnen recht, wenn es darum geht dass die Auflösungen automatisch erzeugt werden. Aber wenn ich eine Auflösung von Hand erstelle möchte ich dass meine Auswahl übernommen wird und nicht ein Teil meiner Auflösung bzw. sollte dies wenn schon beim Erstellen der Auswahl ersichtlich sein.

Trotzdem habe ich nun das Problem immer noch Smiley Wink, haben sie mir einen Workaround wie ich das Problem lösen kann?

Vorgaben:

  • der Redakteur soll erkennen wenn ein Bild nicht das richtige Seitenverhältnis hat (dabei soll es aber nicht verzerrt werden)
  • der Redakteur soll dann zu dem Bild wechseln und die passende Auflösung erstellen

Viele Grüße,

Daniel Philippi

0 Kudos

Hallo Herr Philippi,

daniel.philippi schrieb:

Vielen Dank für die Antwort.

Ich gebe Ihnen recht, wenn es darum geht dass die Auflösungen automatisch erzeugt werden. Aber wenn ich eine Auflösung von Hand erstelle möchte ich dass meine Auswahl übernommen wird und nicht ein Teil meiner Auflösung bzw. sollte dies wenn schon beim Erstellen der Auswahl ersichtlich sein.

Trotzdem habe ich nun das Problem immer noch Smiley Wink, haben sie mir einen Workaround wie ich das Problem lösen kann?

Vorgaben:

  • der Redakteur soll erkennen wenn ein Bild nicht das richtige Seitenverhältnis hat (dabei soll es aber nicht verzerrt werden)
  • der Redakteur soll dann zu dem Bild wechseln und die passende Auflösung erstellen

Wie wäre es hiermit:

Sie definieren eine Auflösung, die ein festes Seitenverhältnis hat und eine Auflösung in der selben Größe mit Seitenverhältnis beibehalten. Im Templatecode prüfen Sei, ob für die feste Auflösung ein Bild zugeschnitten wurde. Wenn ja, so wird dieses amgezeigt. Wenn nein, so wird das Bild in der Auflösung mit dem Seitenverhältnis beibehalten angezeigt. {vielleicht zusätzlich mit einem häßlichen Rahmen in der Vorschau?}

Der Templatecode würde so aussehen [Annahme I: Das Bild stammt aus der Eingabekomponente CMS_INPUT_PICTURE mit dem name="st_picture", Annahme II: Die Auflösung mit dem festen Seitenverhältnis heißt "festesseitenverhaeltnis"

$CMS_SET(res,#global.project.getResolutionByName("festesseitenverhaeltnis"))$

$CMS_VALUE(res)$<br>

$CMS_IF(!st_picture.isEmpty)$$CMS_IF(st_picture.picture.getPictureResolution(res).getCropData() != null)$

Code für Bild ist nicht zugeschnitten

$CMS_ELSE$

Code für Bild ist zugeschnitten

$CMS_END_IF$

$CMS_ELSE$

Code für kein Bild wurde ausgewählt

$CMS_END_IF$

Viele Grüsse aus Dortmund,

  Holger Höbbel

Rechtschreibfehler korrigiert

Hallo,

ein Kunde von uns ist auch auf dieses unerwartete Verhalten beim Zuschneiden gestoßen und wir haben deshalb genau wie von Herrn Höbbel vorgeschlagen noch eine manuelle Auflösung angelegt.

Im Templatecode prüfen wir allerdings nicht ob Cropdaten vom Zuschneiden (getCropData) vorhanden sind sondern ob für diese Auflösung eine Checksumme (getCrc) gespeichert wurde. Denn damit berücksichtigen wir auch hochgeladene Bilder für genau diese Auflösung.

Unser Template Code:

$CMS_IF(ref(set_st_galleryElement).picture.getPictureResolution(#global.project.getResolutionByName("IMG_FIX_367x206_manuell")).getCrc() != -1)$
     $CMS_SET(set_st_imageRes,"IMG_FIX_367x206_manuell")$
$CMS_ELSE$
     $CMS_SET(set_st_imageRes,"IMG_FIX_367x206")$
     $CMS_IF(ref(set_st_galleryElement).height < ref(set_st_galleryElement,resolution:set_st_imageRes).height && ref(set_st_galleryElement).width < ref(set_st_galleryElement,resolution:set_st_imageRes).width)$
          $CMS_SET(set_st_imageRes,"ORIGNAL")$
     $CMS_END_IF$
$CMS_END_IF$

Bei der automatisch generierten Auflösung prüfen wir noch ob das Bild vergrößert wurde und verwenden dann die Original-Auflösung.

getCrc() != -1 ergibt immer true, wenn eine Auflösung zugeschnitten oder hochgeladen wurde.

Grüße

Christian Vogel

Perfekt... :smileygrin:

0 Kudos