pdfrb 0.7.22 → 0.7.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 06bcf184cd873b50571015f1848d43e3692c041d98bd278237b86d06f79d14c0
4
- data.tar.gz: 768be65b94d3a987e83278429a765563974ee95cd7125ca05d9a0b9a303074c8
3
+ metadata.gz: c7f4bfdd940c5efb31509b47b458c221611bd9fab8e65f45c3c5f0d4a55af63e
4
+ data.tar.gz: ca8423b413d1c1c22387df07f0cb8deac73549b3be0b944cfbe96600b43a146c
5
5
  SHA512:
6
- metadata.gz: 912a23d9b0d4e2b122ea255214dc4d443ee0233d592ed483cea6a12c5ff60ec52db59a183edb8790b8b4acc50badfef728da2de56028fef8df5c58fd507e0d04
7
- data.tar.gz: ec728839ee2d5db65428b681aa0bc41dd7613569e3baca4adea7e197e5388f64440342547ef2e538b2568a3bab3bce12f0ec584a6165b867f36bf20c676941b6
6
+ metadata.gz: e047623b3eb1d875605e7582e56c11c38c963acef221ac017f977e9c875efc291081c2fe7f66d8ed27b1bbe5f76cf75770f8605288c89a98157d90102b2c3f9c
7
+ data.tar.gz: a072c1ca23b1e030a276f8dc15483ef26d852b5889bd8896d1b6f22efcaab0e2a772c132fa14405a99d301649e4447e9dcf28133279ea592a1f297f115a4caad
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pdfrb
4
+ module Model
5
+ module Type
6
+ # GoToE action (s12.6.4.4, PDF 1.6). Navigate to a destination in
7
+ # an embedded PDF file.
8
+ class ActionGoToE < Action
9
+ arlington_object "ActionGoToE"
10
+ register_subtype :GoToE
11
+
12
+ def target_file; self[:F]; end
13
+ def destination; self[:D]; end
14
+ def new_window; self[:NewWindow]; end
15
+ def target; self[:T]; end
16
+
17
+ def new_window?
18
+ new_window == true
19
+ end
20
+
21
+ def targets_embedded_file?
22
+ !target_file.nil?
23
+ end
24
+
25
+ def named_destination?
26
+ destination.is_a?(Symbol) || destination.is_a?(String)
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -6,11 +6,12 @@ module Pdfrb
6
6
  # RichMediaExecute action (s12.6.4.12, PDF 2.0). Execute a
7
7
  # command on a RichMedia annotation.
8
8
  class ActionRichMediaExecute < Action
9
+ arlington_object "ActionRichMediaExecute"
9
10
  register_subtype :RichMediaExecute
10
11
 
11
12
  def target; self[:TA]; end
12
- def instance; self[:Instance]; end
13
- def arguments; self[:Args]; end
13
+ def instance; self[:TI]; end
14
+ def command; self[:CMD]; end
14
15
  end
15
16
  end
16
17
  end
@@ -5,6 +5,7 @@ module Pdfrb
5
5
  module Type
6
6
  # Thread action (s12.6.4.6). Navigate within an article thread.
7
7
  class ActionThread < Action
8
+ arlington_object "ActionThread"
8
9
  register_subtype :Thread
9
10
 
