2013-07-18 55 views
4

我有一個形象,像這樣:嫩枝讀取圖像高度/寬度屬性

{% image output='/images/foo.jpg' '@MyBundle/Resources/public/images/bar.jpg' %} 
    <img src="{{ asset(asset_url) }}" alt="Something"> 
{% endimage %} 

現在我想獲得的圖像尺寸,並添加寬度和高度屬性,如

{% image output='/images/foo.jpg' '@MyBundle/Resources/public/images/bar.jpg' %} 
    <img src="{{ asset(asset_url) }}" alt="Something" width="{{ asset(asset_width) }}" height="{{ asset(asset_height) }}"> 
{% endimage %} 

這是可能的?

問候

回答

-2

在您的控制器,做

return $this->render(
    'assetic' => array(
     'vars' => array(
      'height' => '300px', 
      'width' => '400px' 
     ) 
); 

然後在你的樹枝模板

{% image vars=['height', 'width'] output='/images/foo.jpg?{height}x{width}' '@MyBundle/Resources/public/images/bar.jpg' %} 
    <img src="{{ asset(asset_url) }}" alt="Something" height="{{assetic.vars.height}}" width="{{assetic.vars.width}}"> 
{% endimage %} 

唯一的限制/問題,這種方法是,你需要包括動態輸出url中的變量(高度和寬度)。

不要讓我們知道如何去

問候,

+0

感謝您的答覆,我首先得到 '[ErrorException] 注意:未定義指數:身高/ mypath中/供應商/ kriswallsmith/assetic/src/Assetic/Util/VarUtils.php line 71' 但是我認爲這並不是我正在尋找的東西。通過你的方法,我可以設置一個特定的寬度和高度 - 我正在尋找的是_getting_圖像的寬度和高度,以將它傳遞給瀏覽器,因此在加載圖像時不會重新渲染頁面。 –

+0

我很抱歉,我沒有時間回覆。 。 。你還在尋找解決方案嗎? –

+0

當然,我仍然會很高興有一個;-) –