TYPO3 GIFBUILDER 图片来自 FLUID

TYPO3 GIFBUILDER with image from FLUID

我想使用 GIFBUILDER 制作带有叠加层的图像。因此,图像应通过 FLUID 传送。

这是我目前拥有的:

流体

<f:for each="{product.images}" as="image">
   <f:cObject typoscriptObjectPath="lib.overlay" data="{image: image.uid}" />
</f:for>

打字稿

lib.overlay = IMAGE
lib.overlay {
    file = GIFBUILDER
    file {
        XY = 300,500
        format = jpg
        quality = 80
        10 = IMAGE
        10 {
            file.import = {field:image}
            file.import.insertData = 1
            file.import.treatReferenceAsId = 1
        }
        20 = TEXT
        20 {
            text = Copyright
            fontColor= #dddddd
            fontSize = 30
            offset = 100,100
            align = left
            antiAlias = 1
        }
    }
}

目前,我只得到一个带有版权标签的白色背景。但是,如果我做类似

的事情
10 = IMAGE
10.file = fileadmin/path/to/file

一切正常。

所以我的问题是:如何将图像从 FLUID 正确传递到 TypoScript?

除此之外,我如何通过 FLUID 从 Contentelement 传递一个值以使叠加文本也动态化?

致以最诚挚的问候并提前致谢

更新:

{image} 的输出(一张图像):

替换

10 = IMAGE
10 {
    file.import = {field:image}
    file.import.insertData = 1
    file.import.treatReferenceAsId = 1
}

10 = IMAGE
10 {
    file.import.field = image
    file.treatIdAsReference = 1
}

treatReferenceAsId 应该是 treatIdAsReference。它也是 file 的 属性,而不是 file.import。我不确定为什么 file.import = {field:image}insertData = 1 不起作用,但 file.import.field = image 起作用。反正它更干净,这就是我尝试它的原因。

您可能还想为图像添加宽度和高度或 maxW 和 maxH,除非您 100% 确定它们始终为 300x500 像素。