10
11
  def thread; self[:F]; end
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pdfrb
4
+ module Model
5
+ module Type
6
+ # Additional Actions for interactive form fields (s12.6.3.17,
7
+ # Table 199). All four triggers carry JavaScript actions.
8
+ class AddActionFormField < Pdfrb::Model::Cos::Dictionary
9
+ arlington_object "AddActionFormField"
10
+
11
+ # /K — keystroke: format before committing a changed value.
12
+ def on_keystroke(document = nil)
13
+ resolve_action(:K, document)
14
+ end
15
+
16
+ # /F — format: reformat after a new value is committed.
17
+ def on_format(document = nil)
18
+ resolve_action(:F, document)
19
+ end
20
+
21
+ # /V — validate (recalculate) after the field value changes.
22
+ def on_validate(document = nil)
23
+ resolve_action(:V, document)
24
+ end
25
+
26
+ # /C — recalculate when another field changes.
27
+ def on_calculate(document = nil)
28
+ resolve_action(:C, document)
29
+ end
30
+
31
+ private
32
+
33
+ def resolve_action(key, document)
34
+ ref = value[key]
35
+ return nil unless ref && document
36
+
37
+ ref.is_a?(Pdfrb::Model::Reference) ? document.object(ref) : ref
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,62 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pdfrb
4
+ module Model
5
+ module Type
6
+ # Additional Actions for screen annotations (s12.6.3.17, PDF 1.5).
7
+ # Media events on the screen's region.
8
+ class AddActionScreenAnnotation < Pdfrb::Model::Cos::Dictionary
9
+ arlington_object "AddActionScreenAnnotation"
10
+
11
+ # /E — cursor enters the screen region.
12
+ def on_cursor_enter(document = nil)
13
+ resolve_action(:E, document)
14
+ end
15
+
16
+ # /X — cursor exits the screen region.
17
+ def on_cursor_exit(document = nil)
18
+ resolve_action(:X, document)
19
+ end
20
+
21
+ # /D — mouse button pressed inside.
22
+ def on_mouse_down(document = nil)
23
+ resolve_action(:D, document)
24
+ end
25
+
26
+ # /U — mouse button released inside.
27
+ def on_mouse_up(document = nil)
28
+ resolve_action(:U, document)
29
+ end
30
+
31
+ # /PO — page containing the screen is opened.
32
+ def on_page_open(document = nil)
33
+ resolve_action(:PO, document)
34
+ end
35
+
36
+ # /PC — page containing the screen is closed.
37
+ def on_page_close(document = nil)
38
+ resolve_action(:PC, document)
39
+ end
40
+
41
+ # /PV — screen becomes visible.
42
+ def on_visible(document = nil)
43
+ resolve_action(:PV, document)
44
+ end
45
+
46
+ # /PI — screen becomes invisible.
47
+ def on_invisible(document = nil)
48
+ resolve_action(:PI, document)
49
+ end
50
+
51
+ private
52
+
53
+ def resolve_action(key, document)
54
+ ref = value[key]
55
+ return nil unless ref && document
56
+
57
+ ref.is_a?(Pdfrb::Model::Reference) ? document.object(ref) : ref
58
+ end
59
+ end
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,72 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pdfrb
4
+ module Model
5
+ module Type
6
+ # Additional Actions for widget annotations (s12.6.3.17, PDF 1.2).
7
+ # Mouse, focus, and page events on the widget's region.
8
+ class AddActionWidgetAnnotation < Pdfrb::Model::Cos::Dictionary
9
+ arlington_object "AddActionWidgetAnnotation"
10
+
11
+ # /E — cursor enters the widget's region.
12
+ def on_cursor_enter(document = nil)
13
+ resolve_action(:E, document)
14
+ end
15
+
16
+ # /X — cursor exits the widget's region.
17
+ def on_cursor_exit(document = nil)
18
+ resolve_action(:X, document)
19
+ end
20
+
21
+ # /D — mouse button pressed inside.
22
+ def on_mouse_down(document = nil)
23
+ resolve_action(:D, document)
24
+ end
25
+
26
+ # /U — mouse button released inside.
27
+ def on_mouse_up(document = nil)
28
+ resolve_action(:U, document)
29
+ end
30
+
31
+ # /Fo — widget receives input focus.
32
+ def on_focus(document = nil)
33
+ resolve_action(:Fo, document)
34
+ end
35
+
36
+ # /Bl — widget loses input focus.
37
+ def on_blur(document = nil)
38
+ resolve_action(:Bl, document)
39
+ end
40
+
41
+ # /PO — page containing the widget is opened.
42
+ def on_page_open(document = nil)
43
+ resolve_action(:PO, document)
44
+ end
45
+
46
+ # /PC — page containing the widget is closed.
47
+ def on_page_close(document = nil)
48
+ resolve_action(:PC, document)
49
+ end
50
+
51
+ # /PV — widget becomes visible.
52
+ def on_visible(document = nil)
53
+ resolve_action(:PV, document)
54
+ end
55
+
56
+ # /PI — widget becomes invisible.
57
+ def on_invisible(document = nil)
58
+ resolve_action(:PI, document)
59
+ end
60
+
61
+ private
62
+
63
+ def resolve_action(key, document)
64
+ ref = value[key]
65
+ return nil unless ref && document
66
+
67
+ ref.is_a?(Pdfrb::Model::Reference) ? document.object(ref) : ref
68
+ end
69
+ end
70
+ end
71
+ end
72
+ end
@@ -6,7 +6,7 @@ module Pdfrb
6
6
  # AppearanceTrapNet sub-dictionary (s7.7.3.3, Table 327). Per-
