16: def initialize(parent, relative = nil)
17: super(parent)
18:
19: @parent.current_page = self
20: @owner = @parent.instance_variable_get('@current_node')
21: @page_number = @parent.pages.size
22: @contents = []
23:
24: if relative.nil?
25: @parent.pages << self
26: else
27: relative[:page] = self
28: @parent.pages.add(relative)
29: end
30:
31:
32: @contents << PDF::Writer::Object::Contents.new(@parent, self)
33: @parent.instance_variable_set('@current_contents', @contents[-1])
34: match = (@parent.pages.size % 2 == 0 ? :even_pages : :odd_pages)
35:
36: @parent.instance_variable_get('@add_loose_objects').each do |obj, target|
37: @contents << obj if target == :all_pages or match == target
38: end
39:
40: @annotations = []
41:
42: @media_box = nil
43: @crop_box = nil
44: @bleed_box = nil
45: @trim_box = nil
46: @art_box = nil
47: end