是否有可能將svg文件中的代碼直接插入樹枝模板文件中?樹枝:包含來自SVG文件的外部代碼
喜歡的東西:
{% include 'my.svg' %}
,這將導致:
<svg viewbox=".... />
是否有可能將svg文件中的代碼直接插入樹枝模板文件中?樹枝:包含來自SVG文件的外部代碼
喜歡的東西:
{% include 'my.svg' %}
,這將導致:
<svg viewbox=".... />
您可以在Drupal8主題通過設置一個新的變量做:
function theme_preprocess_page(&$variables) {
$svg = file_get_contents(drupal_get_path('theme', 'socialbase') . '/images/icons.svg');
$variables['svg_sprite'] = t('svg', array('svg' => $svg));
}
在您的樹枝文件你可以打印它:
{{ svg_sprite }}
有一個類似的問題,最終將我的svgs重命名爲.twig文件。這樣做的
{% include 'my.svg.twig' %}
是的,這裏一樣;) –
方式一:
{{ source('my.svg') }}
在這裏閱讀更多: https://www.theodo.fr/blog/2017/01/integrating-and-interacting-with-svg-image-files-using-twig/
對於我來說,它的工作:
{% include '/images/my.svg' %}
只是快速的更新,如果你正在使用Drupal 8,因爲在P的代碼先前的回答對我無效。這是我做的:
function theme_preprocess_page(&$variables) {
$svg = file_get_contents(drupal_get_path('theme', 'theme_name') . '/images/my.svg');
$variables['some_svg'] = $svg));
}
而在樹枝文件I outputed這樣的:
{{ some_svg|raw }}
在主題的情況下,它使用{{ directory }}
變量保存到主題路徑不錯的選擇。
{{ source(directory ~ '/images/my.svg') }}
如果你把那個文件放在你的模板文件夾中,那麼肯定是 – DarkBee