画像をpdfファイルにまとめる

今までhomebrewで入れれるpdfjamを使っていたのだが、macportsにしかないpdflatexに依存しているのであまり使いたくない。
prawn(https://github.com/prawnpdf/prawn)を使うとRubyだけで作れるので、乗り換えることにした。


prawnpngを入れると遅くなるので、jpegを使ったほうがいい。

gem install prawn

join-images.rb

#!/usr/bin/env ruby
require 'rubygems'
require 'prawn'

puts out_fname = ARGV.pop
p imgs = ARGV

Prawn::Document.generate(out_fname) do
  imgs.each do |img|
    image(img,
          :fit => [bounds.absolute_right - bounds.absolute_left,
                   bounds.absolute_top - bounds.absolute_bottom]
          )
    start_new_page
  end
end

結合する

ruby join-images.rb *.jpg out.pdf

フチ無し、画像をページぴったりにする

join-images-fit.rb

#!/usr/bin/env ruby
require 'rubygems'
require 'prawn'

puts out_fname = ARGV.pop
p imgs = ARGV

Prawn::Document.generate(out_fname) do
  imgs.each do |img|
    image img, :at => [-1*bounds.absolute_left, bounds.absolute_top], :fit => [bounds.absolute_right+bounds.absolute_left, bounds.absolute_top+bounds.absolute_bottom]
    start_new_page
  end
end