ypdf-writer 1.3.3 → 1.3.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/lib/pdf/writer/fontmetrics.rb +1 -1
- data/lib/pdf/writer/object/image.rb +31 -31
- data/lib/pdf/writer/object/page.rb +40 -40
- data/lib/pdf/writer.rb +2 -2
- metadata +142 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 2228fbcf6005e9cee9af9f5b8ef339987c60c768ff2e4d27d20fd5e78deddadd
|
4
|
+
data.tar.gz: 48b925beab8b5f330b96ff00ef1f19ff9a9b2b48c13f4f43d1378905a76dc3d5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2c0f07d954a2cf2e5d7a093057bc2f327caa3bfa15e23ed1e5a98c8c264d079b8b43dbf72850d6d62b68401759c925e018c8873fe427b2c57b376e23467179c3
|
7
|
+
data.tar.gz: 234eb3d87be1823075d294715c66f742ea64a01a12cfa757c5ca56727ed928aa238a501a522f63f3e3fb8b82d4eccf35227234073921a3d9fa1a1cbda33d7ab8
|
@@ -64,7 +64,7 @@ class PDF::Writer::FontMetrics
|
|
64
64
|
# Attempt to unmarshal an .afm.rfm file first. If it is loaded,
|
65
65
|
# we're in good shape.
|
66
66
|
begin
|
67
|
-
if File.
|
67
|
+
if File.exist?(rfm_file)
|
68
68
|
data = File.open(rfm_file, "rb") { |file| file.read }
|
69
69
|
font = Marshal.load(data)
|
70
70
|
return font
|
@@ -54,11 +54,11 @@ require 'pdf/writer/oreader'
|
|
54
54
|
# image.
|
55
55
|
# Intent:: (name, Optional; PDF 1.1) The name of a color
|
56
56
|
# rendering intent to be used in rendering the image
|
57
|
-
# (see
|
57
|
+
# (see "Rendering Intents" on page 230). Default value:
|
58
58
|
# the current rendering intent in the graphics state.
|
59
59
|
# ImageMask:: (boolean, Optional) A flag indicating whether the
|
60
60
|
# image is to be treated as an image mask (see Section
|
61
|
-
# 4.8.5,
|
61
|
+
# 4.8.5, "Masked Images"). If this flag is true, the
|
62
62
|
# value of /BitsPerComponent must be 1 and Mask and
|
63
63
|
# /ColorSpace should not be specified; unmasked areas
|
64
64
|
# are painted using the current nonstroking color.
|
@@ -66,86 +66,86 @@ require 'pdf/writer/oreader'
|
|
66
66
|
# Mask:: (stream or array, Optional except for image masks; not
|
67
67
|
# allowed for image masks; PDF 1.3) An image XObject
|
68
68
|
# defining an image mask to be applied to this image
|
69
|
-
# (see
|
69
|
+
# (see "Explicit Masking" on page 321), or an array
|
70
70
|
# specifying a range of colors to be applied to it as a
|
71
|
-
# color key mask (see
|
71
|
+
# color key mask (see "Color Key Masking" on page 321).
|
72
72
|
# If ImageMask is true, this entry must not be present.
|
73
73
|
# (See implementation note 51 in Appendix H.)
|
74
74
|
# Decode:: (array, Optional) An array of numbers describing how
|
75
75
|
# to map image samples into the range of values
|
76
|
-
# appropriate for the image
|
77
|
-
# Arrays
|
76
|
+
# appropriate for the image's color space (see "Decode
|
77
|
+
# Arrays" on page 314). If ImageMask is true, the array
|
78
78
|
# must be either [0 1] or [1 0]; otherwise, its length
|
79
79
|
# must be twice the number of color components required
|
80
80
|
# by ColorSpace. If the image uses the JPXDecode filter
|
81
81
|
# and ImageMask is false, Decode is ignored. Default
|
82
|
-
# value: see
|
82
|
+
# value: see "Decode Arrays" on page 314.
|
83
83
|
# Interpolate:: (boolean, Optional) A flag indicating whether image
|
84
|
-
# interpolation is to be performed (see
|
85
|
-
# Interpolation
|
84
|
+
# interpolation is to be performed (see "Image
|
85
|
+
# Interpolation" on page 316). Default value: false.
|
86
86
|
# Alternates:: (array, Optional; PDF 1.3) An array of alternate image
|
87
|
-
# dictionaries for this image (see
|
87
|
+
# dictionaries for this image (see "Alternate Images" on
|
88
88
|
# page 317). The order of elements within the array has
|
89
89
|
# no significance. This entry may not be present in an
|
90
90
|
# image XObject that is itself an alternate image.
|
91
91
|
# SMask:: (stream, Optional; PDF 1.4) A subsidiary image XObject
|
92
|
-
# defining a soft-mask image (see
|
92
|
+
# defining a soft-mask image (see "Soft-Mask Images" on
|
93
93
|
# page 522) to be used as a source of mask shape or mask
|
94
94
|
# opacity values in the transparent imaging model. The
|
95
95
|
# alpha source parameter in the graphics state
|
96
96
|
# determines whether the mask values are interpreted as
|
97
97
|
# shape or opacity. If present, this entry overrides the
|
98
98
|
# current soft mask in the graphics state, as well as
|
99
|
-
# the image
|
100
|
-
# transparency related graphics state parameters
|
101
|
-
# mode and alpha constant
|
99
|
+
# the image's Mask entry, if any. (However, the other
|
100
|
+
# transparency related graphics state parameters-blend
|
101
|
+
# mode and alpha constant-remain in effect.) If SMask is
|
102
102
|
# absent, the image has no associated soft mask
|
103
103
|
# (although the current soft mask in the graphics state
|
104
104
|
# may still apply).
|
105
105
|
# SMaskInData:: (integer, Optional for images that use the JPXDecode
|
106
106
|
# filter, meaningless otherwise; PDF 1.5) A code
|
107
|
-
# specifying how soft-mask information (see
|
108
|
-
# Images
|
107
|
+
# specifying how soft-mask information (see "Soft-Mask
|
108
|
+
# Images" on page 522) encoded with image samples should
|
109
109
|
# be used: (0) If present, encoded soft-mask image
|
110
|
-
# information should be ignored. (1) The image
|
110
|
+
# information should be ignored. (1) The image's data
|
111
111
|
# stream includes encoded soft-mask values. An
|
112
112
|
# application can create a soft-mask image from the
|
113
113
|
# information to be used as a source of mask shape or
|
114
114
|
# mask opacity in the transparency imaging model. (2)
|
115
|
-
# The image
|
115
|
+
# The image's data stream includes color channels that
|
116
116
|
# have been preblended with a background; the image data
|
117
117
|
# also includes an opacity channel. An application can
|
118
118
|
# create a soft-mask image with a Matte entry from the
|
119
119
|
# opacity channel information to be used as a source of
|
120
120
|
# mask shape or mask opacity in the transparency model.
|
121
121
|
# * If this entry has a nonzero value, SMask should not
|
122
|
-
# be specified. See also Section 3.3.8,
|
123
|
-
# Filter
|
122
|
+
# be specified. See also Section 3.3.8, "JPXDecode
|
123
|
+
# Filter." Default value: 0.
|
124
124
|
# Name:: (name, Required in PDF 1.0; optional otherwise) The
|
125
125
|
# name by which this image XObject is referenced in the
|
126
126
|
# XObject subdictionary of the current resource
|
127
|
-
# dictionary (see Section 3.7.2,
|
128
|
-
# Dictionaries
|
127
|
+
# dictionary (see Section 3.7.2, "Resource
|
128
|
+
# Dictionaries"). Note: This entry is obsolescent and
|
129
129
|
# its use is no longer recommended. (See implementation
|
130
130
|
# note 52 in Appendix H.)
|
131
131
|
# StructParent:: (integer, Required if the image is a structural
|
132
|
-
# content item; PDF 1.3) The integer key of the image
|
133
|
-
# entry in the structural parent tree (see
|
134
|
-
# Structure Elements from Content Items
|
132
|
+
# content item; PDF 1.3) The integer key of the image's
|
133
|
+
# entry in the structural parent tree (see "Finding
|
134
|
+
# Structure Elements from Content Items" on page 797).
|
135
135
|
# ID:: (string, Optional; PDF 1.3; indirect reference
|
136
|
-
# preferred) The digital identifier of the image
|
136
|
+
# preferred) The digital identifier of the image's
|
137
137
|
# parent Web Capture content set (see Section 10.9.5,
|
138
|
-
#
|
138
|
+
# "Object Attributes Related to Web Capture").
|
139
139
|
# OPI:: (dictionary, Optional; PDF 1.2) An OPI version
|
140
|
-
# dictionary for the image (see Section 10.10.6,
|
141
|
-
# Prepress Interface (OPI)
|
140
|
+
# dictionary for the image (see Section 10.10.6, "Open
|
141
|
+
# Prepress Interface (OPI)"). If ImageMask is true, this
|
142
142
|
# entry is ignored.
|
143
143
|
# Metadata:: (stream, Optional; PDF 1.4) A metadata stream
|
144
144
|
# containing metadata for the image (see Section 10.2.2,
|
145
|
-
#
|
145
|
+
# "Metadata Streams").
|
146
146
|
# OC:: (dictionary, Optional; PDF 1.5) An optional content
|
147
147
|
# group or optional content membership dictionary (see
|
148
|
-
# Section 4.10,
|
148
|
+
# Section 4.10, "Optional Content"), specifying the
|
149
149
|
# optional content properties for this image XObject.
|
150
150
|
# Before the image is processed, its visibility is
|
151
151
|
# determined based on this entry. If it is determined to
|
@@ -70,10 +70,10 @@ class PDF::Writer::Object::Page < PDF::Writer::Object
|
|
70
70
|
end
|
71
71
|
|
72
72
|
# MediaBox:: rectangle (Required; inheritable). A rectangle (see
|
73
|
-
# Section 3.8.4,
|
73
|
+
# Section 3.8.4, "Rectangles"), expressed in default user
|
74
74
|
# space units, defining the boundaries of the physical
|
75
75
|
# medium on which the page is intended to be displayed or
|
76
|
-
# printed (see Section 10.10.1,
|
76
|
+
# printed (see Section 10.10.1, "Page Boundaries").
|
77
77
|
res << "\n/MediaBox [#{@media_box.join(' ')}]" unless @media_box.nil? or @media_box.empty?
|
78
78
|
# CropBox:: rectangle (Optional; inheritable) A rectangle, expressed
|
79
79
|
# in default user space units, defining the visible region
|
@@ -81,25 +81,25 @@ class PDF::Writer::Object::Page < PDF::Writer::Object
|
|
81
81
|
# printed, its contents are to be clipped (cropped) to
|
82
82
|
# this rectangle and then imposed on the output medium in
|
83
83
|
# some implementation-defined manner (see Section 10.10.1,
|
84
|
-
#
|
84
|
+
# "Page Boundaries"). Default value: the value of MediaBox.
|
85
85
|
res << "\n/CropBox [#{@crop_box.join(' ')}]" unless @crop_box.nil? or @crop_box.empty?
|
86
86
|
# BleedBox:: rectangle (Optional; PDF 1.3) A rectangle, expressed in
|
87
87
|
# default user space units, defining the region to which
|
88
88
|
# the contents of the page should be clipped when output
|
89
|
-
# in a production environment (see Section 10.10.1,
|
90
|
-
# Boundaries
|
89
|
+
# in a production environment (see Section 10.10.1, "Page
|
90
|
+
# Boundaries"). Default value: the value of CropBox.
|
91
91
|
res << "\n/BleedBox [#{@bleed_box.join(' ')}]" unless @bleed_box.nil? or @bleed_box.empty?
|
92
92
|
# TrimBox:: rectangle (Optional; PDF 1.3) A rectangle, expressed in
|
93
93
|
# default user space units, defining the intended
|
94
94
|
# dimensions of the finished page after trimming (see
|
95
|
-
# Section 10.10.1,
|
95
|
+
# Section 10.10.1, "Page Boundaries"). Default value: the
|
96
96
|
# value of CropBox.
|
97
97
|
res << "\n/TrimBox [#{@trim_box.join(' ')}]" unless @trim_box.nil? or @trim_box.empty?
|
98
98
|
# ArtBox:: rectangle (Optional; PDF 1.3) A rectangle, expressed in
|
99
99
|
# default user space units, defining the extent of the
|
100
|
-
# page
|
101
|
-
# space) as intended by the page
|
102
|
-
# 10.10.1,
|
100
|
+
# page's meaningful content (including potential white
|
101
|
+
# space) as intended by the page's creator (see Section
|
102
|
+
# 10.10.1, "Page Boundaries"). Default value: the value of
|
103
103
|
# CropBox.
|
104
104
|
res << "\n/ArtBox [#{@art_box.join(' ')}]" unless @art_box.nil? or @art_box.empty?
|
105
105
|
|
@@ -110,8 +110,8 @@ end
|
|
110
110
|
# BoxColorInfo:: dictionary (Optional; PDF 1.4) A box color information
|
111
111
|
# dictionary specifying the colors and other visual
|
112
112
|
# characteristics to be used in displaying guidelines on
|
113
|
-
# the screen for the various page boundaries (see
|
114
|
-
# of Page Boundaries
|
113
|
+
# the screen for the various page boundaries (see "Display
|
114
|
+
# of Page Boundaries" on page 893). If this entry is
|
115
115
|
# absent, the application should use its own current
|
116
116
|
# default settings.
|
117
117
|
#
|
@@ -120,71 +120,71 @@ end
|
|
120
120
|
# displayed or printed. The value must be a multiple of
|
121
121
|
# 90. Default value: 0.
|
122
122
|
# Group:: dictionary (Optional; PDF 1.4) A group attributes
|
123
|
-
# dictionary specifying the attributes of the page
|
123
|
+
# dictionary specifying the attributes of the page's page
|
124
124
|
# group for use in the transparent imaging model (see
|
125
|
-
# Sections 7.3.6,
|
126
|
-
# Group XObjects
|
127
|
-
# Thumb:: stream (Optional) A stream object defining the page
|
128
|
-
# thumbnail image (see Section 8.2.3,
|
125
|
+
# Sections 7.3.6, "Page Group," and 7.5.5, "Transparency
|
126
|
+
# Group XObjects").
|
127
|
+
# Thumb:: stream (Optional) A stream object defining the page's
|
128
|
+
# thumbnail image (see Section 8.2.3, "Thumbnail Images").
|
129
129
|
# B:: array (Optional; PDF 1.1; recommended if the page
|
130
130
|
# contains article beads) An array of indirect references
|
131
131
|
# to article beads appearing on the page (see Section
|
132
|
-
# 8.3.2,
|
132
|
+
# 8.3.2, "Articles"; see also implementation note 37 in
|
133
133
|
# Appendix H). The beads are listed in the array in
|
134
134
|
# natural reading order.
|
135
|
-
# Dur:: number (Optional; PDF 1.1) The page
|
135
|
+
# Dur:: number (Optional; PDF 1.1) The page's display duration
|
136
136
|
# (also called its advance timing): the maximum length of
|
137
137
|
# time, in seconds, that the page is displayed during
|
138
138
|
# presentations before the viewer application
|
139
139
|
# automatically advances to the next page (see Section
|
140
|
-
# 8.3.3,
|
140
|
+
# 8.3.3, "Presentations"). By default, the viewer does not
|
141
141
|
# advance automatically.
|
142
142
|
# Trans:: dictionary (Optional; PDF 1.1) A transition dictionary
|
143
143
|
# describing the transition effect to be used when
|
144
144
|
# displaying the page during presentations (see Section
|
145
|
-
# 8.3.3,
|
145
|
+
# 8.3.3, "Presentations").
|
146
146
|
# Annots:: array (Optional) An array of annotation dictionaries
|
147
147
|
# representing annotations associated with the page (see
|
148
|
-
# Section 8.4,
|
148
|
+
# Section 8.4, "Annotations").
|
149
149
|
# AA:: dictionary (Optional; PDF 1.2) An additional-actions
|
150
150
|
# dictionary defining actions to be performed when the
|
151
|
-
# page is opened or closed (see Section 8.5.2,
|
152
|
-
# Events
|
151
|
+
# page is opened or closed (see Section 8.5.2, "Trigger
|
152
|
+
# Events"; see also implementation note 38 in Appendix H).
|
153
153
|
# Metadata:: stream (Optional; PDF 1.4) A metadata stream containing
|
154
|
-
# metadata for the page (see Section 10.2.2,
|
155
|
-
# Streams
|
154
|
+
# metadata for the page (see Section 10.2.2, "Metadata
|
155
|
+
# Streams").
|
156
156
|
# PieceInfo:: dictionary (Optional; PDF 1.3) A page-piece dictionary
|
157
|
-
# associated with the page (see Section 10.4,
|
158
|
-
# Dictionaries
|
157
|
+
# associated with the page (see Section 10.4, "Page-Piece
|
158
|
+
# Dictionaries").
|
159
159
|
# StructParents:: integer (Required if the page contains structural
|
160
|
-
# content items; PDF 1.3) The integer key of the page
|
161
|
-
# entry in the structural parent tree (see
|
162
|
-
# Structure Elements from Content Items
|
160
|
+
# content items; PDF 1.3) The integer key of the page's
|
161
|
+
# entry in the structural parent tree (see "Finding
|
162
|
+
# Structure Elements from Content Items" on page 797).
|
163
163
|
# ID:: string (Optional; PDF 1.3; indirect reference preferred)
|
164
|
-
# The digital identifier of the page
|
165
|
-
# content set (see Section 10.9.5,
|
166
|
-
# Related to Web Capture
|
167
|
-
# PZ:: number (Optional; PDF 1.3) The page
|
164
|
+
# The digital identifier of the page's parent Web Capture
|
165
|
+
# content set (see Section 10.9.5, "Object Attributes
|
166
|
+
# Related to Web Capture").
|
167
|
+
# PZ:: number (Optional; PDF 1.3) The page's preferred zoom
|
168
168
|
# (magnification) factor: the factor by which it should be
|
169
169
|
# scaled to achieve the natural display magnification (see
|
170
|
-
# Section 10.9.5,
|
171
|
-
# Capture
|
170
|
+
# Section 10.9.5, "Object Attributes Related to Web
|
171
|
+
# Capture").
|
172
172
|
# SeparationInfo:: dictionary (Optional; PDF 1.3) A separation dictionary
|
173
173
|
# containing information needed to generate color
|
174
174
|
# separations for the page (see Section 10.10.3,
|
175
|
-
#
|
175
|
+
# "Separation Dictionaries").
|
176
176
|
# Tabs:: name (Optional; PDF 1.5) A name specifying the tab order
|
177
177
|
# to be used for annotations on the page. The possible
|
178
178
|
# values are R (row order), C (column order), and S
|
179
|
-
# (structure order). See Section 8.4,
|
179
|
+
# (structure order). See Section 8.4, "Annotations," for
|
180
180
|
# details.
|
181
181
|
# TemplateInstantiated:: name (Required if this page was created from a
|
182
182
|
# named page object; PDF 1.5) The name of the
|
183
183
|
# originating page object (see Section 8.6.5,
|
184
|
-
#
|
184
|
+
# "Named Pages").
|
185
185
|
# PresSteps:: dictionary (Optional; PDF 1.5) A navigation node
|
186
186
|
# dictionary representing the first node on the page (see
|
187
|
-
#
|
187
|
+
# "Sub-page Navigation" on page 566).
|
188
188
|
# UserUnit:: number (Optional; PDF 1.6) A positive number giving the
|
189
189
|
# size of default user space units, in multiples of 1/72
|
190
190
|
# inch. The range of supported values is
|
data/lib/pdf/writer.rb
CHANGED
@@ -772,9 +772,9 @@ class PDF::Writer
|
|
772
772
|
|
773
773
|
def font_file(fontfile)
|
774
774
|
path = "#{fontfile}.pfb"
|
775
|
-
return path if File.
|
775
|
+
return path if File.exist?(path)
|
776
776
|
path = "#{fontfile}.ttf"
|
777
|
-
return path if File.
|
777
|
+
return path if File.exist?(path)
|
778
778
|
nil
|
779
779
|
end
|
780
780
|
private :font_file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ypdf-writer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3.
|
4
|
+
version: 1.3.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Austin Ziegler
|
@@ -12,6 +12,48 @@ bindir: bin
|
|
12
12
|
cert_chain: []
|
13
13
|
date: 2009-05-19 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: rexml
|
17
|
+
requirement: !ruby/object:Gem::Requirement
|
18
|
+
requirements:
|
19
|
+
- - ">="
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
requirements:
|
26
|
+
- - ">="
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
version: '0'
|
29
|
+
- !ruby/object:Gem::Dependency
|
30
|
+
name: rmagick
|
31
|
+
requirement: !ruby/object:Gem::Requirement
|
32
|
+
requirements:
|
33
|
+
- - ">="
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
version: '0'
|
36
|
+
type: :runtime
|
37
|
+
prerelease: false
|
38
|
+
version_requirements: !ruby/object:Gem::Requirement
|
39
|
+
requirements:
|
40
|
+
- - ">="
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: '0'
|
43
|
+
- !ruby/object:Gem::Dependency
|
44
|
+
name: hpricot
|
45
|
+
requirement: !ruby/object:Gem::Requirement
|
46
|
+
requirements:
|
47
|
+
- - ">="
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: '0'
|
50
|
+
type: :runtime
|
51
|
+
prerelease: false
|
52
|
+
version_requirements: !ruby/object:Gem::Requirement
|
53
|
+
requirements:
|
54
|
+
- - ">="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: '0'
|
15
57
|
- !ruby/object:Gem::Dependency
|
16
58
|
name: color
|
17
59
|
requirement: !ruby/object:Gem::Requirement
|
@@ -40,6 +82,104 @@ dependencies:
|
|
40
82
|
- - "~>"
|
41
83
|
- !ruby/object:Gem::Version
|
42
84
|
version: '1.3'
|
85
|
+
- !ruby/object:Gem::Dependency
|
86
|
+
name: bundler
|
87
|
+
requirement: !ruby/object:Gem::Requirement
|
88
|
+
requirements:
|
89
|
+
- - ">="
|
90
|
+
- !ruby/object:Gem::Version
|
91
|
+
version: '0'
|
92
|
+
type: :development
|
93
|
+
prerelease: false
|
94
|
+
version_requirements: !ruby/object:Gem::Requirement
|
95
|
+
requirements:
|
96
|
+
- - ">="
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: '0'
|
99
|
+
- !ruby/object:Gem::Dependency
|
100
|
+
name: flexmock
|
101
|
+
requirement: !ruby/object:Gem::Requirement
|
102
|
+
requirements:
|
103
|
+
- - ">="
|
104
|
+
- !ruby/object:Gem::Version
|
105
|
+
version: '0'
|
106
|
+
type: :development
|
107
|
+
prerelease: false
|
108
|
+
version_requirements: !ruby/object:Gem::Requirement
|
109
|
+
requirements:
|
110
|
+
- - ">="
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
version: '0'
|
113
|
+
- !ruby/object:Gem::Dependency
|
114
|
+
name: test-unit
|
115
|
+
requirement: !ruby/object:Gem::Requirement
|
116
|
+
requirements:
|
117
|
+
- - ">="
|
118
|
+
- !ruby/object:Gem::Version
|
119
|
+
version: '0'
|
120
|
+
type: :development
|
121
|
+
prerelease: false
|
122
|
+
version_requirements: !ruby/object:Gem::Requirement
|
123
|
+
requirements:
|
124
|
+
- - ">="
|
125
|
+
- !ruby/object:Gem::Version
|
126
|
+
version: '0'
|
127
|
+
- !ruby/object:Gem::Dependency
|
128
|
+
name: rake
|
129
|
+
requirement: !ruby/object:Gem::Requirement
|
130
|
+
requirements:
|
131
|
+
- - ">="
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
version: '0'
|
134
|
+
type: :development
|
135
|
+
prerelease: false
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
requirements:
|
138
|
+
- - ">="
|
139
|
+
- !ruby/object:Gem::Version
|
140
|
+
version: '0'
|
141
|
+
- !ruby/object:Gem::Dependency
|
142
|
+
name: rspec
|
143
|
+
requirement: !ruby/object:Gem::Requirement
|
144
|
+
requirements:
|
145
|
+
- - ">="
|
146
|
+
- !ruby/object:Gem::Version
|
147
|
+
version: '0'
|
148
|
+
type: :development
|
149
|
+
prerelease: false
|
150
|
+
version_requirements: !ruby/object:Gem::Requirement
|
151
|
+
requirements:
|
152
|
+
- - ">="
|
153
|
+
- !ruby/object:Gem::Version
|
154
|
+
version: '0'
|
155
|
+
- !ruby/object:Gem::Dependency
|
156
|
+
name: pry-byebug
|
157
|
+
requirement: !ruby/object:Gem::Requirement
|
158
|
+
requirements:
|
159
|
+
- - ">="
|
160
|
+
- !ruby/object:Gem::Version
|
161
|
+
version: '0'
|
162
|
+
type: :development
|
163
|
+
prerelease: false
|
164
|
+
version_requirements: !ruby/object:Gem::Requirement
|
165
|
+
requirements:
|
166
|
+
- - ">="
|
167
|
+
- !ruby/object:Gem::Version
|
168
|
+
version: '0'
|
169
|
+
- !ruby/object:Gem::Dependency
|
170
|
+
name: pry-doc
|
171
|
+
requirement: !ruby/object:Gem::Requirement
|
172
|
+
requirements:
|
173
|
+
- - ">="
|
174
|
+
- !ruby/object:Gem::Version
|
175
|
+
version: '0'
|
176
|
+
type: :development
|
177
|
+
prerelease: false
|
178
|
+
version_requirements: !ruby/object:Gem::Requirement
|
179
|
+
requirements:
|
180
|
+
- - ">="
|
181
|
+
- !ruby/object:Gem::Version
|
182
|
+
version: '0'
|
43
183
|
description: Based on http://github.com/metaskills/pdf-writer/. A pure Ruby PDF document
|
44
184
|
creation library.
|
45
185
|
email: zdavatz@ywesee.com
|
@@ -143,11 +283,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
143
283
|
- !ruby/object:Gem::Version
|
144
284
|
version: '0'
|
145
285
|
requirements: []
|
146
|
-
|
147
|
-
rubygems_version: 2.4.5
|
286
|
+
rubygems_version: 3.2.3
|
148
287
|
signing_key:
|
149
288
|
specification_version: 4
|
150
289
|
summary: A pure Ruby PDF document creation library. (Forked by ywesee.com to support
|
151
290
|
Ruby 2.x)
|
152
291
|
test_files: []
|
153
|
-
has_rdoc: true
|