class Libis::Format::Converter::PdfAssembler
noinspection DuplicatedCode
Public Class Methods
category()
click to toggle source
# File lib/libis/format/converter/pdf_assembler.rb, line 23 def self.category :assembler end
input_types()
click to toggle source
# File lib/libis/format/converter/pdf_assembler.rb, line 14 def self.input_types [:PDF] end
output_types(format = nil)
click to toggle source
# File lib/libis/format/converter/pdf_assembler.rb, line 18 def self.output_types(format = nil) return [] unless input_types.include?(format) if format [:PDF] end
Public Instance Methods
convert(source, target, format, opts = {})
click to toggle source
Calls superclass method
Libis::Format::Converter::Base#convert
# File lib/libis/format/converter/pdf_assembler.rb, line 31 def convert(source, target, format, opts = {}) super result = if source.is_a? Array assemble(source, target) elsif File.directory?(source) source_list = Dir[File.join(source, '**', '*')].reject {|p| File.directory? p} assemble(source_list, target) else assemble([source], target) end return nil unless result result end
pdf_assemnble(_)
click to toggle source
# File lib/libis/format/converter/pdf_assembler.rb, line 27 def pdf_assemnble(_) #force usage of this converter end
Private Instance Methods
assemble(source, target)
click to toggle source
# File lib/libis/format/converter/pdf_assembler.rb, line 49 def assemble(source, target) result = Libis::Format::Tool::PdfMerge.run(source, target) unless result[:err].empty? error("PdfMerge encountered errors:\n%s", result[:err].join(join("\n"))) return nil end target end