class ChupaText::Decomposers::OfficeOpenXMLPresentation
Public Class Methods
Source
# File lib/chupa-text/decomposers/office-open-xml-presentation.rb, line 24 def initialize(options={}) super @extensions = [ "pptx", "pptm", "ppsx", "ppsm", "potx", "potm", "sldx", "sldm", ] @mime_types = [ "application/vnd.openxmlformats-officedocument.presentationml.presentation", "application/vnd.ms-powerpoint.presentation.macroEnabled.12", "application/vnd.openxmlformats-officedocument.presentationml.slideshow", "application/vnd.ms-powerpoint.slideshow.macroEnabled.12", "application/vnd.openxmlformats-officedocument.presentationml.template", "application/vnd.ms-powerpoint.template.macroEnabled.12", "application/vnd.openxmlformats-officedocument.presentationml.slide", "application/vnd.ms-powerpoint.slide.macroEnabled.12", ] @namespace_uri = "http://schemas.openxmlformats.org/drawingml/2006/main" end
Calls superclass method
Private Instance Methods
Source
# File lib/chupa-text/decomposers/office-open-xml-presentation.rb, line 65 def finish_decompose(context, &block) metadata = TextData.new("", source_data: context[:data]) context[:attributes].each do |name, value| metadata[name] = value end yield(metadata) slide_texts = context[:slides].sort_by(&:first).collect(&:last) slide_texts.each_with_index do |slide_text, i| text_data = TextData.new(slide_text, source_data: context[:data]) text_data["index"] = i yield(text_data) end end
Source
# File lib/chupa-text/decomposers/office-open-xml-presentation.rb, line 80 def log_tag "#{super}[presentation]" end
Source
# File lib/chupa-text/decomposers/office-open-xml-presentation.rb, line 55 def process_entry(entry, context) case entry.zip_path when /\Appt\/slides\/slide(\d+)\.xml/ nth_slide = Integer($1, 10) slide_text = +"" extract_text(entry, slide_text) context[:slides] << [nth_slide, slide_text] end end
Source
# File lib/chupa-text/decomposers/office-open-xml-presentation.rb, line 51 def start_decompose(context) context[:slides] = [] end