2

ユーザー生成コンテンツからPDFを作成しようとしていますが、グループ化する必要のある情報のチャンクがあります。テキストがすべて一緒にレンダリングされるようにする方法は知っていgroupますが、これはテキストと画像の組み合わせでは機能しないようです。エビでこれを行うことができるものはありますか、それともカーソル位置を計算して手動で改行する必要がありますか?

編集:私がやろうとしていることの説明のために:

pdf = PDF::Document.new
20.times do
  pdf.group do
    pdf.text "Something"
    pdf.image "path/to/image.jpg"
    pdf.text Time.now.to_s
  end
end

そして、あるページに「何か」があり、次のページに画像があることはないと思いますが、それが私が見ているものです。私が望むことを達成する方法はありますか?

4

1 に答える 1

3

さて、私はそれを理解しました。エビは、グループ化するときに画像の高さを考慮していないようですが、それを回避する方法をハックできます。

pdf.group do
  pdf.text "Best regards, (...)"
  pdf.image "#{Rails.root}/vendor/signature.jpg", {
    :height => 30,
    :at => [0, pdf.y.to_i - @bottom_margin]
  }
  pdf.move_down(35)
  pdf.text " "
end

トリックは、画像の絶対配置を使用し、テキスト カーソルを手動で下に移動することです。

于 2012-11-06T11:17:28.480 に答える