Class: Pdfrb::Model::Type::LineEndingStyling

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

Overview

LineEndingStyling (s12.5.5). /LE array of line-ending styles (None, OpenArrow, ClosedArrow, Butt, Diamond, Square, etc.).

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

#has_arrows?Boolean

Returns:

  • (Boolean)


32
33
34
35
# File 'lib/pdfrb/model/type/line_ending_styling.rb', line 32

def has_arrows?
  [:OpenArrow, :ClosedArrow].include?(line_start&.to_sym) ||
    [:OpenArrow, :ClosedArrow].include?(line_end&.to_sym)
end

#line_endObject



21
22
23
24
25
26
# File 'lib/pdfrb/model/type/line_ending_styling.rb', line 21

def line_end
  return nil unless line_endings

  arr = line_endings.is_a?(Pdfrb::Model::PdfArray) ? line_endings.to_a : line_endings
  arr.is_a?(Array) ? arr[1] : nil
end

#line_endingsObject



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

def line_endings; self[:LE]; end

#line_startObject



14
15
16
17
18
19
# File 'lib/pdfrb/model/type/line_ending_styling.rb', line 14

def line_start
  return nil unless line_endings

  arr = line_endings.is_a?(Pdfrb::Model::PdfArray) ? line_endings.to_a : line_endings
  arr.is_a?(Array) ? arr[0] : nil
end

#symmetric?Boolean

Returns:

  • (Boolean)


28
29
30
# File 'lib/pdfrb/model/type/line_ending_styling.rb', line 28

def symmetric?
  line_start == line_end
end

#typeObject



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

def type; self[:Type]; end