如何在Prawn中为bounding_box添加背景/填充颜色

hel*_*ion 14 pdf prawn ruby-on-rails-3

是否可以在Prawn中为bounding_box添加背景颜色?

 bounding_box([100, cursor], width: 80, height: 20) do
    pad_top(7) { text "THIS IS TEXT", size: 8, align: :center }
    stroke_bounds
 end 
Run Code Online (Sandbox Code Playgroud)

我已经尝试将其添加到bounding_box块

     background_color: "CCCCCC"
Run Code Online (Sandbox Code Playgroud)

我试过在块内添加这个

    fill_color "CCCCCC"
    background_color "CCCCCC"
Run Code Online (Sandbox Code Playgroud)

似乎没有什么东西适用于bounding_box

Wil*_*ing 9

这里的代码

    bounding_box([200,cursor], :width => 350, :height => 80) do
        stroke_color 'FFFFFF'
        stroke_bounds
        stroke do
            stroke_color 'FFFF00'
            fill_color '36DA5C'
            fill_and_stroke_rounded_rectangle [cursor-80,cursor], 350, 80, 10
            fill_color '000000'
        end
    end
Run Code Online (Sandbox Code Playgroud)

  • 幸运的是,这种方法不允许动态箱高 (2认同)

Sim*_*epp 5

这是在2008 [1]讨论的(虽然显然没有在任何地方领先),但我在手册[2]的任何地方都没有提到它。阅读手册了吗?:)

关于它的完成方式:将所有内容放入边界框后,您可以从边界框获得结果的宽度和高度。有了这些信息,您可以使用primitve矩形图来填充它。之后,您将不得不重新绘制内容,因为到目前为止,您将使用矩形填充在其上进行绘制。

希望(可能吗?)还有一种更好的方法,您不需要两次绘制实际内容。遇到它时,请务必与所有人共享!

我在上面的快速操作指南中提到的所有内容都在手册[2]中进行了详细记录。祝好运!

[1] https://groups.google.com/forum/#!msg/prawn-ruby/6XW54cGy0GA/RdXwL0Zo_Z8J

[2] http://prawn.majesticseacreature.com/manual.pdf