Module: Docx::Encoder

Defined in:
lib/docx/encoder.rb

Class Method Summary collapse

Class Method Details

.build_new_document_xml(original_document, new_document_sections) ⇒ Object



7
8
9
10
11
12
13
14
15
16
# File 'lib/docx/encoder.rb', line 7

def self.build_new_document_xml(original_document, new_document_sections)
    output = Zip::OutputStream.write_buffer(StringIO.new) do |out|
        original_document.each do |entry|
            entry_name = entry.name
            out.put_next_entry(entry_name)
            out.write(new_document_sections[entry_name] || entry.get_input_stream.read)
        end
    end
    output.string
end