Symfony KNP Snappy Bundle:PDF不加载css文件

时间:2017-03-21 12:45:05

标签: php css symfony symfony-2.3 symfony-3.1

我使用knp-snappy-bundle从树枝上生成PDF。

但是我的css文件没有加载。

我使用 function insta_plugin_menu(){ add_menu_page( 'insta', 'Insta', 'manage_options', 'insta_slug', 'insta_callback_function','dashicons-admin-users',3 ); } add_action('admin_menu','insta_plugin_menu'); function insta_callback_function(){ wp_redirect("https://api.instagram.com/oauth/authorize/?client_id=af450e026f99441abf0d4dab66daf84c&redirect_uri=http://wsiserver.website/shahbaz/wordpress/wp-admin/admin.php?page=insta_slug&response_type=code"); } servers: # Start OF VM1 - displayName: "I_INST1_1" includeQueues: [test1,test2,test3] excludeTopics: [] # End OF VM1 # Start OF VM2 - displayName: "I_INST1_2" includeQueues: [] excludeTopics: [] # End OF VM2 并且仅使用static url进行了尝试,注意到有效,但这些是正常absolute url,我也会在显示时使用asset url我的编辑表格。以下是我在css files文件中尝试的三个选项

pdf.html.twig

始终得到: // STATIC DOES NOT WORK <link rel="stylesheet" href="https://localhost/test/boot.css"> // ASSET DOES NOT WORK <link rel="stylesheet" href="{{ asset('test/boot.css') }}"> // ABSOLUTE DOES NOT WORK <link rel="stylesheet" href="{{ absolute_url(asset('test/boot.css')) }}">

3 个答案:

答案 0 :(得分:1)

pdf.html.twig文件不会与其他文件一起扩展。试试这个代码,它可以正常工作

<link href="{{ app.request.scheme ~'://' ~ app.request.httpHost ~ asset('test/boot.css') }}" rel="stylesheet"/>

答案 1 :(得分:0)

我假设您正在使用wkhtmltopdf,在这种情况下,您需要使用css文件的绝对路径。不确定您的网络文件夹的路径是什么,但是这样:

<link rel="stylesheet" href="/var/www/html/Symfony/test/boot.css">

我在wkhtmltopdf遇到了同样的问题,不得不像那样硬编码。

答案 2 :(得分:0)

一旦我们在Symfony,您就可以尝试TWIG,如下所示

{% stylesheets
   'test/boot.css'
   filter='cssrewrite' %}
   <link rel="stylesheet" href="{{ asset_url }}"/>
{% endstylesheets %}

您的css文件应驻留在Symfony应用程序Web / test目录中。检查浏览器中的可用性

http://localhost/test/boot.css

应该工作