Module: Coradoc::Input::Docx

Defined in:
lib/coradoc/input/docx.rb

Class Method Summary collapse

Class Method Details

.processor_execute(input, options = {}) ⇒ Object



16
17
18
19
20
21
22
23
24
25
# File 'lib/coradoc/input/docx.rb', line 16

def self.processor_execute(input, options = {})
  image_dir = Dir.mktmpdir
  options = options.merge(sourcedir: image_dir)
  doc = WordToMarkdown.new(input, image_dir)
  doc = Coradoc::Input::Html.cleaner.preprocess_word_html(doc.document.html)
  options = WordToMarkdown::REVERSE_MARKDOWN_OPTIONS.merge(options)
  Coradoc::Input::Html.to_coradoc(doc, options)
ensure
  FileUtils.rm_rf(image_dir)
end

.processor_idObject



8
9
10
# File 'lib/coradoc/input/docx.rb', line 8

def self.processor_id
  :docx
end

.processor_match?(filename) ⇒ Boolean

Returns:

  • (Boolean)


12
13
14
# File 'lib/coradoc/input/docx.rb', line 12

def self.processor_match?(filename)
  %w[.docx .doc].any? { |i| filename.downcase.end_with?(i) }
end

.processor_postprocess(data, options) ⇒ Object



27
28
29
# File 'lib/coradoc/input/docx.rb', line 27

def self.processor_postprocess(data, options)
  Coradoc::Input::Html.processor_postprocess(data, options)
end

.processor_wants_filenamesObject

This processor prefers to work on original files.



32
# File 'lib/coradoc/input/docx.rb', line 32

def self.processor_wants_filenames; true; end