hexapdf 1.7.0 → 1.8.0

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.
Files changed (271) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +23 -1
  3. data/LICENSE +1 -1
  4. data/examples/005-merging.rb +2 -1
  5. data/lib/hexapdf/cli/batch.rb +1 -1
  6. data/lib/hexapdf/cli/command.rb +1 -1
  7. data/lib/hexapdf/cli/debug_info.rb +1 -1
  8. data/lib/hexapdf/cli/files.rb +1 -1
  9. data/lib/hexapdf/cli/fonts.rb +6 -4
  10. data/lib/hexapdf/cli/form.rb +1 -1
  11. data/lib/hexapdf/cli/image2pdf.rb +1 -1
  12. data/lib/hexapdf/cli/images.rb +17 -17
  13. data/lib/hexapdf/cli/info.rb +1 -1
  14. data/lib/hexapdf/cli/inspect.rb +1 -1
  15. data/lib/hexapdf/cli/merge.rb +14 -2
  16. data/lib/hexapdf/cli/modify.rb +1 -1
  17. data/lib/hexapdf/cli/optimize.rb +1 -1
  18. data/lib/hexapdf/cli/split.rb +1 -1
  19. data/lib/hexapdf/cli/usage.rb +1 -1
  20. data/lib/hexapdf/cli/watermark.rb +1 -1
  21. data/lib/hexapdf/cli.rb +1 -1
  22. data/lib/hexapdf/composer.rb +1 -1
  23. data/lib/hexapdf/configuration.rb +2 -1
  24. data/lib/hexapdf/content/canvas.rb +1 -1
  25. data/lib/hexapdf/content/canvas_composer.rb +1 -1
  26. data/lib/hexapdf/content/color_space.rb +1 -1
  27. data/lib/hexapdf/content/graphic_object/arc.rb +1 -1
  28. data/lib/hexapdf/content/graphic_object/endpoint_arc.rb +1 -1
  29. data/lib/hexapdf/content/graphic_object/geom2d.rb +1 -1
  30. data/lib/hexapdf/content/graphic_object/solid_arc.rb +1 -1
  31. data/lib/hexapdf/content/graphic_object.rb +1 -1
  32. data/lib/hexapdf/content/graphics_state.rb +1 -1
  33. data/lib/hexapdf/content/operator.rb +1 -1
  34. data/lib/hexapdf/content/parser.rb +1 -1
  35. data/lib/hexapdf/content/processor.rb +1 -1
  36. data/lib/hexapdf/content/smart_text_extractor.rb +10 -4
  37. data/lib/hexapdf/content/transformation_matrix.rb +1 -1
  38. data/lib/hexapdf/content.rb +1 -1
  39. data/lib/hexapdf/data_dir.rb +1 -1
  40. data/lib/hexapdf/dictionary.rb +1 -1
  41. data/lib/hexapdf/dictionary_fields.rb +1 -1
  42. data/lib/hexapdf/digital_signature/cms_handler.rb +1 -1
  43. data/lib/hexapdf/digital_signature/handler.rb +1 -1
  44. data/lib/hexapdf/digital_signature/pkcs1_handler.rb +1 -1
  45. data/lib/hexapdf/digital_signature/signature.rb +1 -1
  46. data/lib/hexapdf/digital_signature/signatures.rb +1 -1
  47. data/lib/hexapdf/digital_signature/signing/default_handler.rb +1 -1
  48. data/lib/hexapdf/digital_signature/signing/signed_data_creator.rb +1 -1
  49. data/lib/hexapdf/digital_signature/signing/timestamp_handler.rb +1 -1
  50. data/lib/hexapdf/digital_signature/signing.rb +1 -1
  51. data/lib/hexapdf/digital_signature/verification_result.rb +1 -1
  52. data/lib/hexapdf/digital_signature.rb +1 -1
  53. data/lib/hexapdf/document/annotations.rb +1 -1
  54. data/lib/hexapdf/document/destinations.rb +1 -1
  55. data/lib/hexapdf/document/files.rb +1 -1
  56. data/lib/hexapdf/document/fonts.rb +1 -1
  57. data/lib/hexapdf/document/images.rb +1 -1
  58. data/lib/hexapdf/document/layout.rb +1 -1
  59. data/lib/hexapdf/document/metadata.rb +1 -1
  60. data/lib/hexapdf/document/pages.rb +1 -1
  61. data/lib/hexapdf/document.rb +1 -1
  62. data/lib/hexapdf/encryption/aes.rb +1 -1
  63. data/lib/hexapdf/encryption/arc4.rb +1 -1
  64. data/lib/hexapdf/encryption/fast_aes.rb +1 -1
  65. data/lib/hexapdf/encryption/fast_arc4.rb +1 -1
  66. data/lib/hexapdf/encryption/identity.rb +1 -1
  67. data/lib/hexapdf/encryption/ruby_aes.rb +1 -1
  68. data/lib/hexapdf/encryption/ruby_arc4.rb +1 -1
  69. data/lib/hexapdf/encryption/security_handler.rb +1 -1
  70. data/lib/hexapdf/encryption/standard_security_handler.rb +1 -1
  71. data/lib/hexapdf/encryption.rb +1 -1
  72. data/lib/hexapdf/error.rb +1 -1
  73. data/lib/hexapdf/filter/ascii85_decode.rb +1 -1
  74. data/lib/hexapdf/filter/ascii_hex_decode.rb +1 -1
  75. data/lib/hexapdf/filter/brotli_decode.rb +1 -1
  76. data/lib/hexapdf/filter/crypt.rb +1 -1
  77. data/lib/hexapdf/filter/encryption.rb +1 -1
  78. data/lib/hexapdf/filter/flate_decode.rb +1 -1
  79. data/lib/hexapdf/filter/lzw_decode.rb +1 -1
  80. data/lib/hexapdf/filter/pass_through.rb +1 -1
  81. data/lib/hexapdf/filter/predictor.rb +1 -1
  82. data/lib/hexapdf/filter/run_length_decode.rb +1 -1
  83. data/lib/hexapdf/filter.rb +1 -1
  84. data/lib/hexapdf/font/cmap/parser.rb +1 -1
  85. data/lib/hexapdf/font/cmap/writer.rb +1 -1
  86. data/lib/hexapdf/font/cmap.rb +1 -1
  87. data/lib/hexapdf/font/encoding/base.rb +1 -1
  88. data/lib/hexapdf/font/encoding/difference_encoding.rb +1 -1
  89. data/lib/hexapdf/font/encoding/glyph_list.rb +1 -1
  90. data/lib/hexapdf/font/encoding/mac_expert_encoding.rb +1 -1
  91. data/lib/hexapdf/font/encoding/mac_roman_encoding.rb +1 -1
  92. data/lib/hexapdf/font/encoding/standard_encoding.rb +1 -1
  93. data/lib/hexapdf/font/encoding/symbol_encoding.rb +1 -1
  94. data/lib/hexapdf/font/encoding/win_ansi_encoding.rb +1 -1
  95. data/lib/hexapdf/font/encoding/zapf_dingbats_encoding.rb +1 -1
  96. data/lib/hexapdf/font/encoding.rb +1 -1
  97. data/lib/hexapdf/font/invalid_glyph.rb +1 -1
  98. data/lib/hexapdf/font/true_type/builder.rb +1 -1
  99. data/lib/hexapdf/font/true_type/font.rb +1 -1
  100. data/lib/hexapdf/font/true_type/optimizer.rb +1 -1
  101. data/lib/hexapdf/font/true_type/subsetter.rb +4 -4
  102. data/lib/hexapdf/font/true_type/table/cmap.rb +1 -1
  103. data/lib/hexapdf/font/true_type/table/cmap_subtable.rb +1 -1
  104. data/lib/hexapdf/font/true_type/table/directory.rb +1 -1
  105. data/lib/hexapdf/font/true_type/table/glyf.rb +1 -1
  106. data/lib/hexapdf/font/true_type/table/head.rb +1 -1
  107. data/lib/hexapdf/font/true_type/table/hhea.rb +1 -1
  108. data/lib/hexapdf/font/true_type/table/hmtx.rb +1 -1
  109. data/lib/hexapdf/font/true_type/table/kern.rb +1 -1
  110. data/lib/hexapdf/font/true_type/table/loca.rb +1 -1
  111. data/lib/hexapdf/font/true_type/table/maxp.rb +1 -1
  112. data/lib/hexapdf/font/true_type/table/name.rb +1 -1
  113. data/lib/hexapdf/font/true_type/table/os2.rb +1 -1
  114. data/lib/hexapdf/font/true_type/table/post.rb +1 -1
  115. data/lib/hexapdf/font/true_type/table.rb +1 -1
  116. data/lib/hexapdf/font/true_type.rb +1 -1
  117. data/lib/hexapdf/font/true_type_wrapper.rb +3 -3
  118. data/lib/hexapdf/font/type1/afm_parser.rb +1 -1
  119. data/lib/hexapdf/font/type1/character_metrics.rb +1 -1
  120. data/lib/hexapdf/font/type1/font.rb +1 -1
  121. data/lib/hexapdf/font/type1/font_metrics.rb +1 -1
  122. data/lib/hexapdf/font/type1/pfb_parser.rb +1 -1
  123. data/lib/hexapdf/font/type1.rb +1 -1
  124. data/lib/hexapdf/font/type1_wrapper.rb +1 -1
  125. data/lib/hexapdf/font_loader/from_configuration.rb +1 -1
  126. data/lib/hexapdf/font_loader/from_file.rb +5 -1
  127. data/lib/hexapdf/font_loader/standard14.rb +1 -1
  128. data/lib/hexapdf/font_loader/variant_from_name.rb +1 -1
  129. data/lib/hexapdf/font_loader.rb +1 -1
  130. data/lib/hexapdf/image_loader/jpeg.rb +1 -1
  131. data/lib/hexapdf/image_loader/pdf.rb +1 -1
  132. data/lib/hexapdf/image_loader/png.rb +1 -1
  133. data/lib/hexapdf/image_loader.rb +1 -1
  134. data/lib/hexapdf/importer.rb +1 -1
  135. data/lib/hexapdf/layout/box.rb +1 -1
  136. data/lib/hexapdf/layout/box_fitter.rb +1 -1
  137. data/lib/hexapdf/layout/column_box.rb +1 -1
  138. data/lib/hexapdf/layout/container_box.rb +1 -1
  139. data/lib/hexapdf/layout/frame.rb +1 -1
  140. data/lib/hexapdf/layout/image_box.rb +1 -1
  141. data/lib/hexapdf/layout/inline_box.rb +1 -1
  142. data/lib/hexapdf/layout/line.rb +1 -1
  143. data/lib/hexapdf/layout/list_box.rb +1 -1
  144. data/lib/hexapdf/layout/numeric_refinements.rb +1 -1
  145. data/lib/hexapdf/layout/page_style.rb +1 -1
  146. data/lib/hexapdf/layout/style.rb +1 -1
  147. data/lib/hexapdf/layout/table_box.rb +1 -1
  148. data/lib/hexapdf/layout/text_box.rb +1 -1
  149. data/lib/hexapdf/layout/text_fragment.rb +1 -1
  150. data/lib/hexapdf/layout/text_layouter.rb +1 -1
  151. data/lib/hexapdf/layout/text_shaper.rb +1 -1
  152. data/lib/hexapdf/layout/width_from_polygon.rb +1 -1
  153. data/lib/hexapdf/layout.rb +1 -1
  154. data/lib/hexapdf/name_tree_node.rb +1 -1
  155. data/lib/hexapdf/number_tree_node.rb +1 -1
  156. data/lib/hexapdf/object.rb +1 -1
  157. data/lib/hexapdf/parser.rb +1 -1
  158. data/lib/hexapdf/pdf_array.rb +1 -1
  159. data/lib/hexapdf/rectangle.rb +1 -1
  160. data/lib/hexapdf/reference.rb +1 -1
  161. data/lib/hexapdf/revision.rb +1 -1
  162. data/lib/hexapdf/revisions.rb +1 -1
  163. data/lib/hexapdf/serializer.rb +3 -3
  164. data/lib/hexapdf/stream.rb +1 -1
  165. data/lib/hexapdf/task/dereference.rb +1 -1
  166. data/lib/hexapdf/task/import_pages.rb +185 -0
  167. data/lib/hexapdf/task/merge_acro_form.rb +1 -1
  168. data/lib/hexapdf/task/optimize.rb +1 -1
  169. data/lib/hexapdf/task/pdfa.rb +1 -1
  170. data/lib/hexapdf/task.rb +2 -1
  171. data/lib/hexapdf/test_utils.rb +1 -1
  172. data/lib/hexapdf/tokenizer.rb +1 -1
  173. data/lib/hexapdf/type/acro_form/appearance_generator.rb +1 -1
  174. data/lib/hexapdf/type/acro_form/button_field.rb +1 -1
  175. data/lib/hexapdf/type/acro_form/choice_field.rb +1 -1
  176. data/lib/hexapdf/type/acro_form/field.rb +1 -1
  177. data/lib/hexapdf/type/acro_form/form.rb +1 -1
  178. data/lib/hexapdf/type/acro_form/java_script_actions.rb +1 -1
  179. data/lib/hexapdf/type/acro_form/signature_field.rb +1 -1
  180. data/lib/hexapdf/type/acro_form/text_field.rb +1 -1
  181. data/lib/hexapdf/type/acro_form/variable_text_field.rb +1 -1
  182. data/lib/hexapdf/type/acro_form.rb +1 -1
  183. data/lib/hexapdf/type/action.rb +1 -1
  184. data/lib/hexapdf/type/actions/go_to.rb +1 -1
  185. data/lib/hexapdf/type/actions/go_to_r.rb +1 -1
  186. data/lib/hexapdf/type/actions/launch.rb +1 -1
  187. data/lib/hexapdf/type/actions/set_ocg_state.rb +1 -1
  188. data/lib/hexapdf/type/actions/uri.rb +1 -1
  189. data/lib/hexapdf/type/actions.rb +1 -1
  190. data/lib/hexapdf/type/annotation.rb +1 -1
  191. data/lib/hexapdf/type/annotations/appearance_generator.rb +1 -1
  192. data/lib/hexapdf/type/annotations/border_effect.rb +1 -1
  193. data/lib/hexapdf/type/annotations/border_styling.rb +1 -1
  194. data/lib/hexapdf/type/annotations/circle.rb +1 -1
  195. data/lib/hexapdf/type/annotations/interior_color.rb +1 -1
  196. data/lib/hexapdf/type/annotations/line.rb +1 -1
  197. data/lib/hexapdf/type/annotations/line_ending_styling.rb +1 -1
  198. data/lib/hexapdf/type/annotations/link.rb +1 -1
  199. data/lib/hexapdf/type/annotations/markup_annotation.rb +1 -1
  200. data/lib/hexapdf/type/annotations/polygon.rb +1 -1
  201. data/lib/hexapdf/type/annotations/polygon_polyline.rb +1 -1
  202. data/lib/hexapdf/type/annotations/polyline.rb +1 -1
  203. data/lib/hexapdf/type/annotations/square.rb +1 -1
  204. data/lib/hexapdf/type/annotations/square_circle.rb +1 -1
  205. data/lib/hexapdf/type/annotations/text.rb +1 -1
  206. data/lib/hexapdf/type/annotations/widget.rb +1 -1
  207. data/lib/hexapdf/type/annotations.rb +1 -1
  208. data/lib/hexapdf/type/catalog.rb +1 -1
  209. data/lib/hexapdf/type/cid_font.rb +1 -1
  210. data/lib/hexapdf/type/cmap.rb +1 -1
  211. data/lib/hexapdf/type/document_security_store.rb +1 -1
  212. data/lib/hexapdf/type/embedded_file.rb +1 -1
  213. data/lib/hexapdf/type/file_specification.rb +1 -1
  214. data/lib/hexapdf/type/font.rb +4 -4
  215. data/lib/hexapdf/type/font_descriptor.rb +1 -1
  216. data/lib/hexapdf/type/font_simple.rb +1 -1
  217. data/lib/hexapdf/type/font_true_type.rb +1 -1
  218. data/lib/hexapdf/type/font_type0.rb +1 -1
  219. data/lib/hexapdf/type/font_type1.rb +1 -1
  220. data/lib/hexapdf/type/font_type3.rb +6 -1
  221. data/lib/hexapdf/type/form.rb +1 -1
  222. data/lib/hexapdf/type/graphics_state_parameter.rb +1 -1
  223. data/lib/hexapdf/type/icon_fit.rb +1 -1
  224. data/lib/hexapdf/type/image.rb +1 -1
  225. data/lib/hexapdf/type/info.rb +1 -1
  226. data/lib/hexapdf/type/mark_information.rb +1 -1
  227. data/lib/hexapdf/type/marked_content_reference.rb +1 -1
  228. data/lib/hexapdf/type/measure.rb +1 -1
  229. data/lib/hexapdf/type/metadata.rb +1 -1
  230. data/lib/hexapdf/type/names.rb +1 -1
  231. data/lib/hexapdf/type/namespace.rb +1 -1
  232. data/lib/hexapdf/type/object_reference.rb +1 -1
  233. data/lib/hexapdf/type/object_stream.rb +1 -1
  234. data/lib/hexapdf/type/optional_content_configuration.rb +1 -1
  235. data/lib/hexapdf/type/optional_content_group.rb +1 -1
  236. data/lib/hexapdf/type/optional_content_membership.rb +1 -1
  237. data/lib/hexapdf/type/optional_content_properties.rb +1 -1
  238. data/lib/hexapdf/type/outline.rb +1 -1
  239. data/lib/hexapdf/type/outline_item.rb +1 -1
  240. data/lib/hexapdf/type/output_intent.rb +1 -1
  241. data/lib/hexapdf/type/page.rb +1 -1
  242. data/lib/hexapdf/type/page_label.rb +1 -1
  243. data/lib/hexapdf/type/page_tree_node.rb +1 -1
  244. data/lib/hexapdf/type/resources.rb +1 -1
  245. data/lib/hexapdf/type/struct_elem.rb +1 -1
  246. data/lib/hexapdf/type/struct_tree_root.rb +1 -1
  247. data/lib/hexapdf/type/trailer.rb +1 -1
  248. data/lib/hexapdf/type/viewer_preferences.rb +1 -1
  249. data/lib/hexapdf/type/xref_stream.rb +1 -1
  250. data/lib/hexapdf/type.rb +1 -1
  251. data/lib/hexapdf/utils/bit_field.rb +1 -1
  252. data/lib/hexapdf/utils/bit_stream.rb +1 -1
  253. data/lib/hexapdf/utils/graphics_helpers.rb +1 -1
  254. data/lib/hexapdf/utils/lru_cache.rb +1 -1
  255. data/lib/hexapdf/utils/math_helpers.rb +1 -1
  256. data/lib/hexapdf/utils/object_hash.rb +1 -1
  257. data/lib/hexapdf/utils/pdf_doc_encoding.rb +1 -1
  258. data/lib/hexapdf/utils/sorted_tree_node.rb +1 -1
  259. data/lib/hexapdf/utils.rb +1 -1
  260. data/lib/hexapdf/version.rb +2 -2
  261. data/lib/hexapdf/writer.rb +1 -1
  262. data/lib/hexapdf/xref_section.rb +1 -1
  263. data/lib/hexapdf.rb +1 -1
  264. data/test/hexapdf/filter/test_brotli_decode.rb +1 -1
  265. data/test/hexapdf/font/test_true_type_wrapper.rb +2 -2
  266. data/test/hexapdf/font/true_type/test_subsetter.rb +7 -6
  267. data/test/hexapdf/font_loader/test_from_file.rb +7 -0
  268. data/test/hexapdf/task/test_import_pages.rb +126 -0
  269. data/test/hexapdf/test_serializer.rb +1 -1
  270. data/test/hexapdf/type/test_font_type3.rb +4 -0
  271. metadata +5 -3
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
data/lib/hexapdf/error.rb CHANGED
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -63,9 +63,9 @@ module HexaPDF
63
63
  def use_glyph(glyph_id)
64
64
  return @glyph_map[glyph_id] if @glyph_map.key?(glyph_id)
65
65
  @last_id += 1
66
- # Handle codes for ASCII characters \r (13), (, ) (40, 41) and \ (92) specially so that
67
- # they never appear in the output (PDF serialization would need to escape them)
68
- if @last_id == 13 || @last_id == 40 || @last_id == 92
66
+ # Handle codes for ASCII characters \n (10), \r (13), (, ) (40, 41) and \ (92) specially
67
+ # so that they never appear in the output (PDF serialization would need to escape them)
68
+ if @last_id == 10 || @last_id == 13 || @last_id == 40 || @last_id == 92
69
69
  @glyph_map[:"s#{@last_id}"] = @last_id
70
70
  if @last_id == 40
71
71
  @last_id += 1
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as
@@ -4,7 +4,7 @@
4
4
  # This file is part of HexaPDF.
5
5
  #
6
6
  # HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
7
- # Copyright (C) 2014-2025 Thomas Leitner
7
+ # Copyright (C) 2014-2026 Thomas Leitner
8
8
  #
9
9
  # HexaPDF is free software: you can redistribute it and/or modify it
10
10
  # under the terms of the GNU Affero General Public License version 3 as