[TYPO3-german] Wasserzeichen als Copyright in Bild in Fluid einbinden

Michael Roskosch info at all4pages.com
Tue Aug 2 09:03:01 CEST 2016


Hallo Community,

ich möchte ein Wasserzeichen in ein Bild einbinden. Ich habe ein Script gefunden, mit dem man das mit Hilfe von TS und einem DCE machen kann. 
http://blog.teamgeist-medien.de/2015/03/wasserzeichen-mit-dem-file-abstraction-layer-fal-dce-files-und-gifbuilder.html

Ich möchte das aber etwas vereinfacht haben und ohne DCE.

Mein abgeändertes TS sieht nun so aus:

lib.watermark = COA
lib.watermark {
 
    #Das Basis Bild(FAL)
    #Vorsicht!!! Das FILES Object wird vor TYPO3 6.0 nicht unterstüzt
    10 = FILES 
    10 {
         
        #An dieser Stelle wird die Query gebildet
        #Wir suchen den Datensatz "image" in der Tabelle "tt_content" 
        #wo die uid des Datensatzes
        #der uid unseres Contentelements ("co") entspricht.
                 
        references {
            table = tt_content
            uid.field = co
            fieldName = image
        }
 
        # das Renderobject erstellt aus dem Datensatz 
        # die Informationen ein Objekt
             
        renderObj = COA
        renderObj {
        # Im renderObj des FILES-Objects befinden sich in file:current
        # die Metainformation des FAL welche wir nutzen wollen um das Wasserzeichenbild
        # zu erstellen. Jedoch gehen diese Informationen im GIFBUILDER im renderObj
        # verloren und können dort nicht angesprochen werden. Darum legen 
        # wir die uid als temporäre Varibale im Register an.    
        10 = LOAD_REGISTER
        10 {
           param = TEXT
           param.data = file:current:uid
        }
         
        #Ein Image wird angelegt
        20 = IMAGE
        20 {
                #Die Quelle des Bildes wird die Datei sein die uns der
                #GIFBUILDER generiert
                file = GIFBUILDER
                file {
                                   
                # Format und Größe definieren
                XY = 200,200
                format = png
             
                    #Das erste Element des GIFBUILDERS ist das Bild, welches wir
                    #im FAL generiert haben und dessen uid wir in das Register geladen haben
                    #10 = IMAGE
                    #10 {
                    #    file {
                    #        #Die Uid wird aus dem Register als 
                    #        #Quelle des Bildes angegeben
                    #        import.data = register:param
                    #        treatIdAsReference = 1
                    #    }
                    #}   

                    #Mein Wasserzeichen das als PNG in fileadmin liegt
                    10 = IMAGE
                    10 {
                        file = fileadmin/watermark.png
                        file.width = 121
                        file.height = 38
                        file.noScale = 1
                    }
                     
                    #Das zweite Element ist in diesem Fall ein Textoverlay
                    #Der Wert wird der value aus dem 
                    #Zukünftigen DCE Feld "copyright" welches im Fluid
                    #an dieses Typoscript-Object übergeben werden soll.
                 
                    #20 = TEXT
                    #20 {
                    #    text.data = field:copyright
                    #    fontSize = 15
                    #    fontColor= #FFFFFF
                    #    offset = 5,195
                    #}                       
                }
            }
        }   
    }           
}

Mein Wasserzeichenbild liegt in fileadmin/watermark.png

Jetzt will ich das ganze für ein Bild aktivieren in Fluid, aber ich komme mit dem Beispiel mit DCE nicht klar:

<f:for each="{dce:fal(field:'image', contentObject:contentObject)}" as="fileReference">
            <img src="<f:cObject typoscriptObjectPath="lib.watermark" data="{uid:fileReference.uid, copyright:fileReference.referenceProperties.copyright ,co:contentObject.uid }"" />
        </f:for>

kann man nicht den Teil so verändern, dass es mit dem hier verbunden wird?
<f:for each="{gleitbrett.bilder}" as="bild" iteration="iterator">
                        <f:if condition="{iterator.isFirst}">
                            <f:image class="product-list-image" src="{bild.originalResource.publicUrl}" alt="{bild.originalResource.alternative}" title="{bild.originalResource.title}" width="627" ></f:image>
                            <!--{bild.originalResource.description}-->
                            <img src="<f:cObject typoscriptObjectPath="lib.watermark" data="{uid:fileReference.uid, copyright:fileReference.referenceProperties.copyright ,co:contentObject.uid }"" />
                        </f:if>
                    </f:for>




More information about the TYPO3-german mailing list