Class: Pdfrb::Model::Type::OptionalContentGroup

Inherits:
Cos::Dictionary show all
Defined in:
lib/pdfrb/model/type/optional_content_group.rb

Overview

Optional Content Group (s8.11.2). Layer toggle for PDF layers.

Instance Attribute Summary

Attributes inherited from Object

#document, #gen, #oid, #value

Instance Method Summary collapse

Methods inherited from Cos::Dictionary

#[], #[]=, 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

Constructor Details

This class inherits a constructor from Pdfrb::Model::Cos::Dictionary

Instance Method Details

#default_visible?Boolean

Returns:

  • (Boolean)


40
41
42
# File 'lib/pdfrb/model/type/optional_content_group.rb', line 40

def default_visible?
  usage && usage[:View] && usage[:View][:ViewState]&.to_sym == :ON
end

#export_intent?Boolean

Returns:

  • (Boolean)


32
33
34
35
36
37
38
# File 'lib/pdfrb/model/type/optional_content_group.rb', line 32

def export_intent?
  return false unless intent

  arr = intent.is_a?(Pdfrb::Model::PdfArray) ? intent.to_a : intent
  arr = [arr] unless arr.is_a?(Array)
  arr.map(&:to_sym).include?(:Export)
end

#has_usage?Boolean

Returns:

  • (Boolean)


44
45
46
# File 'lib/pdfrb/model/type/optional_content_group.rb', line 44

def has_usage?
  !!usage
end

#intentObject



13
# File 'lib/pdfrb/model/type/optional_content_group.rb', line 13

def intent; self[:Intent]; end

#nameObject



12
# File 'lib/pdfrb/model/type/optional_content_group.rb', line 12

def name; self[:Name]; end

Returns:

  • (Boolean)


24
25
26
27
28
29
30
# File 'lib/pdfrb/model/type/optional_content_group.rb', line 24

def print_intent?
  return false unless intent

  arr = intent.is_a?(Pdfrb::Model::PdfArray) ? intent.to_a : intent
  arr = [arr] unless arr.is_a?(Array)
  arr.map(&:to_sym).include?(:Print)
end

#typeObject



11
# File 'lib/pdfrb/model/type/optional_content_group.rb', line 11

def type; self[:Type]; end

#usageObject



14
# File 'lib/pdfrb/model/type/optional_content_group.rb', line 14

def usage; self[:Usage]; end

#view_intent?Boolean

Returns:

  • (Boolean)


16
17
18
19
20
21
22
# File 'lib/pdfrb/model/type/optional_content_group.rb', line 16

def view_intent?
  return true unless intent

  arr = intent.is_a?(Pdfrb::Model::PdfArray) ? intent.to_a : intent
  arr = [arr] unless arr.is_a?(Array)
  arr.map(&:to_sym).include?(:View)
end