标题与虾栏

时间:2016-09-14 18:33:16

标签: ruby-on-rails ruby-on-rails-4 prawn

我需要将2张图片和文字放在同一行。

例如:

(image1)" TEXT" (图像2)

模拟标题。 这是我的代码:

class PruebasPdf < Prawn::Document

def initialize(prueba)
    super()
    @prueba = Prueba.order("id DESC").all
    cabecera
    prueba_id
    marcagua
end
def cabecera
    image "#{Rails.root}/app/assets/images/logo-i.jpg", :width => 50, :height => 50,:position => :left
    text "Universidad Centroccidental Lisandro Alvarado",  size: 18, style: :bold, align: :center
    image "#{Rails.root}/app/assets/images/logo-d.jpg", :width => 50, :height => 50,:position => :right
end
def prueba_id
    table prueba_id_all do
        row(0).font_style = :bold
        columns(1..3).align = :center
        self.row_colors = ["DDDDDD","FFFFFF"]
        self.header = true
        end

end

def prueba_id_all
    [["Titulo","Descripcion","Fecha"]] + 
    @prueba.map do |prueba|
        [prueba.titulo,prueba.desc,prueba.fecha]
    end

end

def marcagua
    create_stamp("watermark") do
     rotate(30, :origin => [-5, -5]) do
       stroke_color "FF3333"
       stroke_color "000000"
       fill_color "993333"
       font("Times-Roman") do
         draw_text "Coordinacion de Investigacion", :at => [-23, -3]
       end
       fill_color "000000"
     end
    end

        stamp_at "watermark", [300, 300] 
            end  end

有谁知道怎么做?提前致谢! 对不起我的英文---

1 个答案:

答案 0 :(得分:0)

如果您的标题不会以任何方式改变或动态,那么我将使用x和y坐标的绝对定位来使您的图像和文本按照您想要的方式排列。您可以使用:at选项执行此类操作:

image "#{Rails.root}/app/assets/images/logo-i.jpg", :width => 50, :height => 50, :at => [200, 80]
draw_text "Universidad Centroccidental Lisandro Alvarado",  size: 18, style: :bold, :at => [260, 100]
image "#{Rails.root}/app/assets/images/logo-d.jpg", :width => 50, :height => 50, :at => [320, 80]

这些只是示例坐标,但你可以得到这个想法