Ruby on rails 通过其html表示在对虾中创建一个表
早期的Ruby on rails 通过其html表示在对虾中创建一个表,ruby-on-rails,ruby,gem,prawn,Ruby On Rails,Ruby,Gem,Prawn,早期的Prawngem允许通过其html表示创建一个表(将一个html表字符串作为输入参数,如…)。现在我在手册里找不到这个设施 那么现在可能吗?若并没有,那个么还有其他选择吗?你们可以使用PrawntoGem作为模板,使用prawn创建表格 例如,如果您定义以下模板,它将绘制具有3列x、y和z宽度的表格 data = [ ["Column 1", "Column 2", "Column 3"] ] table(data, :column_widths => [x,y,z], :cell_
Prawn
gem允许通过其html表示创建一个表(将一个html表字符串作为输入参数,如…
)。现在我在手册里找不到这个设施
那么现在可能吗?若并没有,那个么还有其他选择吗?你们可以使用PrawntoGem作为模板,使用prawn创建表格 例如,如果您定义以下模板,它将绘制具有3列x、y和z宽度的表格
data = [ ["Column 1", "Column 2", "Column 3"] ]
table(data, :column_widths => [x,y,z], :cell_style => { :inline_format => true })
TL;DR:如果您的用例是1)生成HTML和PDF数据(如在线发票等),2)确保两者看起来相同,那么Prawn并不是最好的解决方案(这与Prawn自述中的建议相同) 在您的例子中,您可以使用Nokogiri或解析HTML,并从HTML表中提取数据,然后使用它通过Prawn生成PDF表示。HTML样式可能无法直接转换为Prawn使用的样式,因此,即使有大量的代码争论,您也可能无法实现样式的一致性-从
royalGhost
对答案的评论中,我假设这是您想要的结果。此外,如果您的HTML表是嵌套的,并且解析代码不能满足这一要求,那么简单的Nokogiri解析解决方案将不起作用。例如,考虑这一点:
<table>
<tr>
<td>First Column, First Row</td>
<td>Second Column, First Row</td>
</tr>
<tr>
<table>
<tr>
<td>First Column, Second Row</td>
<td>Second Column, Second Row</td>
<td>Third Column, Second Row</td>
</tr>
</table>
</tr>
</table>
第一列,第一行
第二列,第一行
第一列,第二行
第二列,第二行
第三列,第二行
然后,在Ruby解析代码段中,您应该确保内部..
被解析为Prawn::Table
对象,而不是一行Prawn::Table::Cell
对象
任何基于wkhtmltopdf
的选项,如或,都提供了实现HTML-to-PDF转换解决方案的更简洁的方法
您有两个选择:
html表(比如
…
)在哪里?我不认为。。。标签不再受支持。这是实现相同结果的另一种方法(您也要求这样做。)但我将其作为输入字符串,我需要将该表插入pdf文档中,如何处理?定义列后,您可以使用与上面相同的标记绘制表:data=[[“第1行的第1列数据”,“第1行的第2列数据”,“第1行的第3列数据”]]表(数据,:列宽=>[x,y,z],:单元格样式=>{:内联格式=>true})我有一些css样式附在该表中,使用您的方法绘制它并不容易。