Sha256: 1c1743bb87b7410652a4f898e5b7fbdce83caaf1fa0b79dd23b34997884e1f1f

Contents?: true

Size: 702 Bytes

Versions: 7

Compression:

Stored size: 702 Bytes

Contents

require "open3"
require "pathname"

module Metanorma
  module Output
    class Pdf < Base

      def convert(url_path, output_path)
        file_url = url_path
        file_url = "file://#{url_path}" if Pathname.new(file_url).absolute?
        file_url = "file://#{Dir.pwd}/#{url_path}" unless %r{^file://} =~ file_url
        pdfjs = File.join(File.dirname(__FILE__), "../../../bin/metanorma-pdf.js")

        node_path = ENV["NODE_PATH"] || `npm root --quiet -g`.strip
        node_cmd = ["node", pdfjs, file_url, output_path].join(" ")

        _, error_str, status = Open3.capture3({ "NODE_PATH" => node_path }, node_cmd)
        raise error_str unless status.success?
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
metanorma-1.0.0 lib/metanorma/output/pdf.rb
metanorma-0.3.18 lib/metanorma/output/pdf.rb
metanorma-0.3.17 lib/metanorma/output/pdf.rb
metanorma-0.3.16 lib/metanorma/output/pdf.rb
metanorma-0.3.15 lib/metanorma/output/pdf.rb
metanorma-0.3.14 lib/metanorma/output/pdf.rb
metanorma-0.3.13 lib/metanorma/output/pdf.rb