首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails wicked_pdf (wkhtmltopdf)生产环境中的小图像和bug

Rails wicked_pdf (wkhtmltopdf)生产环境中的小图像和bug
EN

Stack Overflow用户
提问于 2014-10-10 18:20:43
回答 1查看 697关注 0票数 1

出于某种原因,我的Rails应用程序使用wicked_pdf gem生成PDF文件(使用wkhtmltopdf软件的gem )在开发和生产中生成不同的PDF。

这就是它在开发中输出的方式,几乎没有问题:点击此处查看

这是生产中的输出方式,有很多错误:点击此处查看

系统的真正区别在于,在开发中,我在OSX中使用wkhtmltopdf 0.9.9。在生产中,我在Ubuntu中使用wkhtmltopdf 0.9.9。一旦UbuntuServer14.04不使用Xorg ( wkhtmltopdf需要它),我就安装Xorg并制作如下包装:

/usr/bin/wkhtmltopdf.sh

代码语言:javascript
复制
xvfb-run -a -s "-screen 0 1024x768x32" wkhtmltopdf "$@"

以及Rails初始化器中的以下代码:

/config/initializers/wicked_pdf.rb

代码语言:javascript
复制
if Rails.env.production?
  WickedPdf.config = {
    :exe_path => '/usr/bin/wkhtmltopdf.sh'
  }
else
  WickedPdf.config = {
    :exe_path => '/usr/local/bin/wkhtmltopdf'
  }
end

,这是我呈现PDF:的控制器代码

代码语言:javascript
复制
render :pdf => "curriculum",
        :template => 'kurrics/kurrics.pdf.erb',
        :margin => { :top => 4, :bottom => 4, :left => 0, :right => 0 },
        :encoding => "utf8",
        :print_media_type => true

如果需要的话,模板布局:

https://gist.github.com/fschuindt/e173c05d0cc7378df105

我很迷茫,有什么建议吗?

EN

回答 1

Stack Overflow用户

发布于 2018-03-30 04:24:43

你的问题可能已经解决了。但这个答案会对其他人有所帮助。

作为您的pdf样本,问题是外部css和背景图像。我也遇到了同样的问题,我在pdf模板中添加了内部css行如下所示。(请看这个问题)

代码语言:javascript
复制
background-image: url('file://<%= Rails.root.join('app/assets/images/colorful-triangles.jpg') %>');

这种方法既适用于开发环境,也适用于生产环境。

在pdf中使用单独的css文件是一种最佳做法。这将加速您的pdf生成,并降低服务器成本。并且,避免加载不必要的css文件和图像到pdf布局。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26305677

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档