7
7
  # appearance-stream trap-net (ink-flattening) parameters.
8
8
  class AppearanceTrapNetSubDict < Pdfrb::Model::Cos::Dictionary
9
- arlington_object "AppearanceTrapNet"
9
+ arlington_object "AppearanceTrapNetSubDict"
10
10
  def pos_h; self[:PosH]; end
11
11
  def pos_l; self[:PosL]; end
12
12
  def span_h_min; self[:SpanH]; end
@@ -19,8 +19,13 @@ module Pdfrb
19
19
  end
20
20
 
21
21
  # AppearanceTrapNet (s7.7.3.3). The trap-net dictionary that wraps
22
- # appearance sub-dicts.
22
+ # appearance sub-dicts (/N, /R, /D).
23
23
  class AppearanceTrapNet < Pdfrb::Model::Cos::Dictionary
24
+ arlington_object "AppearanceTrapNet"
25
+ def normal; self[:N]; end
26
+ def rollover; self[:R]; end
27
+ def down; self[:D]; end
28
+
24
29
  def type; self[:Type]; end
25
30
  def version; self[:Version]; end
26
31
  def font_state_appearance; self[:FontStateAppearance]; end
@@ -41,6 +46,7 @@ module Pdfrb
41
46
  # AppearanceSubDict (s12.5.4). Sub-dictionary inside Appearance
42
47
  # entries /N, /R, /D that maps each appearance state to a stream.
43
48
  class AppearanceSubDict < Pdfrb::Model::Cos::Dictionary
49
+ arlington_object "AppearanceSubDict"
44
50
  def each_state(&block)
45
51
  return enum_for(:each_state) unless block
46
52
 
@@ -64,22 +70,6 @@ module Pdfrb
64
70
  !!app_build
65
71
  end
66
72
  end
67
-
68
- # Annotation Projection dict (s12.5.6.21). Projection annotation
69
- # for spatial content.
70
- class AnnotationProjectionDict < Pdfrb::Model::Cos::Dictionary
71
- def ex_data; self[:ExData]; end
72
- end
73
-
74
- # ExData Projection dict (s12.5.6.21, Table 198). Holds the
75
- # geospatial projection details used by Projection annotations.
76
- class ExDataProjection < Pdfrb::Model::Cos::Dictionary
77
- def type; self[:Type]; end
78
-
79
- def project?
80
- type == :ProjectedPDL
81
- end
82
- end
83
73
  end
84
74
  end
85
75
  end
@@ -7,6 +7,7 @@ module Pdfrb
7
7
  # collection of embedded files with a presentation schema. Lives
8
8
  # on Catalog /Collection.
9
9
  class Collection < Pdfrb::Model::Cos::Dictionary
10
+ arlington_object "Collection"
10
11
  def schema; self[:Schema]; end
11
12
  def default_view; self[:View]; end
12
13
  def sort; self[:Sort]; end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pdfrb
4
+ module Model
5
+ module Type
6
+ # Collection colors (s7.11.5, PDF 1.7 Adobe extension level 3).
7
+ # UI color scheme for the portfolio view; each value is a 0..1 RGB
8
+ # or Gray component array.
9
+ class CollectionColors < Pdfrb::Model::Cos::Dictionary
10
+ arlington_object "CollectionColors"
11
+
12
+ def background; self[:Background]; end
13
+ def card_background; self[:CardBackground]; end
14
+ def card_border; self[:CardBorder]; end
15
+ def primary_text; self[:PrimaryText]; end
16
+ def secondary_text; self[:SecondaryText]; end
17
+
18
+ def gray_background?
19
+ components(background) == 1
20
+ end
21
+
22
+ def rgb_background?
23
+ components(background) == 3
24
+ end
25
+
26
+ private
27
+
28
+ def components(color)
29
+ return 0 if color.nil?
30
+
31
+ color.is_a?(Pdfrb::Model::PdfArray) ? color.to_a.size : 0
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -5,6 +5,7 @@ module Pdfrb
5
5
  module Type
