用 Prawn 在表格/单元格内绘制格式化文本
我正在使用 prawn-0.11.1.pre 运行 Rails 3.0.1
我只是做了一些基本测试,看看是否可以让 Prawn 创建一个包含一些格式化文本的简单表格:
data = ["Cell 1", formatted_text([{:text => "Cell 2"}])],
["Cell 3","Cell 4"]
table(data)
render
PDF 呈现如下
Cell 2
[Cell 1][ ]
[Cell 3][Cell 4]
(一个不错的表格,但带有表格外的文本“单元格 2”)
我的目标是在单元格 #2 内获取格式化文本“单元格 2”...
我应该怎么做?
I am running Rails 3.0.1 with prawn-0.11.1.pre
I just did some basic tests to see if I can get Prawn to create a simple table that includes some formatted text:
data = ["Cell 1", formatted_text([{:text => "Cell 2"}])],
["Cell 3","Cell 4"]
table(data)
render
The PDF renders like this
Cell 2
[Cell 1][ ]
[Cell 3][Cell 4]
(a nice table but with the text "Cell 2" outside the table)
My goal is to get the formatted text "Cell 2" inside Cell #2...
How should I do this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
formatted_text
不返回格式化文本,而是呈现它。所以,当您在为
table
“Cell 2”构建数据时调用formatted_text
在表格之前呈现,第 1 行第 2 列的单元格是
空的。我想你想把 Prawn::Table:: Cell::Text 对象
您进行
formatted_text
调用的位置。如果Prawn::Table::Cell::Text
不支持你需要的一切,那么你可能不得不做你的
Prawn::Table::Cell
的子类并手动完成这一切。formatted_text
doesn't return formatted text, it renders it. So, whenyou call
formatted_text
while building your data fortable
, "Cell 2"is rendered before the table and the cell at row 1 and column 2 is
empty. I think you want to put at Prawn::Table::Cell::Text object
where you have your
formatted_text
call. IfPrawn::Table::Cell::Text
doesn't support everything you need then you'll probably have to make your
subclass of
Prawn::Table::Cell
and do it all by hand.至少在大虾0.12中,我可以这样做:
At least in prawn 0.12, I can do:
您可以将内联样式格式与单元格样式选项
inline_format
结合使用:请参阅:https://github.com/practicingruby/prawn/blob/stable/manual/table/cell_text.rb#L28
You can use inline style format with cell style option
inline_format
:See: https://github.com/practicingruby/prawn/blob/stable/manual/table/cell_text.rb#L28