2016-11-15 29 views
2

是否有可能獲得f:imagev:media.image或類似的可用viewhelper執行一些經典的TYPO3 imagemagick特技,如將圖像轉換爲灰度?流體圖像viewhelper中的Imagemagick/Graphicsmagick命令?

10 = IMAGE 
10.file.params = -type Grayscale 

或者我會用自己的VH延伸f:image

如果我不得不這樣做:我想這是將這些參數傳遞給IM/GM的正確方法,對吧?我在哪裏必須看看如何正確完成?

回答

1

看到這個封閉的問題https://forge.typo3.org/issues/41347, 這個功能已經存在補丁但是被遺棄了(見Christian Kuhn評論爲什麼 - >https://review.typo3.org/#/c/21162/),所以現在你需要一個自己的VH。

編輯:

如果你想有圖像,你可以使用CSS屬性的今天,只需使用簡單的CSS過濾器,具有相當不錯的瀏覽器特效支持當今http://caniuse.com/#feat=css-filters

例子:

+0

並非在所有情況下,CSS過濾器是不夠的:想想你的客戶端的「灰度「圖片突然以其原始顏色在谷歌圖片上出現 – Urs

+0

拒絕補丁的觀點似乎很大程度上基於」imagemagick糟糕「作爲出發點。這可能是事實,但這些參數也應該從TS中刪除。但我不想咆哮,沒關係,可能是最好的。因此,不是使用f:image,我可以在TS中將圖像生成爲cObj,然後使用f:cObj將其插入流體模板中,對不對?這是完全可行的!感謝您的回答 – Urs

+1

f:cObj可能會訣竅:) – rafx

1

我用Typo腳本配置的圖像,並呼籲他們在流體:

<f:cObject typoscriptObjectPath="lib.fluidResponsiveImages" data="{image.uid}"></f:cObject> 

Typo腳本的例子:

# 
# TypoScript Setup: lib.fluidResponsiveImages 
# Load after tt_content.t3s 
# 
lib.fluidResponsiveImages = IMAGE 
lib.fluidResponsiveImages { 
    file { 
     import.current = 1 
     treatIdAsReference = 1 
     width = 932 
    } 
    sourceCollection < tt_content.image.20.1.sourceCollection 
    layoutKey < tt_content.image.20.1.layoutKey 
    layout < tt_content.image.20.1.layout 
    params < tt_content.image.20.1.params 
} 
+0

您可以發佈一個TS的例子,它如何接收圖像uid? – Urs

+0

我用TypoScript示例擴展我的答案。 –

+0

啊,很好,所以當前從f:cObject獲取值,謝謝 – Urs