Sha256: 40a983ff373eeb3abe7f0847f982c437a9cb26e6ff726c4230446251fbb83932

Contents?: true

Size: 1.06 KB

Versions: 14

Compression:

Stored size: 1.06 KB

Contents

module OpenXml
  module Docx
    module Parts
      class Styles < OpenXml::Part
        include RootNamespaces

        use_namespaces :r, :w

        attr_reader :styles

        def initialize
          @styles = []
        end

        def <<(style)
          @styles << style
        end

        def to_xml
          build_standalone_xml do |xml|
            xml.styles(root_namespaces) {
              xml.parent.namespace = :w
              add_default_styles(xml)
              styles.each { |style| style.to_xml(xml) }
            }
          end
        end

      private

        def add_default_styles(xml)
          xml["w"].docDefaults {
            xml["w"].rPrDefault {
              xml["w"].rPr {
                xml["w"].lang("w:bidi" => "ar-SA", "w:eastAsia" => "en-US", "w:val" => "en-US")
              }
            }
            xml["w"].pPrDefault {
              xml["w"].pPr {
                xml["w"].spacing("w:after" => "0", "w:line" => "240", "w:lineRule" => "auto")
              }
            }
          }
        end

      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
openxml-docx-0.11.5 lib/openxml/docx/parts/styles.rb
openxml-docx-0.11.4 lib/openxml/docx/parts/styles.rb
openxml-docx-0.11.3 lib/openxml/docx/parts/styles.rb
openxml-docx-0.11.2 lib/openxml/docx/parts/styles.rb
openxml-docx-0.11.1 lib/openxml/docx/parts/styles.rb
openxml-docx-0.11.0 lib/openxml/docx/parts/styles.rb
openxml-docx-0.11.0.rc lib/openxml/docx/parts/styles.rb
openxml-docx-0.10.6 lib/openxml/docx/parts/styles.rb
openxml-docx-0.10.5 lib/openxml/docx/parts/styles.rb
openxml-docx-0.10.4 lib/openxml/docx/parts/styles.rb
openxml-docx-0.10.3 lib/openxml/docx/parts/styles.rb
openxml-docx-0.10.2 lib/openxml/docx/parts/styles.rb
openxml-docx-0.10.1 lib/openxml/docx/parts/styles.rb
openxml-docx-0.10.0 lib/openxml/docx/parts/styles.rb