module Asciidoctor::Diagram::AsciiToSvg
@private
Public Class Methods
included(mod)
click to toggle source
# File lib/asciidoctor-diagram/a2s/extension.rb, line 13 def self.included(mod) [:svg].each do |f| mod.register_format(f, :image) do |parent, source| a2s(parent, source, f) end end end
Public Instance Methods
a2s(parent, source, format)
click to toggle source
# File lib/asciidoctor-diagram/a2s/extension.rb, line 21 def a2s(parent, source, format) inherit_prefix = name sx = source.attr('scalex', nil, inherit_prefix) sy = source.attr('scaley', nil, inherit_prefix) scale = source.attr('scale', nil, inherit_prefix) noblur = source.attr('noblur', 'false', inherit_prefix) == 'true' font = source.attr('fontfamily', nil, inherit_prefix) generate_stdin(which(parent, 'a2s'), format.to_s, source.to_s) do |tool_path, output_path| args = [tool_path, '-o', Platform.native_path(output_path)] if sx && sy args << '-s' << "#{sx},#{sy}" elsif scale args << '-s' << "#{scale},#{scale}" end if noblur args << '-b' end if font args << '-f' << font end args end end