class Caracal::Renderers::SettingsRenderer

Public Instance Methods

to_xml() click to toggle source

This method produces the xml required for the `word/settings.xml` sub-document.

# File lib/caracal/renderers/settings_renderer.rb, line 17
def to_xml
  builder = ::Nokogiri::XML::Builder.with(declaration_xml) do |xml|
    xml['w'].settings root_options do
      xml['w'].displayBackgroundShape({ 'w:val' => '1' })
      xml['w'].defaultTabStop({ 'w:val' => '720' })
      xml['w'].compat do
        xml['w'].compatSetting({ 'w:val' => '14', 'w:name' => 'compatibilityMode', 'w:uri' => 'http://schemas.microsoft.com/office/word' })
      end
    end
  end
  builder.to_xml(save_options)
end

Private Instance Methods

root_options() click to toggle source
# File lib/caracal/renderers/settings_renderer.rb, line 36
def root_options
  {
    'xmlns:mc'   => 'http://schemas.openxmlformats.org/markup-compatibility/2006',
    'xmlns:o'    => 'urn:schemas-microsoft-com:office:office',
    'xmlns:r'    => 'http://schemas.openxmlformats.org/officeDocument/2006/relationships',
    'xmlns:m'    => 'http://schemas.openxmlformats.org/officeDocument/2006/math',
    'xmlns:v'    => 'urn:schemas-microsoft-com:vml',
    'xmlns:wp'   => 'http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing',
    'xmlns:w10'  => 'urn:schemas-microsoft-com:office:word',
    'xmlns:w'    => 'http://schemas.openxmlformats.org/wordprocessingml/2006/main',
    'xmlns:wne'  => 'http://schemas.microsoft.com/office/word/2006/wordml',
    'xmlns:sl'   => 'http://schemas.openxmlformats.org/schemaLibrary/2006/main',
    'xmlns:a'    => 'http://schemas.openxmlformats.org/drawingml/2006/main',
    'xmlns:pic'  => 'http://schemas.openxmlformats.org/drawingml/2006/picture',
    'xmlns:c'    => 'http://schemas.openxmlformats.org/drawingml/2006/chart',
    'xmlns:lc'   => 'http://schemas.openxmlformats.org/drawingml/2006/lockedCanvas',
    'xmlns:dgm'  => 'http://schemas.openxmlformats.org/drawingml/2006/diagram'
  }
end