class Writer::Object::FontEncoding

The font encoding

Attributes

differences[RW]
encoding[RW]

Public Class Methods

new(parent, encoding, differences) click to toggle source
Calls superclass method
# File lib/pdf/writer/object/fontencoding.rb, line 13
def initialize(parent, encoding, differences)
  super(parent)

  @differences  = differences
  @encoding     = encoding
end

Public Instance Methods

to_s() click to toggle source
# File lib/pdf/writer/object/fontencoding.rb, line 23
def to_s
  res = "\n#{@oid} 0 obj\n<< /Type /Encoding\n"
  enc = @encoding || 'WinAnsiEncoding'
  res << "/BaseEncoding /#{enc}\n" unless enc == 'none'
  unless @differences.nil? or @differences.empty?
    res << "/Differences \n["
    n = nil
    @differences.keys.sort.each do |k|
        # Cannot make use of consecutive numbering
      res << "\n#{k} " if n.nil? or k != (n + 1)
      res << " /#{@differences[k]}"
      n = k
    end
    res << "\n]"
  end
  res << "\n>>\nendobj"
end