6
6
  # Collection field (s7.11.5). One column definition.
7
7
  class CollectionField < Pdfrb::Model::Cos::Dictionary
8
+ arlington_object "CollectionField"
8
9
  def name; self[:N]; end
9
10
  def field_type; self[:Subtype]; end
10
11
  def order; self[:O]; end
@@ -0,0 +1,33 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pdfrb
4
+ module Model
5
+ module Type
6
+ # Collection folder (s7.11.5, PDF 1.7 Adobe extension level 3).
7
+ # A folder node in the portfolio's folder hierarchy.
8
+ class CollectionFolder < Pdfrb::Model::Cos::Dictionary
9
+ arlington_object "CollectionFolder"
10
+
11
+ def id; self[:ID]; end
12
+ def name; self[:Name]; end
13
+ def parent; self[:Parent]; end
14
+ def child; self[:Child]; end
15
+ def next_folder; self[:Next]; end
16
+ def collection_item; self[:CI]; end
17
+ def description; self[:Desc]; end
18
+ def creation_date; self[:CreationDate]; end
19
+ def modified_date; self[:ModDate]; end
20
+ def thumbnail; self[:Thumb]; end
21
+ def free; self[:Free]; end
22
+
23
+ def root_folder?
24
+ parent.nil?
25
+ end
26
+
27
+ def has_children?
28
+ !child.nil?
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -6,6 +6,7 @@ module Pdfrb
6
6
  # Collection item (s7.11.5). Per-embedded-file values for the
7
7
  # schema fields.
8
8
  class CollectionItem < Pdfrb::Model::Cos::Dictionary
9
+ arlington_object "CollectionItem"
9
10
  def value_for(field_name)
10
11
  self[field_name.to_sym] || self[field_name.to_s]
11
12
  end
@@ -6,6 +6,7 @@ module Pdfrb
6
6
  # Collection schema (s7.11.5). Defines the columns/fields shown
7
7
  # in the portfolio view.
8
8
  class CollectionSchema < Pdfrb::Model::Cos::Dictionary
9
+ arlington_object "CollectionSchema"
9
10
  def fields
10
11
  value.keys
11
12
  end
@@ -5,6 +5,7 @@ module Pdfrb
5
5
  module Type
6
6
  # Collection sort (s7.11.5). Defines default sort order.
7
7
  class CollectionSort < Pdfrb::Model::Cos::Dictionary
8
+ arlington_object "CollectionSort"
8
9
  def field_name; self[:S]; end
9
10
  def descending?; truthy?(self[:A]); end
10
11
  end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pdfrb
