首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有wicked-pdf的背景图像(水印)

带有wicked-pdf的背景图像(水印)
EN

Stack Overflow用户
提问于 2014-05-12 07:58:20
回答 3查看 5.6K关注 0票数 0

我需要使用一个图像作为水印的各种文件,我正在生成和转换为pdf与邪恶的-pdf。它花了一段时间,但我几乎所有的工作。我的show.pdf.erb是:

代码语言:javascript
复制
<!DOCTYPE html>
<html>
  <head >
    <style type="text/css">
        <%= Rails.application.assets.find_asset('wicked.css').to_s.html_safe %>
    </style>
  </head>
  <body class='wicked'>
    <div>
        <p><%= "#{Doc.last.contents} ".html_safe %></p>
    </div>
  </body>
</html>

我的wicked.css是:

代码语言:javascript
复制
.wicked {
  background-image:url(/assets/test2.jpg);
  background-repeat: no-repeat;
  background-position: 50% -15%;
}

我的控制器简单地调用:

代码语言:javascript
复制
    render :pdf             => "test2",
        :formats        => [:pdf],
        :show_as_html       => true

所有这些都运行得很好。从db中提取的水印和文本正确地存在。但是,当我从控制器中删除"show_as_html“时,水印消失了,只有文本显示为PDF。类似地,如果我添加"save_to_file",文件保存时只保存文本,没有水印。我不知道我可能做错了什么。我在任何日志中都找不到任何错误。谢谢你的建议。

EN

回答 3

Stack Overflow用户

发布于 2015-05-12 17:36:08

我通过使用SASS asset-data-urlrelative-asset-path解决了这个问题,也许你可以使用下面这样的东西:

代码语言:javascript
复制
background-image: asset-data-url('test2.png')
票数 3
EN

Stack Overflow用户

发布于 2014-05-23 21:39:08

这在WickedPdf Github问题跟踪器中得到了解决:

https://github.com/mileszs/wicked_pdf/issues/302

这里的基本问题是,当WickedPdf需要绝对路径时,url(/assets/test2.jpg)是相对路径,内容应该这样引用:

代码语言:javascript
复制
url('file:///home/unconundrum/code/my_app/app/assets/images/test2.jpg')

这可以通过一种更可移植的方式来完成,如下所示:

代码语言:javascript
复制
background-image:url('<%= "file://#{Rails.root.join('app','assets','images','test2.jpg')}" %>');

使用ERB样式表。

票数 1
EN

Stack Overflow用户

发布于 2019-04-04 15:14:19

我在申请大学时也遇到了同样的问题。解算为:

代码语言:javascript
复制
background-image: url("file://#{Rails.root.join('app/assets/images/marksheet-background.jpg')}");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23599227

复制
相关文章

相似问题

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