Class: PdfThumbs

Inherits:
Object
  • Object
show all
Defined in:
lib/pdf_thumbnailer/pdf_thumbs.rb

Class Method Summary collapse

Class Method Details

.configure(**opts) ⇒ Object



2
3
4
5
6
7
8
9
10
# File 'lib/pdf_thumbnailer/pdf_thumbs.rb', line 2

def self.configure **opts
  # [:pdf_dir, :img_dir, :thumb_sizes].each do |required_opt|
  [:img_dir, :thumb_sizes].each do |required_opt|
    raise ArgumentError, "Missing required config option: :#{required_opt}" unless opts[required_opt]
  end
  @@img_dir = File.join(opts[:img_dir], '') # adds trailing '/' if it doesn't already have one
  @@pdf_dir = File.join(opts[:pdf_dir], '') if opts[:pdf_dir]# adds trailing '/' if it doesn't already have one
  @@thumb_sizes = opts[:thumb_sizes].is_a?(Fixnum) ? [opts[:thumb_sizes]] : opts[:thumb_sizes]
end

.thumbnail!Object



12
13
14
15
16
17
# File 'lib/pdf_thumbnailer/pdf_thumbs.rb', line 12

def self.thumbnail!
  Dir.glob(File.join(@@pdf_dir, '**', '*.pdf')) do |pdf|
    img_dir = thumbnail_pdf @@pdf_dir, pdf.gsub(@@pdf_dir, '')
    yield(img_dir) if block_given?
  end
end

.thumbnail_single!(pdf_dir, relative_pdf_path) ⇒ Object



19
20
21
# File 'lib/pdf_thumbnailer/pdf_thumbs.rb', line 19

def self.thumbnail_single! pdf_dir, relative_pdf_path
  thumbnail_pdf pdf_dir, relative_pdf_path, true
end