以下是我遵循的步骤:
在我的composer.json中添加了以下内容:
"require": { "imagine/Imagine": ">=0.2.8", "liip/imagine-bundle": "*@dev", .... }
在命令行运行以下命令:
composer update Installing imagine/imagine (v0.4.0) Installing liip/imagine-bundle (dev-master f7d5e4d)
Composer 更新供应商文件夹内的目录结构如下所示:
然后更新vendor/composer/autoload_namespaces.php
'Imagine' => $vendorDir .'/imagine/Imagine/lib/', 'Liip\\ImagineBundle'=>$vendorDir . '/liip/imagine-bundle/',
注册 bundle :
new Liip\ImagineBundle\LiipImagineBundle(),
路由:
# app/config/routing.yml _imagine: resource: . type: imagine
config.yml
# app/config/config.yml liip_imagine: filter_sets: my_thumb: quality: 75 filters: thumbnail: { size: [120, 90], mode: outbound }
添加到 Twig 模板文件:
<img src="{{ asset('bundles/acmedemo/images/1.jpg') | imagine_filter('my_thumb') }}" />
打开 localhost/symfony/web/app_dev.php/demo/hello/test
没有生成缩略图。查看源代码时,我发现了这一行:
<img src="/symfony/web/app_dev.php/media/cache/my_thumb/symfony/web/bundles/acmedemo/images/1.jpg">
我错过了什么?有人可以帮我解决这个问题吗?我在 Windows XP 上使用默认设置的 xampp 1.8
最佳答案
当我更换时
<img src="{{ asset('bundles/acmedemo/images/1.jpg') | imagine_filter('my_thumb') }}" />
与
<img src="{{ 'bundles/acmedemo/images/1.jpg' | imagine_filter('my_thumb') }}" />
我得到了缩略图。我删除了 twig 的 asset() 助手,它可以工作,但不知道它是如何工作的。
关于symfony - 在 symfony 2.1 中安装并运行 LiipImagineBundle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14107488/