Class PDF::Writer::Object::Info
In: lib/pdf/writer/object/info.rb
Parent: PDF::Writer::Object
TechBook Transaction::Simple SimpleTable Complex Action FontDescriptor Procset Catalog FontEncoding Pages Destination Info Encryption Annotation Contents Outline Page Outlines Font ViewerPreferences Image Hash OHash QuickRef StdDev FontMetrics StrokeStyle ARC4 PolygonPoint ImageInfo lib/pdf/simpletable.rb lib/pdf/writer.rb lib/pdf/techbook.rb lib/pdf/quickref.rb lib/pdf/charts/stddev.rb Charts Math lib/pdf/writer/ohash.rb lib/pdf/writer/fontmetrics.rb lib/pdf/writer/strokestyle.rb lib/pdf/writer/arc4.rb lib/pdf/writer/graphics.rb lib/pdf/writer/object.rb lib/pdf/writer/object/image.rb External lib/pdf/writer/object/font.rb lib/pdf/writer/object/outlines.rb lib/pdf/writer/object/contents.rb lib/pdf/writer/object/annotation.rb lib/pdf/writer/object/destination.rb lib/pdf/writer/object/viewerpreferences.rb lib/pdf/writer/object/info.rb lib/pdf/writer/object/fontencoding.rb lib/pdf/writer/object/page.rb lib/pdf/writer/object/catalog.rb lib/pdf/writer/object/outline.rb lib/pdf/writer/object/encryption.rb lib/pdf/writer/object/procset.rb lib/pdf/writer/object/action.rb lib/pdf/writer/object/pages.rb lib/pdf/writer/object/fontdescriptor.rb Object OffsetReader EN Lang lib/pdf/writer/graphics/imageinfo.rb Graphics Writer PDF dot/m_33_0.png

Define the document information — metadata.

Methods

new   to_s  

Constants

Info = %w{CreationDate Creator Title Author Subject Keywords ModDate Trapped Producer}

Public Class methods

[Source]

    # File lib/pdf/writer/object/info.rb, line 14
14:   def initialize(parent)
15:     super(parent)
16: 
17:     @parent.instance_variable_set('@info', self)
18:     @creationdate = Time.now
19: 
20:     @creator  = File.basename($0)
21:     @producer = "PDF::Writer for Ruby"
22:     @title    = nil
23:     @author   = nil
24:     @subject  = nil
25:     @keywords = nil
26:     @moddate  = nil
27:     @trapped  = nil
28:   end

Public Instance methods

[Source]

    # File lib/pdf/writer/object/info.rb, line 34
34:   def to_s
35:     res = "\n#{@oid} 0 obj\n<<\n"
36:     Info.each do |i|
37:       v = __send__("#{i.downcase}".intern)
38:       next if v.nil?
39:       res << "/#{i} ("
40:       if v.kind_of?(Time)
41:         s = "D:%04d%02d%02d%02d%02d"
42:         v = v.utc
43:         v = s % [ v.year, v.month, v.day, v.hour, v.min ]
44:       end
45: 
46:       res << PDF::Writer.escape(v)
47:       res << ")\n"
48:     end
49:     res << ">>\nendobj"
50:   end

[Validate]