使用 0.79 和 0.7.2 生成的 PDF 看起来与我原来的 HTML 略有不同。添加 show_as_html 标志会按预期显示它,但是内联样式在 PDF 中的处理方式与在 HTML 预览中的处理方式不同。
具体来说,我遇到的问题是字母间距声明,它也有一个无法正确渲染的浮动。因此,例如在具有字母间距的右浮动元素上,PDF 会将字符间隔得太大,并且从中心开始,使得文本部分离开屏幕,而不是由于字母间距宽度的差异而进一步向左碰撞。
以下是原始 HTML 片段:
<table width="800" border="0">
<tr>
<td colspan="3"><span style="font-family:Helvetica, Arial, sans-serif;font-size:10pt;margin-top:18px;text-transform:uppercase;float: right;letter-spacing:2pt">Winter 2013</span></td>
</tr>
</table>
这是执行渲染的代码:
render :pdf => 'file_name',
:template => 'template.html.erb',
:layout => 'pdf.html'
这是呈现的 HTML:http://jsfiddle.net/wX4DQ/ http://jsfiddle.net/wX4DQ/
这是输出的 PDF:https://i.stack.imgur.com/I0cqO.jpg https://i.stack.imgur.com/I0cqO.jpg
我注意到有一些错误报告关于这似乎是相关的。这可能是这个问题的罪魁祸首,什么是可接受的解决方法?
我尝试过不同的字体,但我真的必须使用 Helvetica。
关于这里做什么或可行的解决方法有什么建议吗?