我是编程和Ruby新手,尝试用Prawn生成PDF。我正在遵循 Prawn 手册,但在将文本放入边界框中时遇到问题。这是我的代码,主要来自 Prawn 手册......:
pdf.bounding_box([200, pdf.cursor - 100], :width => 200, :height => 100) do
pdf.text "Just your regular bounding box"
pdf.transparent(0.5) { pdf.stroke_bounds }
end
如果我删除这一行:
pdf.transparent(0.5) { stroke_bounds }
,
该代码可以运行,但我看不到文本框。我需要改变什么?
我不确定我是否完全理解您的问题。当你说
代码可以运行,但我看不到文本框
你的意思是你看不到盒子的边框,但你仍然可以看到文字?或者你也看不到文字? 我希望是前者,因为它是导致绘制边框的
stroke_bounds
。
所以回答你的“我需要改变什么”,这取决于你想要完成什么:
如果您需要文本但不需要框边框,您可以删除 `pdf.transparent(0.5) { pdf.stroke_bounds },它唯一的工作是在周围绘制半透明(即灰色)边框边界框
如果你想要边框,把那条线留在
如果你想要边框,但又想让方框的高度符合文字的高度,那么去掉第一行的
:height => 100
。然后 bounding_box 高度将调整以适合文本。您可以删除透明格式并简单地说:
pdf.stroke_bounds
您的原始代码如下所示:
pdf.bounding_box([200, pdf.cursor - 100], :width => 200, :height => 100) do
pdf.text "Just your regular bounding box"
pdf.stroke_bounds
end