# File lib/rvg/misc.rb, line 353 def initialize() @affine = Array.new @affine << Magick::AffineMatrix.new(1, 0, 0, 1, 0, 0) @baseline_shift = Array.new @baseline_shift << :baseline @glyph_orientation_horizontal = Array.new @glyph_orientation_horizontal << 0 @glyph_orientation_vertical = Array.new @glyph_orientation_vertical << 90 @letter_spacing = Array.new @letter_spacing << 0 @text_anchor = Array.new @text_anchor << :start @word_spacing = Array.new @word_spacing << 0 @writing_mode = Array.new @writing_mode << 'lr-tb' end
# File lib/rvg/misc.rb, line 403 def affine() @affine[-1] end
# File lib/rvg/misc.rb, line 407 def baseline_shift() @baseline_shift[-1] end
# File lib/rvg/misc.rb, line 411 def baseline_shift=(value) @baseline_shift[-1] = value end
# File lib/rvg/misc.rb, line 431 def glyph_orientation_horizontal() @glyph_orientation_horizontal[-1] end
# File lib/rvg/misc.rb, line 435 def glyph_orientation_horizontal=(angle) @glyph_orientation_horizontal[-1] = angle end
# File lib/rvg/misc.rb, line 423 def glyph_orientation_vertical() @glyph_orientation_vertical[-1] end
# File lib/rvg/misc.rb, line 427 def glyph_orientation_vertical=(angle) @glyph_orientation_vertical[-1] = angle end
# File lib/rvg/misc.rb, line 439 def letter_spacing() @letter_spacing[-1] end
# File lib/rvg/misc.rb, line 443 def letter_spacing=(value) @letter_spacing[-1] = value end
# File lib/rvg/misc.rb, line 447 def non_default? @baseline_shift[-1] != :baseline || @letter_spacing[-1] != 0 || @word_spacing[-1] != 0 || @writing_mode[-1][/\Alr/].nil? || @glyph_orientation_horizontal[-1] != 0 end
# File lib/rvg/misc.rb, line 383 def pop() @affine.pop @baseline_shift.pop @text_anchor.pop @writing_mode.pop @glyph_orientation_vertical.pop @glyph_orientation_horizontal.pop @letter_spacing.pop @word_spacing.pop end
# File lib/rvg/misc.rb, line 372 def push() @affine.push(@affine.last.dup) @baseline_shift.push(@baseline_shift.last) @text_anchor.push(@text_anchor.last) @writing_mode.push(@writing_mode.last.dup) @glyph_orientation_vertical.push(@glyph_orientation_vertical.last) @glyph_orientation_horizontal.push(@glyph_orientation_horizontal.last) @letter_spacing.push(@letter_spacing.last) @word_spacing.push(@word_spacing.last) end
# File lib/rvg/misc.rb, line 394 def set_affine(sx, rx, ry, sy, tx, ty) @affine[-1].sx = sx @affine[-1].rx = rx @affine[-1].ry = ry @affine[-1].sy = sy @affine[-1].tx = tx @affine[-1].ty = ty end
# File lib/rvg/misc.rb, line 415 def text_anchor() @text_anchor[-1] end
# File lib/rvg/misc.rb, line 419 def text_anchor=(anchor) @text_anchor[-1] = anchor end
# File lib/rvg/misc.rb, line 453 def word_spacing() @word_spacing[-1] end
# File lib/rvg/misc.rb, line 457 def word_spacing=(value) @word_spacing[-1] = value end
# File lib/rvg/misc.rb, line 461 def writing_mode() @writing_mode[-1] end
# File lib/rvg/misc.rb, line 465 def writing_mode=(mode) @writing_mode[-1] = WRITING_MODE.include?(mode) ? mode : 'lr-tb' end