Class: Pdfrb::Model::Type::XRefStream
Overview
Cross-reference stream (s7.5.8, PDF 1.5+). Doubles as the
trailer dict in PDF 1.5+ documents.
Instance Attribute Summary
Attributes inherited from Cos::Stream
#stream
Attributes inherited from Object
#document, #gen, #oid, #value
Instance Method Summary
collapse
Methods inherited from Cos::Stream
#decoded_stream, #encoded_stream=, #initialize
#[], #[]=, arlington_available?, arlington_default, arlington_key_to_symbol, arlington_loaded_for?, arlington_mark_loaded, arlington_object, arlington_one_type_to_ruby, arlington_required?, arlington_types_to_ruby, arlington_version, define_field, define_field_from_arlington, #delete, #each, each_field, #each_raw, #empty?, field, #initialize, #key?, #keys, lookup_type, own_fields, #pdf_type, register_type, type_map, #validate
Methods inherited from Object
#==, define_type, #deref, #indirect?, #initialize, #must_be_indirect?, #pdf_type, pdf_type
Instance Method Details
16
|
# File 'lib/pdfrb/model/type/xref_stream.rb', line 16
def encrypt; self[:Encrypt]; end
|
#encrypted? ⇒ Boolean
23
24
25
|
# File 'lib/pdfrb/model/type/xref_stream.rb', line 23
def encrypted?
!!encrypt
end
|
#field_widths ⇒ Object
31
32
33
34
35
36
37
38
|
# File 'lib/pdfrb/model/type/xref_stream.rb', line 31
def field_widths
return [0, 0, 0] unless w
arr = w.is_a?(Pdfrb::Model::PdfArray) ? w.to_a : w
return [0, 0, 0] unless arr.is_a?(Array) && arr.size == 3
arr
end
|
21
|
# File 'lib/pdfrb/model/type/xref_stream.rb', line 21
def filter; self[:Filter]; end
|
18
|
# File 'lib/pdfrb/model/type/xref_stream.rb', line 18
def id; self[:ID]; end
|
#incremental? ⇒ Boolean
27
28
29
|
# File 'lib/pdfrb/model/type/xref_stream.rb', line 27
def incremental?
!!prev
end
|
20
|
# File 'lib/pdfrb/model/type/xref_stream.rb', line 20
def index; self[:Index]; end
|
17
|
# File 'lib/pdfrb/model/type/xref_stream.rb', line 17
def info; self[:Info]; end
|
14
|
# File 'lib/pdfrb/model/type/xref_stream.rb', line 14
def prev; self[:Prev]; end
|
15
|
# File 'lib/pdfrb/model/type/xref_stream.rb', line 15
def root; self[:Root]; end
|
13
|
# File 'lib/pdfrb/model/type/xref_stream.rb', line 13
def size; self[:Size]; end
|
#subsection_index ⇒ Object
40
41
42
43
44
45
46
47
|
# File 'lib/pdfrb/model/type/xref_stream.rb', line 40
def subsection_index
return [[0, size || 0]] unless index
arr = index.is_a?(Pdfrb::Model::PdfArray) ? index.to_a : index
return [[0, size || 0]] unless arr.is_a?(Array)
arr.each_slice(2).to_a
end
|
12
|
# File 'lib/pdfrb/model/type/xref_stream.rb', line 12
def type; self[:Type]; end
|
19
|
# File 'lib/pdfrb/model/type/xref_stream.rb', line 19
def w; self[:W]; end
|