4
+ module Model
5
+ module Type
6
+ # Collection split (s7.11.5, PDF 1.7 Adobe extension level 3).
7
+ # Where the portfolio view places the split between panels.
8
+ class CollectionSplit < Pdfrb::Model::Cos::Dictionary
9
+ arlington_object "CollectionSplit"
10
+
11
+ def direction; self[:Direction]; end
12
+ def position; self[:Position]; end
13
+
14
+ def vertical?
15
+ direction == :V
16
+ end
17
+
18
+ def horizontal?
19
+ direction == :H
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pdfrb
4
+ module Model
5
+ module Type
6
+ # Collection subitem (s7.11.5, PDF 1.7 Adobe extension level 3).
7
+ # Assigns one embedded file to a folder via the folder's /P path
8
+ # and the /D display value.
9
+ class CollectionSubitem < Pdfrb::Model::Cos::Dictionary
10
+ arlington_object "CollectionSubitem"
11
+
12
+ def display_value; self[:D]; end
13
+ def parent_folder_path; self[:P]; end
14
+
15
+ def numeric_display?
16
+ display_value.is_a?(Numeric)
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pdfrb
4
+ module Model
5
+ module Type
6
+ # Movie annotation (s12.5.6.14). /Subtype /Movie. Plays a Movie
7
+ # when activated.
8
+ class MovieAnnotation < Annotation
9
+ arlington_object "AnnotMovie"
10
+
11
+ def movie; self[:Movie]; end
12
+ def action; self[:A]; end
13
+ def title; self[:T]; end
14
+
15
+ def has_movie?
16
+ !movie.nil?
17
+ end
18
+
19
+ def uses_action?
20
+ !action.nil?
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pdfrb
4
+ module Model
5
+ module Type
6
+ # Projection annotation (s12.5.6.19, PDF 1.7+AdobeExt). Projects
7
+ # a duplicate of a region of a page with a modified appearance.
8
+ class ProjectionAnnotation < MarkupAnnotation
9
+ arlington_object "AnnotProjection"
10
+
11
+ def title; self[:T]; end
12
+ def popup; self[:Popup]; end
13
+ def rich_contents; self[:RC]; end
14
+ def creation_date; self[:CreationDate]; end
15
+ def in_reply_to; self[:IRT]; end
16
+ def subject; self[:Subj]; end
17
+ def reply_type; self[:RT]; end
18
+ def intent; self[:IT]; end
19
+ def ex_data; self[:ExData]; end
20
+
21
+ def has_projection_data?
22
+ !ex_data.nil?
23
+ end
24
+ end
25
+
26
+ # Annotation Projection dict (s12.5.6.21). Projection annotation
27
+ # for spatial content.
28
+ class AnnotationProjectionDict < Pdfrb::Model::Cos::Dictionary
29
+ def ex_data; self[:ExData]; end
30
+ end
31
+
32
+ # ExData Projection dict (s12.5.6.21, Table 198). Holds the
33
+ # geospatial projection details used by Projection annotations.
34
+ class ExDataProjection < Pdfrb::Model::Cos::Dictionary
35
+ def type; self[:Type]; end
36
+
37
+ def project?
38
+ type == :ProjectedPDL
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,33 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pdfrb
4
+ module Model
5
+ module Type
6
+ # 3D annotation (s13.6.2, PDF 1.6+). /Subtype /3D. Hosts a 3D
7
+ # artwork stream, activation behaviour, and viewing state.
8
+ class ThreeDAnnotation < Annotation
9
+ arlington_object "Annot3D"
10
+
11
+ def artwork; self[:"3DD"]; end
12
+ def default_view; self[:"3DV"]; end
13
+ def activation; self[:"3DA"]; end
14
+ def interactive; self[:"3DI"]; end
15
+ def view_box; self[:"3DB"]; end
16
+ def units; self[:"3DU"]; end
17
+ def geometry; self[:GEO]; end
18
+
19
+ def interactive?
20
+ interactive == true
21
+ end
22
+
23
+ def has_measure?
24
+ !geometry.nil?
25
+ end
26
+
27
+ def default_view_name?
28
+ default_view.is_a?(Symbol) || default_view.is_a?(String)
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Pdfrb
4
+ module Model
5
+ module Type
6
+ # Trap network annotation (s14.11.5). Marks the extent of the
7
+ # trap network applied by a prepress system. Its appearance
8
+ # stream carries per-colorant trap parameters.
9
+ class TrapNetworkAnnotation < MarkupAnnotation
10
+ arlington_object "AnnotTrapNetwork"
11
+
12
+ def last_modified; self[:LastModified]; end
13
+ def version; self[:Version]; end
14
+ def annot_states; self[:AnnotStates]; end
15
+ def font_fauxing; self[:FontFauxing]; end
16
+
17
+ def annot_states?
18
+ !annot_states.nil?
19
+ end
20
+
21
+ def fauxed_font_names
22
+ fonts = font_fauxing
23
+ fonts.is_a?(Pdfrb::Model::PdfArray) ? fonts.to_a : fonts
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -201,6 +201,10 @@ module Pdfrb
201
201
  autoload :PrinterMarkSubDict, "pdfrb/model/type/transition"
202
202
  autoload :ScreenAnnotation, "pdfrb/model/type/screen_annotation"
203
203
  autoload :SoundAnnotation, "pdfrb/model/type/sound_annotation"
204
+ autoload :ThreeDAnnotation, "pdfrb/model/type/three_d_annotation"
205
+ autoload :MovieAnnotation, "pdfrb/model/type/movie_annotation"
206
+ autoload :ProjectionAnnotation, "pdfrb/model/type/projection_annotation"
207
+ autoload :TrapNetworkAnnotation, "pdfrb/model/type/trap_network_annotation"
204
208
 
