Ruby PDF Label Printer新行无效

时间:2013-08-29 21:39:27

标签: ruby-on-rails ruby ruby-on-rails-3

请耐心等待,这是我第一次和Ruby搞混了。基本上这是我的问题。我有一个庞大的网站,只需要修改一件事,但我遇到了问题。

我正在尝试将翻领打印机的PDF输出包装到下一行。这是我的代码。

def print_labels
  quantity = params[:quantity].to_i
  hashed_label = ActiveSupport::JSON.decode(params[:label])
  p = InventoryItem.labels_pdf do |pdf|
  (1..quantity).each do |i|
    pdf.text("#{hashed_label['inventory_item_code']} #{hashed_label['label_description']} #{hashed_label['inventory_item_size']}", :style => :bold)
    pdf.text("#{hashed_label['ingredients']}", :size => 9, :font => :serif)
    #pdf.text(params[:label]);
    pdf.start_new_page if i < quantity
  end
end
send_data(p, :type => "application/x-pdf", :filename => "labels.pdf")
end

以下是PDF中的输出。

inventory_item_code label_description inventory_item_size

我试图让他们在每个项目之间打破。

1 个答案:

答案 0 :(得分:1)

这是使用Prawn吗?您应该可以将所有换行符添加到您想要的内容中:

pdf.text("Here is some\ntext with\nnewlines")

所以,ingredients之后的换行符就是:

pdf.text("#{hashed_label['ingredients']}\n", :size => 9, :font => :serif)