Class | Origami::PS::Text |
In: |
sources/parser/ps.rb
|
Parent: | Object |
DEFAULT_SIZE | = | 12 |
DEFAULT_FONT | = | :F1 |
DEFAULT_LINESPACING | = | 20 |
buffer | [RW] | |
char_spacing | [RW] | |
font | [RW] | |
line_spacing | [RW] | |
rendering | [RW] | |
rise | [RW] | |
scale | [RW] | |
size | [RW] | |
word_spacing | [RW] | |
x | [RW] | |
y | [RW] |
# File sources/parser/ps.rb, line 49 49: def initialize(text = "", attr = {}) 50: 51: @x = attr.include?(:x) ? attr[:x] : 0 52: @y = attr.include?(:y) ? attr[:y] : 0 53: 54: @font = attr.include?(:font) ? attr[:font] : DEFAULT_FONT 55: @size = attr.include?(:size) ? attr[:size] : DEFAULT_SIZE 56: 57: @line_spacing = attr.include?(:line_spacing) ? attr[:line_spacing] : DEFAULT_LINESPACING 58: 59: @word_spacing = attr[:word_spacing] 60: @char_spacing = attr[:char_spacing] 61: @scale = attr[:scale] 62: @rise = attr[:rise] 63: @rendering = attr[:rendering] 64: 65: @buffer = text 66: 67: end
# File sources/parser/ps.rb, line 69 69: def to_s 70: 71: lines = buffer.split("\n").map!{|line| line.to_o.to_s} 72: 73: text = lines.slice!(0) + " Tj " + lines.join(" ' ") 74: text << " ' " unless lines.empty? 75: 76: data = "BT\n#{@font.to_o} #{@size} Tf #{@x} #{@y} Td #{@line_spacing} TL\n" 77: data << "#{@rendering} Tr " unless @rendering.nil? 78: data << "#{@rise} Ts " unless @rise.nil? 79: data << "#{@scale} Tz " unless @scale.nil? 80: data << "#{@word_spacing} Tw " unless @word_spacing.nil? 81: data << "#{@char_spacing} Tc " unless @char_spacing.nil? 82: data << "#{text}\nET" 83: 84: data 85: end