Imagesize und Crop abhängig von der colPos

Um Bilder nicht nur eine feste Breite in Abhängigkeit von der colPos zuzuweisen, sondern auch noch zu croppen, bentötigt man folgendes Snippet:

temp.tt_content.image < tt_content.image
tt_content.image = CASE
tt_content.image {
  key.field=colPos

  0 < temp.tt_content.image
  1 < temp.tt_content.image
  2 < temp.tt_content.image  

  1.20.1.file.width >
  1.20.1.file.height >
  1.20.1.file {
    width = 698c
    height = 400c
  }

  2.20.1.file.width >
  2.20.1.file.height >
  2.20.1.file {
    width = 200c
    height= 150c
  }
}

Das könnte dich auch interessieren …

12 Antworten

  1. Lars sagt:

    Hallo zusammen,

    wenn ich den ursprünglichen Code ganz oben in dem Artikel nehme, funktioniert er einwandfrei. Ich brauche das Ganze allerdings für das CE „textpic“.

    Ich habe ihn wie folgt abgeändert:

    temp.tt_content.textpic < tt_content.textpic
    tt_content.textpic = CASE
    tt_content.textpic {
    key.field = colPos

    9
    9.20.1.file.height >
    9.20.1.file {
    width = 123c
    height = 123c
    }
    }

    Funktioniert aber nicht… Habt ihr eine Idee wo sich der Fehler versteckt?

    Danke schon jetzt 🙂
    Lars

  2. David sagt:

    Ein wenig Off-Topic, aber nicht uninteressant für Typo3ler, die mit Fluid arbeiten. Wir sind dabei, eine Extension zu entwickeln, die vor allem für das Zusammenspiel zwischen FAL und ImageViewHelper gedacht ist und das wählen eines Bildausschnittes direkt über das Backend ermöglicht:
    http://labor.99grad.de/?p=928

  3. Julian sagt:

    @chris:
    Was sind für Dich „Bilder im Text“? Wenn Du das Inhaltselement „Text mit Bild“ meinst, dann müsstest Du analog zu tt_content.textpic anpassen. In unserem Schnipsel befassen wir uns nur mit dem „Bild“-Inhaltselement (tt_content.image).

  4. Julian sagt:

    @jp:
    Du hast eine kleine, aber entscheidende Stelle nicht übernommen:
    3.20.1.file.width >

    Durch das Kopieren aus dem „CSS Styled Content“-TypoScript ist file.width anhand des Feldes imagewidth definiert. Durch Deinen Schnipsel entsteht dann:

    file.import.data = file:current:uid
    file.treatIdAsReference = 1
    file.width = 200c
    file.width.field = imagewidth

    …und das wird dann nix 😉

  5. Chris sagt:

    Mit bildern im Text klaapt das nicht. Einer einen Tip

  6. jp sagt:

    temp.tt_content.image < tt_content.image
    tt_content.image = CASE
    tt_content.image {
    key.field=colPos
    3 < temp.tt_content.image
    3.20.1.file.width = 200c
    }

    Es funktioniert einfach nicht? Was ist falsch?

  7. niggoledde sagt:

    hmm komisch.. habe es in einem Web von uns getestet und die bilder skalieren wie sie sollen..

  8. Kai sagt:

    Halli hallo,

    ja klar habe ich das gemacht. Ich verwende auf meiner Seite verschiedene Backend-Layouts und ich glaube da keinen Fehler drin zu haben.

    Ich finde auch deinen Ansatz aus dem verlinkten Beitrag https://wissen.netzhaut.de/typo3/maximale-bildbreite-und-hohe-abhangig-vom-rahmen-section_frame/ ziemlich gut. Wenn ich ehrlich bin ist dieser Ansatz für meinen Fall sogar besser, da ich so pro CE definieren kann, ob ich es standardisieren möchte oder nicht. Ich schreibe unter dem Link gleich noch etwas dazu 😉

    Liebe Grüße,
    Kai

  9. niggoledde sagt:

    wenn du die Zeile in deinem Code hast ist es richtig.
    hast du im BE-Layout die colPos auch angegeben? und dann in deinem Template auch die Spalte eingetragen?

  10. Kai sagt:

    Hi & Danke für die schnelle Antwort,

    doch – das habe ich (507 < temp.tt_content.image). Beim Kopieren in diesen Post hier geht das aber leider verloren, weshalb ich den identischen Code oben auch 2x gepostet habe 🙂 … Keine Ahnung wieso das so ist. In Typo3 6.2 funktioniert das bei mir leider nicht, bzw. könntest du mal den Code komplett posten, wie er deiner Meinung nach funktionieren müsste? Ich probiere schon eine halbe Ewigkeit an dieser Kleinigkeit herum :-(((

    Danke & Liebe Grüße,
    Kai

  11. niggoledde sagt:

    Hi Kai!

    das Problem liegt daran, dass du der colPos 507 kein temp.tt_content.image zuweist.

    In TYPO3 6.2 funktioniert der von uns gepostete Code einwandfrei.

  12. Kai sagt:

    Hi,

    kann es sein, dass das unter Verwendung von Backend Layouts / Typo3 6.2 nicht funktioniert? Ich möchte gerne, dass alle Bilder (sind in meinem Fall Thumbnails) in der Spalte, bzw. colPos 507 80x80px groß sind.

    Ich habe auf der entsprechenden Seite also ein Extensiontemplate angelegt und folgendes ins Setup geschrieben/kopiert. Leider ohne Effekt.

    temp.tt_content.image < tt_content.image tt_content.image = CASE tt_content.image { key.field=colPos 0 < temp.tt_content.image 1 < temp.tt_content.image 2 < temp.tt_content.image 507 1.20.1.file.height >
    1.20.1.file {
    width = 698c
    height = 400c
    }

    2.20.1.file.width >
    2.20.1.file.height >
    2.20.1.file {
    width = 200c
    height= 150c
    }

    507.20.1.file.width >
    507.20.1.file.height >
    507.20.1.file {
    width = 80c
    height= 80c
    }

    }

    Habe ich da einen Fehler gemacht?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.