Sha256: 4bad257a101e1c6a38f7a713c35e6bb86117ffb6719615800fb53f244dac552c
Contents?: true
Size: 923 Bytes
Versions: 5
Compression:
Stored size: 923 Bytes
Contents
# frozen_string_literal: true require_relative 'styles/document_defaults' module OoxmlParser # Class for parsing `styles.xml` file class Styles < OOXMLDocumentObject # @return [DocumentDefaults] defaults of document attr_accessor :document_defaults # @return [Array<DocumentStyle>] array of document styles attr_reader :styles def initialize(parent: nil) @styles = [] @parent = parent end # Parse styles data # @return [Styles] result of parsing def parse doc = parse_xml(OOXMLDocumentObject.path_to_folder + 'word/styles.xml') doc.xpath('w:styles/*').each do |node_child| case node_child.name when 'docDefaults' @document_defaults = DocumentDefaults.new(parent: self).parse(node_child) when 'style' @styles << DocumentStyle.new(parent: self).parse(node_child) end end self end end end
Version data entries
5 entries across 5 versions & 1 rubygems