205
209
  # Rich Media annotation family (s13.6).
206
210
  autoload :RichMediaAnnotation, "pdfrb/model/type/rich_media_annotation"
@@ -270,6 +274,7 @@ module Pdfrb
270
274
  autoload :ActionGoTo3DView, "pdfrb/model/type/action_go_to_3d_view"
271
275
  autoload :ActionGoToDp, "pdfrb/model/type/action_go_to_dp"
272
276
  autoload :ActionRichMediaExecute, "pdfrb/model/type/action_rich_media_execute"
277
+ autoload :ActionGoToE, "pdfrb/model/type/action_go_to_e"
273
278
  autoload :ActionNOP, "pdfrb/model/type/action_nop"
274
279
 
275
280
  # Signature family (s12.8).
@@ -286,8 +291,8 @@ module Pdfrb
286
291
  autoload :AppearanceSubDict, "pdfrb/model/type/appearance_trap_net"
287
292
  autoload :MediaClip, "pdfrb/model/type/media_clip"
288
293
  autoload :Rendition, "pdfrb/model/type/rendition"
289
- autoload :ExDataProjection, "pdfrb/model/type/appearance_trap_net"
290
- autoload :AnnotationProjectionDict, "pdfrb/model/type/appearance_trap_net"
294
+ autoload :ExDataProjection, "pdfrb/model/type/projection_annotation"
295
+ autoload :AnnotationProjectionDict, "pdfrb/model/type/projection_annotation"
291
296
 
292
297
  # Media offset / player / screen types.
293
298
  autoload :MediaOffsetTime, "pdfrb/model/type/media_offset"
@@ -332,6 +337,10 @@ module Pdfrb
332
337
  autoload :CollectionSort, "pdfrb/model/type/collection_sort"
333
338
  autoload :CollectionField, "pdfrb/model/type/collection_field"
334
339
  autoload :CollectionItem, "pdfrb/model/type/collection_item"
340
+ autoload :CollectionColors, "pdfrb/model/type/collection_colors"
341
+ autoload :CollectionFolder, "pdfrb/model/type/collection_folder"
342
+ autoload :CollectionSplit, "pdfrb/model/type/collection_split"
343
+ autoload :CollectionSubitem, "pdfrb/model/type/collection_subitem"
335
344
 
336
345
  # Signature transform parameters (s12.8.2).
337
346
  autoload :MDPDict, "pdfrb/model/type/mdp_dict"
@@ -405,6 +414,12 @@ module Pdfrb
405
414
  # Additional actions on page objects (s12.6.3.16).
406
415
  autoload :AddActionPageObject, "pdfrb/model/type/add_action_page_object"
407
416
 
417
+ # Additional actions on form fields / screen + widget annotations
418
+ # (s12.6.3.17).
419
+ autoload :AddActionFormField, "pdfrb/model/type/add_action_form_field"
420
+ autoload :AddActionScreenAnnotation, "pdfrb/model/type/add_action_screen_annotation"
421
+ autoload :AddActionWidgetAnnotation, "pdfrb/model/type/add_action_widget_annotation"
422
+
408
423
  # Border style (s12.5.4). BorderEffect lives in its own file.
409
424
  autoload :BorderStyle, "pdfrb/model/type/border_style"
410
425
  autoload :BorderEffect, "pdfrb/model/type/border_effect"
data/lib/pdfrb/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Pdfrb
4
- VERSION = "0.7.22"
4
+ VERSION = "0.7.24"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pdfrb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.22
4
+ version: 0.7.24
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2026-08-18 00:00:00.000000000 Z
11
+ date: 2026-08-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -956,6 +956,7 @@ files:
956
956
  - lib/pdfrb/model/type/action.rb
957
957
  - lib/pdfrb/model/type/action_go_to_3d_view.rb
958
958
  - lib/pdfrb/model/type/action_go_to_dp.rb
959
+ - lib/pdfrb/model/type/action_go_to_e.rb
959
960
  - lib/pdfrb/model/type/action_go_to_r.rb
960
961
  - lib/pdfrb/model/type/action_goto.rb
961
962
  - lib/pdfrb/model/type/action_hide.rb
