hexapdf 0.9.0 → 0.9.1
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 +4 -4
- data/CHANGELOG.md +8 -0
- data/CONTRIBUTERS +2 -1
- data/LICENSE +1 -1
- data/Rakefile +0 -1
- data/VERSION +1 -1
- data/examples/019-column_box.rb +57 -0
- data/lib/hexapdf.rb +4 -1
- data/lib/hexapdf/cli.rb +4 -1
- data/lib/hexapdf/cli/batch.rb +4 -1
- data/lib/hexapdf/cli/command.rb +4 -1
- data/lib/hexapdf/cli/files.rb +4 -1
- data/lib/hexapdf/cli/images.rb +4 -1
- data/lib/hexapdf/cli/info.rb +4 -1
- data/lib/hexapdf/cli/inspect.rb +4 -1
- data/lib/hexapdf/cli/merge.rb +4 -1
- data/lib/hexapdf/cli/modify.rb +4 -1
- data/lib/hexapdf/cli/optimize.rb +4 -1
- data/lib/hexapdf/cli/split.rb +5 -2
- data/lib/hexapdf/composer.rb +4 -1
- data/lib/hexapdf/configuration.rb +4 -1
- data/lib/hexapdf/content.rb +4 -1
- data/lib/hexapdf/content/canvas.rb +4 -1
- data/lib/hexapdf/content/color_space.rb +4 -1
- data/lib/hexapdf/content/graphic_object.rb +4 -1
- data/lib/hexapdf/content/graphic_object/arc.rb +4 -1
- data/lib/hexapdf/content/graphic_object/endpoint_arc.rb +4 -1
- data/lib/hexapdf/content/graphic_object/geom2d.rb +4 -1
- data/lib/hexapdf/content/graphic_object/solid_arc.rb +4 -1
- data/lib/hexapdf/content/graphics_state.rb +4 -1
- data/lib/hexapdf/content/operator.rb +4 -1
- data/lib/hexapdf/content/parser.rb +4 -1
- data/lib/hexapdf/content/processor.rb +4 -1
- data/lib/hexapdf/content/transformation_matrix.rb +4 -1
- data/lib/hexapdf/data_dir.rb +4 -1
- data/lib/hexapdf/dictionary.rb +4 -1
- data/lib/hexapdf/dictionary_fields.rb +4 -1
- data/lib/hexapdf/document.rb +4 -1
- data/lib/hexapdf/document/files.rb +4 -1
- data/lib/hexapdf/document/fonts.rb +4 -1
- data/lib/hexapdf/document/images.rb +4 -1
- data/lib/hexapdf/document/pages.rb +4 -1
- data/lib/hexapdf/encryption.rb +4 -1
- data/lib/hexapdf/encryption/aes.rb +4 -1
- data/lib/hexapdf/encryption/arc4.rb +4 -1
- data/lib/hexapdf/encryption/fast_aes.rb +4 -1
- data/lib/hexapdf/encryption/fast_arc4.rb +4 -1
- data/lib/hexapdf/encryption/identity.rb +4 -1
- data/lib/hexapdf/encryption/ruby_aes.rb +4 -1
- data/lib/hexapdf/encryption/ruby_arc4.rb +4 -1
- data/lib/hexapdf/encryption/security_handler.rb +4 -1
- data/lib/hexapdf/encryption/standard_security_handler.rb +4 -1
- data/lib/hexapdf/error.rb +4 -1
- data/lib/hexapdf/filter.rb +4 -1
- data/lib/hexapdf/filter/ascii85_decode.rb +4 -1
- data/lib/hexapdf/filter/ascii_hex_decode.rb +4 -1
- data/lib/hexapdf/filter/dct_decode.rb +4 -1
- data/lib/hexapdf/filter/encryption.rb +4 -1
- data/lib/hexapdf/filter/flate_decode.rb +4 -1
- data/lib/hexapdf/filter/jpx_decode.rb +4 -1
- data/lib/hexapdf/filter/lzw_decode.rb +4 -1
- data/lib/hexapdf/filter/predictor.rb +4 -1
- data/lib/hexapdf/filter/run_length_decode.rb +4 -1
- data/lib/hexapdf/font/cmap.rb +4 -1
- data/lib/hexapdf/font/cmap/parser.rb +4 -1
- data/lib/hexapdf/font/cmap/writer.rb +5 -2
- data/lib/hexapdf/font/encoding.rb +4 -1
- data/lib/hexapdf/font/encoding/base.rb +4 -1
- data/lib/hexapdf/font/encoding/difference_encoding.rb +4 -1
- data/lib/hexapdf/font/encoding/glyph_list.rb +4 -1
- data/lib/hexapdf/font/encoding/mac_expert_encoding.rb +4 -1
- data/lib/hexapdf/font/encoding/mac_roman_encoding.rb +4 -1
- data/lib/hexapdf/font/encoding/standard_encoding.rb +4 -1
- data/lib/hexapdf/font/encoding/symbol_encoding.rb +4 -1
- data/lib/hexapdf/font/encoding/win_ansi_encoding.rb +4 -1
- data/lib/hexapdf/font/encoding/zapf_dingbats_encoding.rb +4 -1
- data/lib/hexapdf/font/invalid_glyph.rb +4 -1
- data/lib/hexapdf/font/true_type.rb +4 -1
- data/lib/hexapdf/font/true_type/builder.rb +4 -1
- data/lib/hexapdf/font/true_type/font.rb +4 -1
- data/lib/hexapdf/font/true_type/optimizer.rb +4 -1
- data/lib/hexapdf/font/true_type/subsetter.rb +4 -1
- data/lib/hexapdf/font/true_type/table.rb +4 -1
- data/lib/hexapdf/font/true_type/table/cmap.rb +4 -1
- data/lib/hexapdf/font/true_type/table/cmap_subtable.rb +4 -1
- data/lib/hexapdf/font/true_type/table/directory.rb +4 -1
- data/lib/hexapdf/font/true_type/table/glyf.rb +4 -1
- data/lib/hexapdf/font/true_type/table/head.rb +4 -1
- data/lib/hexapdf/font/true_type/table/hhea.rb +4 -1
- data/lib/hexapdf/font/true_type/table/hmtx.rb +4 -1
- data/lib/hexapdf/font/true_type/table/kern.rb +4 -1
- data/lib/hexapdf/font/true_type/table/loca.rb +4 -1
- data/lib/hexapdf/font/true_type/table/maxp.rb +4 -1
- data/lib/hexapdf/font/true_type/table/name.rb +4 -1
- data/lib/hexapdf/font/true_type/table/os2.rb +4 -1
- data/lib/hexapdf/font/true_type/table/post.rb +4 -1
- data/lib/hexapdf/font/true_type_wrapper.rb +4 -1
- data/lib/hexapdf/font/type1.rb +4 -1
- data/lib/hexapdf/font/type1/afm_parser.rb +4 -1
- data/lib/hexapdf/font/type1/character_metrics.rb +4 -1
- data/lib/hexapdf/font/type1/font.rb +4 -1
- data/lib/hexapdf/font/type1/font_metrics.rb +4 -1
- data/lib/hexapdf/font/type1/pfb_parser.rb +4 -1
- data/lib/hexapdf/font/type1_wrapper.rb +4 -1
- data/lib/hexapdf/font_loader.rb +4 -1
- data/lib/hexapdf/font_loader/from_configuration.rb +4 -1
- data/lib/hexapdf/font_loader/from_file.rb +4 -1
- data/lib/hexapdf/font_loader/standard14.rb +4 -1
- data/lib/hexapdf/image_loader.rb +4 -1
- data/lib/hexapdf/image_loader/jpeg.rb +4 -1
- data/lib/hexapdf/image_loader/pdf.rb +4 -1
- data/lib/hexapdf/image_loader/png.rb +4 -1
- data/lib/hexapdf/importer.rb +4 -1
- data/lib/hexapdf/layout.rb +4 -1
- data/lib/hexapdf/layout/box.rb +4 -1
- data/lib/hexapdf/layout/column_box.rb +161 -0
- data/lib/hexapdf/layout/frame.rb +4 -1
- data/lib/hexapdf/layout/image_box.rb +4 -1
- data/lib/hexapdf/layout/inline_box.rb +4 -1
- data/lib/hexapdf/layout/line.rb +4 -1
- data/lib/hexapdf/layout/numeric_refinements.rb +4 -1
- data/lib/hexapdf/layout/style.rb +4 -1
- data/lib/hexapdf/layout/text_box.rb +4 -1
- data/lib/hexapdf/layout/text_fragment.rb +4 -1
- data/lib/hexapdf/layout/text_layouter.rb +4 -1
- data/lib/hexapdf/layout/text_shaper.rb +4 -1
- data/lib/hexapdf/layout/width_from_polygon.rb +4 -1
- data/lib/hexapdf/name_tree_node.rb +4 -1
- data/lib/hexapdf/number_tree_node.rb +4 -1
- data/lib/hexapdf/object.rb +4 -1
- data/lib/hexapdf/parser.rb +4 -1
- data/lib/hexapdf/rectangle.rb +4 -1
- data/lib/hexapdf/reference.rb +4 -1
- data/lib/hexapdf/revision.rb +4 -1
- data/lib/hexapdf/revisions.rb +4 -1
- data/lib/hexapdf/serializer.rb +9 -2
- data/lib/hexapdf/stream.rb +4 -1
- data/lib/hexapdf/task.rb +4 -1
- data/lib/hexapdf/task/dereference.rb +4 -1
- data/lib/hexapdf/task/optimize.rb +4 -1
- data/lib/hexapdf/tokenizer.rb +4 -1
- data/lib/hexapdf/type.rb +4 -1
- data/lib/hexapdf/type/action.rb +4 -1
- data/lib/hexapdf/type/actions.rb +4 -1
- data/lib/hexapdf/type/actions/go_to.rb +4 -1
- data/lib/hexapdf/type/actions/go_to_r.rb +4 -1
- data/lib/hexapdf/type/actions/launch.rb +4 -1
- data/lib/hexapdf/type/actions/uri.rb +4 -1
- data/lib/hexapdf/type/annotation.rb +4 -1
- data/lib/hexapdf/type/annotations.rb +4 -1
- data/lib/hexapdf/type/annotations/link.rb +4 -1
- data/lib/hexapdf/type/annotations/markup_annotation.rb +4 -1
- data/lib/hexapdf/type/annotations/text.rb +4 -1
- data/lib/hexapdf/type/catalog.rb +4 -1
- data/lib/hexapdf/type/cid_font.rb +4 -1
- data/lib/hexapdf/type/embedded_file.rb +4 -1
- data/lib/hexapdf/type/file_specification.rb +4 -1
- data/lib/hexapdf/type/font.rb +4 -1
- data/lib/hexapdf/type/font_descriptor.rb +4 -1
- data/lib/hexapdf/type/font_simple.rb +4 -1
- data/lib/hexapdf/type/font_true_type.rb +4 -1
- data/lib/hexapdf/type/font_type0.rb +4 -1
- data/lib/hexapdf/type/font_type1.rb +4 -1
- data/lib/hexapdf/type/font_type3.rb +4 -1
- data/lib/hexapdf/type/form.rb +4 -1
- data/lib/hexapdf/type/graphics_state_parameter.rb +4 -1
- data/lib/hexapdf/type/image.rb +4 -1
- data/lib/hexapdf/type/info.rb +4 -1
- data/lib/hexapdf/type/names.rb +4 -1
- data/lib/hexapdf/type/object_stream.rb +4 -1
- data/lib/hexapdf/type/page.rb +4 -1
- data/lib/hexapdf/type/page_tree_node.rb +4 -1
- data/lib/hexapdf/type/resources.rb +4 -1
- data/lib/hexapdf/type/trailer.rb +4 -1
- data/lib/hexapdf/type/viewer_preferences.rb +4 -1
- data/lib/hexapdf/type/xref_stream.rb +4 -1
- data/lib/hexapdf/utils/bit_field.rb +4 -1
- data/lib/hexapdf/utils/bit_stream.rb +4 -1
- data/lib/hexapdf/utils/graphics_helpers.rb +4 -1
- data/lib/hexapdf/utils/lru_cache.rb +4 -1
- data/lib/hexapdf/utils/math_helpers.rb +4 -1
- data/lib/hexapdf/utils/object_hash.rb +4 -1
- data/lib/hexapdf/utils/pdf_doc_encoding.rb +4 -1
- data/lib/hexapdf/utils/sorted_tree_node.rb +4 -1
- data/lib/hexapdf/version.rb +5 -2
- data/lib/hexapdf/writer.rb +4 -1
- data/lib/hexapdf/xref_section.rb +4 -1
- data/test/hexapdf/font/cmap/test_writer.rb +9 -1
- data/test/hexapdf/test_serializer.rb +6 -0
- data/test/hexapdf/test_writer.rb +2 -2
- metadata +4 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 42f7d2d181cfcbe2c6b8a99add1901773b07b459c81964efeb4d506a86932620
|
|
4
|
+
data.tar.gz: eb36de061e2f0dd9cb2ee939b12d9feb04bb0993ae3657258fe5dff98c2b8466
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 473cd080839b097d72113963fbe709e94a0a718dce6db8790636178bb206a61ac7a095398896e21166c413344fa932d8d9da35003e4c65ec04e22990f994aa04
|
|
7
|
+
data.tar.gz: 547e778a0b621ed708d295db9f14fd9026d2c08a7480a5dfc0fcb0f2854158588a89840993783590db4e583d9d70e9ab97302caa44247de1fe4cf259b5e73065
|
data/CHANGELOG.md
CHANGED
data/CONTRIBUTERS
CHANGED
data/LICENSE
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
HexaPDF - A Versatile PDF Creation and Manipulation Library For Ruby
|
|
2
|
-
Copyright (C) 2014-
|
|
2
|
+
Copyright (C) 2014-2019 Thomas Leitner
|
|
3
3
|
|
|
4
4
|
HexaPDF is free software: you can redistribute it and/or modify it
|
|
5
5
|
under the terms of the GNU Affero General Public License version 3 as
|
data/Rakefile
CHANGED
|
@@ -63,7 +63,6 @@ namespace :dev do
|
|
|
63
63
|
|
|
64
64
|
s.require_path = 'lib'
|
|
65
65
|
s.executables = ['hexapdf']
|
|
66
|
-
s.default_executable = 'hexapdf'
|
|
67
66
|
s.add_dependency('cmdparse', '~> 3.0', '>= 3.0.3')
|
|
68
67
|
s.add_dependency('geom2d', '~> 0.2')
|
|
69
68
|
s.add_development_dependency('kramdown', '~> 1.0', '>= 1.13.0')
|
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.9.
|
|
1
|
+
0.9.1
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# ## Column Box
|
|
2
|
+
#
|
|
3
|
+
# This example shows how [HexaPDF::Layout::Frame] and [HexaPDF::Layout::TextBox]
|
|
4
|
+
# can be used to flow text around objects.
|
|
5
|
+
#
|
|
6
|
+
# Three boxes are placed repeatedly onto the frame until it is filled: two
|
|
7
|
+
# floating boxes (one left, one right) and a text box. The text box is styled to
|
|
8
|
+
# flow its content around the other two boxes.
|
|
9
|
+
#
|
|
10
|
+
# Usage:
|
|
11
|
+
# : `ruby frame_text_flow.rb`
|
|
12
|
+
#
|
|
13
|
+
|
|
14
|
+
require 'hexapdf'
|
|
15
|
+
require 'hexapdf/utils/graphics_helpers'
|
|
16
|
+
|
|
17
|
+
include HexaPDF::Layout
|
|
18
|
+
include HexaPDF::Utils::GraphicsHelpers
|
|
19
|
+
|
|
20
|
+
doc = HexaPDF::Document.new
|
|
21
|
+
|
|
22
|
+
sample_text = "Lorem ipsum dolor sit amet, con\u{00AD}sectetur
|
|
23
|
+
adipis\u{00AD}cing elit, sed do eiusmod tempor incididunt ut labore et
|
|
24
|
+
dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation
|
|
25
|
+
ullamco laboris nisi ut aliquip ex ea commodo consequat.
|
|
26
|
+
".tr("\n", ' ') * 5
|
|
27
|
+
items = [TextFragment.create(sample_text, font: doc.fonts.add("Times"))]
|
|
28
|
+
|
|
29
|
+
page = doc.pages.add
|
|
30
|
+
media_box = page.box(:media)
|
|
31
|
+
canvas = page.canvas
|
|
32
|
+
frame = Frame.new(media_box.left + 20, media_box.bottom + 20,
|
|
33
|
+
media_box.width - 40, media_box.height - 40)
|
|
34
|
+
|
|
35
|
+
image = doc.images.add(File.join(__dir__, 'machupicchu.jpg'))
|
|
36
|
+
iw, ih = calculate_dimensions(image.width, image.height, rwidth: 100)
|
|
37
|
+
|
|
38
|
+
boxes = []
|
|
39
|
+
3.times do
|
|
40
|
+
boxes << Box.create(width: iw, height: ih,
|
|
41
|
+
margin: [10, 30], position: :float) do |canv, box|
|
|
42
|
+
canv.image(image, at: [0, 0], width: 100)
|
|
43
|
+
end
|
|
44
|
+
boxes << Box.create(width: 50, height: 50, margin: 20,
|
|
45
|
+
position: :float, position_hint: :right,
|
|
46
|
+
border: {width: 1, color: [[255, 0, 0]]})
|
|
47
|
+
boxes << TextBox.new(items, style: {position: :flow, align: :justify})
|
|
48
|
+
end
|
|
49
|
+
columns = ColumnBox.new(boxes) #, style: {position: :flow})
|
|
50
|
+
polygon = Geom2D::Polygon([250, 350], [350, 350], [350, 500], [250, 500])
|
|
51
|
+
#frame.remove_area(polygon)
|
|
52
|
+
#canvas.draw(:geom2d, object: polygon)
|
|
53
|
+
result = frame.fit(columns)
|
|
54
|
+
p result.success?
|
|
55
|
+
frame.draw(canvas, result)
|
|
56
|
+
|
|
57
|
+
doc.write("column_box.pdf", optimize: true)
|
data/lib/hexapdf.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-
|
|
7
|
+
# Copyright (C) 2014-2019 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
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
# In accordance with Section 7(b) of the GNU Affero General Public
|
|
30
30
|
# License, a covered work must retain the producer line in every PDF that
|
|
31
31
|
# is created or manipulated using HexaPDF.
|
|
32
|
+
#
|
|
33
|
+
# If the GNU Affero General Public License doesn't fit your need,
|
|
34
|
+
# commercial licenses are available at <https://gettalong.at/hexapdf/>.
|
|
32
35
|
#++
|
|
33
36
|
|
|
34
37
|
require 'hexapdf/document'
|
data/lib/hexapdf/cli.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-
|
|
7
|
+
# Copyright (C) 2014-2019 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
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
# In accordance with Section 7(b) of the GNU Affero General Public
|
|
30
30
|
# License, a covered work must retain the producer line in every PDF that
|
|
31
31
|
# is created or manipulated using HexaPDF.
|
|
32
|
+
#
|
|
33
|
+
# If the GNU Affero General Public License doesn't fit your need,
|
|
34
|
+
# commercial licenses are available at <https://gettalong.at/hexapdf/>.
|
|
32
35
|
#++
|
|
33
36
|
|
|
34
37
|
require 'cmdparse'
|
data/lib/hexapdf/cli/batch.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-
|
|
7
|
+
# Copyright (C) 2014-2019 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
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
# In accordance with Section 7(b) of the GNU Affero General Public
|
|
30
30
|
# License, a covered work must retain the producer line in every PDF that
|
|
31
31
|
# is created or manipulated using HexaPDF.
|
|
32
|
+
#
|
|
33
|
+
# If the GNU Affero General Public License doesn't fit your need,
|
|
34
|
+
# commercial licenses are available at <https://gettalong.at/hexapdf/>.
|
|
32
35
|
#++
|
|
33
36
|
|
|
34
37
|
require 'hexapdf/cli/command'
|
data/lib/hexapdf/cli/command.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-
|
|
7
|
+
# Copyright (C) 2014-2019 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
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
# In accordance with Section 7(b) of the GNU Affero General Public
|
|
30
30
|
# License, a covered work must retain the producer line in every PDF that
|
|
31
31
|
# is created or manipulated using HexaPDF.
|
|
32
|
+
#
|
|
33
|
+
# If the GNU Affero General Public License doesn't fit your need,
|
|
34
|
+
# commercial licenses are available at <https://gettalong.at/hexapdf/>.
|
|
32
35
|
#++
|
|
33
36
|
|
|
34
37
|
require 'io/console'
|
data/lib/hexapdf/cli/files.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-
|
|
7
|
+
# Copyright (C) 2014-2019 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
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
# In accordance with Section 7(b) of the GNU Affero General Public
|
|
30
30
|
# License, a covered work must retain the producer line in every PDF that
|
|
31
31
|
# is created or manipulated using HexaPDF.
|
|
32
|
+
#
|
|
33
|
+
# If the GNU Affero General Public License doesn't fit your need,
|
|
34
|
+
# commercial licenses are available at <https://gettalong.at/hexapdf/>.
|
|
32
35
|
#++
|
|
33
36
|
|
|
34
37
|
require 'hexapdf/cli/command'
|
data/lib/hexapdf/cli/images.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-
|
|
7
|
+
# Copyright (C) 2014-2019 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
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
# In accordance with Section 7(b) of the GNU Affero General Public
|
|
30
30
|
# License, a covered work must retain the producer line in every PDF that
|
|
31
31
|
# is created or manipulated using HexaPDF.
|
|
32
|
+
#
|
|
33
|
+
# If the GNU Affero General Public License doesn't fit your need,
|
|
34
|
+
# commercial licenses are available at <https://gettalong.at/hexapdf/>.
|
|
32
35
|
#++
|
|
33
36
|
|
|
34
37
|
require 'set'
|
data/lib/hexapdf/cli/info.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-
|
|
7
|
+
# Copyright (C) 2014-2019 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
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
# In accordance with Section 7(b) of the GNU Affero General Public
|
|
30
30
|
# License, a covered work must retain the producer line in every PDF that
|
|
31
31
|
# is created or manipulated using HexaPDF.
|
|
32
|
+
#
|
|
33
|
+
# If the GNU Affero General Public License doesn't fit your need,
|
|
34
|
+
# commercial licenses are available at <https://gettalong.at/hexapdf/>.
|
|
32
35
|
#++
|
|
33
36
|
|
|
34
37
|
require 'hexapdf/cli/command'
|
data/lib/hexapdf/cli/inspect.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-
|
|
7
|
+
# Copyright (C) 2014-2019 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
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
# In accordance with Section 7(b) of the GNU Affero General Public
|
|
30
30
|
# License, a covered work must retain the producer line in every PDF that
|
|
31
31
|
# is created or manipulated using HexaPDF.
|
|
32
|
+
#
|
|
33
|
+
# If the GNU Affero General Public License doesn't fit your need,
|
|
34
|
+
# commercial licenses are available at <https://gettalong.at/hexapdf/>.
|
|
32
35
|
#++
|
|
33
36
|
|
|
34
37
|
require 'hexapdf/cli/command'
|
data/lib/hexapdf/cli/merge.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-
|
|
7
|
+
# Copyright (C) 2014-2019 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
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
# In accordance with Section 7(b) of the GNU Affero General Public
|
|
30
30
|
# License, a covered work must retain the producer line in every PDF that
|
|
31
31
|
# is created or manipulated using HexaPDF.
|
|
32
|
+
#
|
|
33
|
+
# If the GNU Affero General Public License doesn't fit your need,
|
|
34
|
+
# commercial licenses are available at <https://gettalong.at/hexapdf/>.
|
|
32
35
|
#++
|
|
33
36
|
|
|
34
37
|
require 'hexapdf/cli/command'
|
data/lib/hexapdf/cli/modify.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-
|
|
7
|
+
# Copyright (C) 2014-2019 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
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
# In accordance with Section 7(b) of the GNU Affero General Public
|
|
30
30
|
# License, a covered work must retain the producer line in every PDF that
|
|
31
31
|
# is created or manipulated using HexaPDF.
|
|
32
|
+
#
|
|
33
|
+
# If the GNU Affero General Public License doesn't fit your need,
|
|
34
|
+
# commercial licenses are available at <https://gettalong.at/hexapdf/>.
|
|
32
35
|
#++
|
|
33
36
|
|
|
34
37
|
require 'ostruct'
|
data/lib/hexapdf/cli/optimize.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-
|
|
7
|
+
# Copyright (C) 2014-2019 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
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
# In accordance with Section 7(b) of the GNU Affero General Public
|
|
30
30
|
# License, a covered work must retain the producer line in every PDF that
|
|
31
31
|
# is created or manipulated using HexaPDF.
|
|
32
|
+
#
|
|
33
|
+
# If the GNU Affero General Public License doesn't fit your need,
|
|
34
|
+
# commercial licenses are available at <https://gettalong.at/hexapdf/>.
|
|
32
35
|
#++
|
|
33
36
|
|
|
34
37
|
require 'hexapdf/cli/command'
|
data/lib/hexapdf/cli/split.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-
|
|
7
|
+
# Copyright (C) 2014-2019 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
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
# In accordance with Section 7(b) of the GNU Affero General Public
|
|
30
30
|
# License, a covered work must retain the producer line in every PDF that
|
|
31
31
|
# is created or manipulated using HexaPDF.
|
|
32
|
+
#
|
|
33
|
+
# If the GNU Affero General Public License doesn't fit your need,
|
|
34
|
+
# commercial licenses are available at <https://gettalong.at/hexapdf/>.
|
|
32
35
|
#++
|
|
33
36
|
|
|
34
37
|
require 'hexapdf/cli/command'
|
|
@@ -45,7 +48,7 @@ module HexaPDF
|
|
|
45
48
|
long_desc(<<~EOF)
|
|
46
49
|
If no OUTPUT_SPEC is specified, the pages are named <PDF>_0001.pdf, <PDF>_0002.pdf, ...
|
|
47
50
|
and so on. To specify a custom name, provide the OUTPUT_SPEC argument. It can contain a
|
|
48
|
-
|
|
51
|
+
printf-style format definition like '%04d' to specify the place where the page number
|
|
49
52
|
should be inserted.
|
|
50
53
|
|
|
51
54
|
The optimization and encryption options are applied to each created output file.
|
data/lib/hexapdf/composer.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-
|
|
7
|
+
# Copyright (C) 2014-2019 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
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
# In accordance with Section 7(b) of the GNU Affero General Public
|
|
30
30
|
# License, a covered work must retain the producer line in every PDF that
|
|
31
31
|
# is created or manipulated using HexaPDF.
|
|
32
|
+
#
|
|
33
|
+
# If the GNU Affero General Public License doesn't fit your need,
|
|
34
|
+
# commercial licenses are available at <https://gettalong.at/hexapdf/>.
|
|
32
35
|
#++
|
|
33
36
|
|
|
34
37
|
require 'hexapdf/document'
|
|
@@ -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-
|
|
7
|
+
# Copyright (C) 2014-2019 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
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
# In accordance with Section 7(b) of the GNU Affero General Public
|
|
30
30
|
# License, a covered work must retain the producer line in every PDF that
|
|
31
31
|
# is created or manipulated using HexaPDF.
|
|
32
|
+
#
|
|
33
|
+
# If the GNU Affero General Public License doesn't fit your need,
|
|
34
|
+
# commercial licenses are available at <https://gettalong.at/hexapdf/>.
|
|
32
35
|
#++
|
|
33
36
|
|
|
34
37
|
require 'hexapdf/font/invalid_glyph'
|
data/lib/hexapdf/content.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-
|
|
7
|
+
# Copyright (C) 2014-2019 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
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
# In accordance with Section 7(b) of the GNU Affero General Public
|
|
30
30
|
# License, a covered work must retain the producer line in every PDF that
|
|
31
31
|
# is created or manipulated using HexaPDF.
|
|
32
|
+
#
|
|
33
|
+
# If the GNU Affero General Public License doesn't fit your need,
|
|
34
|
+
# commercial licenses are available at <https://gettalong.at/hexapdf/>.
|
|
32
35
|
#++
|
|
33
36
|
|
|
34
37
|
module HexaPDF
|
|
@@ -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-
|
|
7
|
+
# Copyright (C) 2014-2019 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
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
# In accordance with Section 7(b) of the GNU Affero General Public
|
|
30
30
|
# License, a covered work must retain the producer line in every PDF that
|
|
31
31
|
# is created or manipulated using HexaPDF.
|
|
32
|
+
#
|
|
33
|
+
# If the GNU Affero General Public License doesn't fit your need,
|
|
34
|
+
# commercial licenses are available at <https://gettalong.at/hexapdf/>.
|
|
32
35
|
#++
|
|
33
36
|
|
|
34
37
|
require 'hexapdf/content/graphics_state'
|
|
@@ -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-
|
|
7
|
+
# Copyright (C) 2014-2019 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
|
|
@@ -29,6 +29,9 @@
|
|
|
29
29
|
# In accordance with Section 7(b) of the GNU Affero General Public
|
|
30
30
|
# License, a covered work must retain the producer line in every PDF that
|
|
31
31
|
# is created or manipulated using HexaPDF.
|
|
32
|
+
#
|
|
33
|
+
# If the GNU Affero General Public License doesn't fit your need,
|
|
34
|
+
# commercial licenses are available at <https://gettalong.at/hexapdf/>.
|
|
32
35
|
#++
|
|
33
36
|
|
|
34
37
|
require 'hexapdf/error'
|