Sha256: 66c5414544128faace0d079774a8f458b52ebb2d023b60e3c6bdfef07c03ce57

Contents?: true

Size: 2 KB

Versions: 8

Compression:

Stored size: 2 KB

Contents

require_relative "base_convert"
require_relative "init"
require "isodoc"

module IsoDoc
  module Generic
    # A {Converter} implementation that generates PDF HTML output, and a
    # document schema encapsulation of the document for validation
    class PdfConvert < IsoDoc::PdfConvert
      def initialize(options)
        @libdir = File.dirname(__FILE__)
        super
      end

      class << self
        attr_accessor :_file
      end

      def self.inherited( k )
        k._file = caller_locations.first.absolute_path
      end

       def default_fonts(options)
        {
          bodyfont: (options[:script] == "Hans" ? '"SimSun",serif'
                     : configuration.html_bodyfont || '"Overpass",sans-serif'),
          headerfont: (options[:script] == "Hans" ? '"SimHei",sans-serif' :
                       configuration.html_headerfont || '"Overpass",sans-serif'),
          monospacefont: configuration.html_monospacefont || '"Space Mono",monospace'
        }
      end

      def default_file_locations(_options)
        {
          htmlstylesheet: baselocation(configuration.htmlstylesheet) ||
            html_doc_path("htmlstyle.scss"),
          htmlcoverpage: baselocation(configuration.htmlcoverpage) ||
            html_doc_path("html_generic_titlepage.html"),
          htmlintropage: baselocation(configuration.htmlintropage) ||
            html_doc_path("html_generic_intro.html"),
          scripts_pdf: baselocation(configuration.scripts_pdf) ||
            html_doc_path("scripts.pdf.html")
        }
      end

      def googlefonts
        <<~HEAD.freeze
    <link href="https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i|Space+Mono:400,700" rel="stylesheet">
    <link href="https://fonts.googleapis.com/css?family=Overpass:300,300i,600,900" rel="stylesheet">
        HEAD
      end

      def html_toc(docxml)
        docxml
      end

      def configuration
        Metanorma::Generic.configuration
      end

      include BaseConvert
      include Init
    end
  end
end

Version data entries

8 entries across 8 versions & 2 rubygems

Version Path
metanorma-generic-1.7.2 lib/isodoc/generic/pdf_convert.rb
metanorma-generic-1.7.1 lib/isodoc/generic/pdf_convert.rb
metanorma-generic-1.7.0 lib/isodoc/generic/pdf_convert.rb
metanorma-generic-1.6.3 lib/isodoc/generic/pdf_convert.rb
metanorma-generic-1.6.2 lib/isodoc/generic/pdf_convert.rb
metanorma-generic-1.6.1 lib/isodoc/generic/pdf_convert.rb
metanorma-cli-1.3.4 gems/ruby/2.6.0/gems/metanorma-generic-1.6.0/lib/isodoc/generic/pdf_convert.rb
metanorma-generic-1.6.0 lib/isodoc/generic/pdf_convert.rb