Sha256: e9cf0097de8c152f69b090887aa36eff25a981d9f539348ac156091efb629c3f

Contents?: true

Size: 1.59 KB

Versions: 1

Compression:

Stored size: 1.59 KB

Contents

require_relative "presentation_function/block"
require_relative "presentation_function/inline"
require_relative "presentation_function/math"
require_relative "presentation_function/section"
require_relative "presentation_function/bibdata"

module IsoDoc
  class PresentationXMLConvert < ::IsoDoc::Convert
    def initialize(options)
      @format = :presentation
      @suffix = "presentation.xml"
      super
    end

    def convert1(docxml, filename, dir)
      @xrefs.parse docxml
      info docxml, nil
      conversions(docxml)
      docxml.root["type"] = "presentation"
      docxml.to_xml
    end

    def conversions(docxml)
      bibdata docxml
      @xrefs.parse docxml
      section docxml
      block docxml
      inline docxml
    end

    def section(docxml)
      clause docxml
      annex docxml
      term docxml
      references docxml
      index docxml
      display_order docxml
    end

    def block(docxml)
      amend docxml
      table docxml
      figure docxml
      sourcecode docxml
      formula docxml
      example docxml
      termexample docxml
      note docxml
      termnote docxml
      permission docxml
      requirement docxml
      recommendation docxml
    end

    def inline(docxml)
      xref docxml
      eref docxml
      origin docxml
      concept docxml
      quotesource docxml
      mathml docxml
      variant docxml
    end

    def postprocess(result, filename, _dir)
      toXML(result, filename)
      @files_to_delete.each { |f| FileUtils.rm_rf f }
    end

    def toXML(result, filename)
      File.open(filename, "w:UTF-8") { |f| f.write(result) }
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
isodoc-1.7.0 lib/isodoc/presentation_xml_convert.rb