use*_*949 9 ruby ruby-on-rails prawn
你能告诉我如何插入图像,这将是一个链接,例如第20页?我知道如何使用普通文本:
text "<link anchor='page20'>Go to page 20</link>", :inline_format=>true
Run Code Online (Sandbox Code Playgroud)
然后在第20页我有
add_dest('page20', dest_fit(page.dictionary))
Run Code Online (Sandbox Code Playgroud)
但如何用图像做到这一点?
Prawn不支持此功能.实际上,即使您将formatted_text_box图像放在图像上并用白色空间填充,它仍然无法正常工作.锚必须包含要工作的文本.如果您不介意在图像上添加文本,那么这可能是一种解决方案.
Prawn自己的自述文件说明:
Prawn不是,也绝不会是HTML生成器.
在处理了Prawn的许多缺点之后,我已经转而使用wicked_pdf来生成我的Ruby on Rails PDF并且对它非常满意.如果你可以在html&css中完成,可以使用wicked_pdf完成.
部分归功于lightswitch05对于正确方向的一些刺激,我找到了一种通过这种不优雅的方式获得我想要的效果的方法:
bounding_box(页面cursor位于图像底部的此处)|来覆盖图像)这是一些示例代码(测量不准确;涉及很多调整):
bounding_box([0, cursor], width: 35) do
image open("http://mysite.com/remote_image.jpg"),
fit: [35, 35],
align: :center
move_up 35
transparent(0) do
formatted_text([{
text: "|||", # placeholder
size: 40,
link: "http://example.com/"
}], align: :center)
end
# stroke_bounds
end
Run Code Online (Sandbox Code Playgroud)
毋庸置疑,这种经历让我对Wicked PDF有了更多的了解,以便做我认为我想用PDF做的事情.
我确信存在更好/更优雅的解决方案,所以我不打算考虑这个我的最终答案.
| 归档时间: |
|
| 查看次数: |
1281 次 |
| 最近记录: |