Class: Pdfrb::Model::Type::GraphicsStateParameter

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

Overview

Named graphics-state parameter (s8.4.3) referenced by gs operator. Fields: /Type, /LW, /LC, /LJ, /ML, /D, /RI, /SA, /BM, /SM, /CA, /ca, /AIS, /OP, /op, /OPM, /TK, /Font, /TR, /TR2, /HTO, /HTP, /HT, /FL, /UseBlackPtComp, /BG, /BG2, /UCR, /UCR2, /SMask, /HUk.

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

#alpha_source?Boolean

Returns:

  • (Boolean)


25
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 25

def alpha_source?; truthy?(self[:AIS]); end

#black_point_compensationObject



35
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 35

def black_point_compensation; self[:UseBlackPtComp]; end

#blend_modeObject



22
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 22

def blend_mode; self[:BM]; end

#dash_arrayObject



66
67
68
69
70
71
72
73
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 66

def dash_array
  return nil unless dash_pattern

  arr = dash_pattern.is_a?(Pdfrb::Model::PdfArray) ? dash_pattern.to_a : dash_pattern
  return nil unless arr.is_a?(Array) && arr.size >= 1

  arr[0]
end

#dash_patternObject



19
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 19

def dash_pattern; self[:D]; end

#dash_phaseObject



75
76
77
78
79
80
81
82
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 75

def dash_phase
  return nil unless dash_pattern

  arr = dash_pattern.is_a?(Pdfrb::Model::PdfArray) ? dash_pattern.to_a : dash_pattern
  return nil unless arr.is_a?(Array) && arr.size >= 2

  arr[1]
end

#flatnessObject



34
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 34

def flatness; self[:FL]; end

#fontObject



30
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 30

def font; self[:Font]; end

#font_nameObject



38
39
40
41
42
43
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 38

def font_name
  return nil unless font

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

#font_sizeObject



45
46
47
48
49
50
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 45

def font_size
  return nil unless font

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

#halftoneObject



33
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 33

def halftone; self[:HT]; end

#has_font?Boolean

Returns:

  • (Boolean)


62
63
64
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 62

def has_font?
  !!font
end

#has_soft_mask?Boolean

Returns:

  • (Boolean)


52
53
54
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 52

def has_soft_mask?
  !!soft_mask
end

#has_transparency?Boolean

Returns:

  • (Boolean)


56
57
58
59
60
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 56

def has_transparency?
  (stroking_alpha && stroking_alpha != 1) ||
    (nonstroking_alpha && nonstroking_alpha != 1) ||
    !!blend_mode || !!soft_mask
end

#line_capObject



16
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 16

def line_cap; self[:LC]; end

#line_joinObject



17
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 17

def line_join; self[:LJ]; end

#line_widthObject



15
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 15

def line_width; self[:LW]; end

#miter_limitObject



18
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 18

def miter_limit; self[:ML]; end

#nonstroking_alphaObject



24
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 24

def nonstroking_alpha; self[:ca]; end

#nonstroking_overprint?Boolean

Returns:

  • (Boolean)


27
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 27

def nonstroking_overprint?; truthy?(self[:op]); end

#overprint?Boolean

Returns:

  • (Boolean)


26
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 26

def overprint?; truthy?(self[:OP]); end

#overprint_modeObject



28
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 28

def overprint_mode; self[:OPM]; end

#rendering_intentObject



20
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 20

def rendering_intent; self[:RI]; end

#soft_maskObject



36
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 36

def soft_mask; self[:SMask]; end

#stroke_adjustment?Boolean

Returns:

  • (Boolean)


21
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 21

def stroke_adjustment?; truthy?(self[:SA]); end

#stroking_alphaObject



23
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 23

def stroking_alpha; self[:CA]; end

#text_knockout?Boolean

Returns:

  • (Boolean)


29
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 29

def text_knockout?; truthy?(self[:TK]); end

#transfer_functionObject



31
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 31

def transfer_function; self[:TR]; end

#transfer_function2Object



32
# File 'lib/pdfrb/model/type/graphics_state_parameter.rb', line 32

def transfer_function2; self[:TR2]; end