class Docxtor2::Package

Attributes

parts[R]

Public Class Methods

new(parts, document) click to toggle source
# File lib/docxtor2/package.rb, line 5
def initialize(parts, document)
  @parts = parts
  @parts[Known::Parts::DOCUMENT] = document
end

Public Instance Methods

save(filepath) click to toggle source
# File lib/docxtor2/package.rb, line 10
def save(filepath)
  Zip::ZipOutputStream.open(filepath) do |ostream|
    write_parts(ostream)
  end
end
to_stream() click to toggle source
# File lib/docxtor2/package.rb, line 16
def to_stream
  ostream = Zip::ZipOutputStream.new("streamed", true)
  write_parts(ostream)
  string_io = ostream.close_buffer
  string_io.rewind
  string_io
end

Private Instance Methods

write_parts(ostream) click to toggle source
# File lib/docxtor2/package.rb, line 26
def write_parts(ostream)
  @parts.each do |name, part|
    ostream.put_next_entry(part.filename)
    ostream.puts part.content
  end
end