3

我无法使用来自以下来源的 wicked_pdf/wkhtmltopdf 在 Ruby 中生成 pdf 文档:

respond_to do |format|
  format.js
  format.pdf {
    render :pdf => pdf_filename(@invoice,false),
        :template => "invoices/generate",
        :layout => "document",
        :show_as_html => params[:debug]
  }
end

--

  <style type='text/css'>/*!
  * Bootstrap v2.1.1
  ...
  */
    .clearfix{*zoom:1;}.clearfix:before,.clearfix:after{display:table;content:"";line-height:0;}
    .clearfix:after{clear:both;}
   /*.... and so on twitter bootstrap css is definitely included here ..... */
  </style>
</head>
<body>
<div class="container">

  <div class="row">
   <div id="left" class="span6">
     <!-- any text here -->
   </div>
   <div id="right" class="span6">
     <!-- any other text here -->
   </div>
  </div>
</div>
</body>
</html>

生成的 PDF 确实完全忽略了引导 css(这意味着文档的整个布局都被打乱了)。但它完全加载到“风格”部分。

当我尝试调试(generate.pdf?debug=1)输出 html 时,我确实得到了我想要的正确格式(#left 是页面左侧的列,#right 是右侧的列) .

wkhtmltopdf 是否能够呈现 twitter bootstrap css ?

我正在使用最新的 wicked_pdf gem 和 wkhtmltopdf 0.11.0 rc1。

感谢您对此的任何提示!

4

2 回答 2

4

在您的布局中,您必须在 CSS 包含标签中提供绝对路径或使用提供的帮助器:

wicked_pdf_stylesheet_link_tag 'application'
于 2012-11-14T13:09:54.233 回答
0

没关系 !!

更新到最新的 Bootstrap 版本 2.2.1 修复了它(之前有 2.1.1)。不要问我为什么,但这一定是 Bootstrap 中的一个问题,我没有怀疑。

于 2012-11-14T15:04:51.807 回答