@@ -977,7 +978,10 @@ files:
977
978
  - lib/pdfrb/model/type/action_trans.rb
978
979
  - lib/pdfrb/model/type/action_uri.rb
979
980
  - lib/pdfrb/model/type/add_action_catalog.rb
981
+ - lib/pdfrb/model/type/add_action_form_field.rb
980
982
  - lib/pdfrb/model/type/add_action_page_object.rb
983
+ - lib/pdfrb/model/type/add_action_screen_annotation.rb
984
+ - lib/pdfrb/model/type/add_action_widget_annotation.rb
981
985
  - lib/pdfrb/model/type/af_embedded_file.rb
982
986
  - lib/pdfrb/model/type/af_file_specification.rb
983
987
  - lib/pdfrb/model/type/alternate_image.rb
@@ -1003,10 +1007,14 @@ files:
1003
1007
  - lib/pdfrb/model/type/cid_system_info.rb
1004
1008
  - lib/pdfrb/model/type/circle_annotation.rb
1005
1009
  - lib/pdfrb/model/type/collection.rb
1010
+ - lib/pdfrb/model/type/collection_colors.rb
1006
1011
  - lib/pdfrb/model/type/collection_field.rb
1012
+ - lib/pdfrb/model/type/collection_folder.rb
1007
1013
  - lib/pdfrb/model/type/collection_item.rb
1008
1014
  - lib/pdfrb/model/type/collection_schema.rb
1009
1015
  - lib/pdfrb/model/type/collection_sort.rb
1016
+ - lib/pdfrb/model/type/collection_split.rb
1017
+ - lib/pdfrb/model/type/collection_subitem.rb
1010
1018
  - lib/pdfrb/model/type/crypt_filter.rb
1011
1019
  - lib/pdfrb/model/type/d_part.rb
1012
1020
  - lib/pdfrb/model/type/device_n.rb
@@ -1079,6 +1087,7 @@ files:
1079
1087
  - lib/pdfrb/model/type/metadata.rb
1080
1088
  - lib/pdfrb/model/type/misc_helpers.rb
1081
1089
  - lib/pdfrb/model/type/movie.rb
1090
+ - lib/pdfrb/model/type/movie_annotation.rb
1082
1091
  - lib/pdfrb/model/type/names.rb
1083
1092
  - lib/pdfrb/model/type/namespace.rb
1084
1093
  - lib/pdfrb/model/type/object_reference.rb
@@ -1105,6 +1114,7 @@ files:
1105
1114
  - lib/pdfrb/model/type/polyline_annotation.rb
1106
1115
  - lib/pdfrb/model/type/popup_annotation.rb
1107
1116
  - lib/pdfrb/model/type/printer_mark_annotation.rb
1117
+ - lib/pdfrb/model/type/projection_annotation.rb
1108
1118
  - lib/pdfrb/model/type/redact_annotation.rb
1109
1119
  - lib/pdfrb/model/type/rendition.rb
1110
1120
  - lib/pdfrb/model/type/resources.rb
@@ -1146,6 +1156,7 @@ files:
1146
1156
  - lib/pdfrb/model/type/thread.rb
1147
1157
  - lib/pdfrb/model/type/three_d_activation.rb
1148
1158
  - lib/pdfrb/model/type/three_d_animation_style.rb
1159
+ - lib/pdfrb/model/type/three_d_annotation.rb
1149
1160
  - lib/pdfrb/model/type/three_d_background.rb
1150
1161
  - lib/pdfrb/model/type/three_d_cross_section.rb
1151
1162
  - lib/pdfrb/model/type/three_d_lighting_scheme.rb
@@ -1165,6 +1176,7 @@ files:
1165
1176
  - lib/pdfrb/model/type/timespan.rb
1166
1177
  - lib/pdfrb/model/type/to_unicode_cmap_stream.rb
1167
1178
  - lib/pdfrb/model/type/transition.rb
1179
+ - lib/pdfrb/model/type/trap_network_annotation.rb
1168
1180
  - lib/pdfrb/model/type/trap_region.rb
1169
1181
  - lib/pdfrb/model/type/underline_annotation.rb
1170
1182
  - lib/pdfrb/model/type/ur_transform_parameters.rb