prawn-svg 0.32.0 → 0.34.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.
- checksums.yaml +4 -4
- data/.github/workflows/test.yml +20 -3
- data/.gitignore +1 -0
- data/README.md +32 -24
- data/lib/prawn/svg/attributes/stroke.rb +5 -0
- data/lib/prawn/svg/color.rb +46 -22
- data/lib/prawn/svg/css/selector_parser.rb +11 -11
- data/lib/prawn/svg/css/stylesheets.rb +4 -4
- data/lib/prawn/svg/document.rb +20 -4
- data/lib/prawn/svg/elements/base.rb +10 -11
- data/lib/prawn/svg/elements/gradient.rb +2 -2
- data/lib/prawn/svg/elements/image.rb +54 -21
- data/lib/prawn/svg/elements/path.rb +0 -2
- data/lib/prawn/svg/elements/root.rb +1 -1
- data/lib/prawn/svg/elements/text_component.rb +12 -3
- data/lib/prawn/svg/elements/use.rb +20 -12
- data/lib/prawn/svg/elements.rb +1 -0
- data/lib/prawn/svg/gradients.rb +48 -0
- data/lib/prawn/svg/interface.rb +17 -187
- data/lib/prawn/svg/loaders/data.rb +4 -3
- data/lib/prawn/svg/properties.rb +2 -0
- data/lib/prawn/svg/renderer.rb +236 -0
- data/lib/prawn/svg/version.rb +1 -1
- data/lib/prawn-svg.rb +2 -0
- data/prawn-svg.gemspec +18 -16
- data/spec/prawn/svg/color_spec.rb +29 -16
- data/spec/prawn/svg/document_spec.rb +17 -0
- data/spec/prawn/svg/elements/marker_spec.rb +1 -1
- data/spec/prawn/svg/elements/root_spec.rb +28 -0
- data/spec/prawn/svg/elements/text_spec.rb +27 -0
- data/spec/prawn/svg/interface_spec.rb +10 -2
- data/spec/sample_images/image_svg_embed.svg +6 -0
- data/spec/sample_svg/cmyk.svg +5 -0
- data/spec/sample_svg/gradients-cmyk.svg +40 -0
- data/spec/sample_svg/image_svg.svg +9 -0
- data/spec/sample_svg/ordering.svg +12 -0
- data/spec/sample_svg/symbol.svg +12 -0
- data/spec/spec_helper.rb +29 -5
- metadata +67 -23
metadata
CHANGED
@@ -1,35 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: prawn-svg
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.34.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
-
|
7
|
+
- Mog Nesbitt
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-01-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: base64
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: 0.11.1
|
20
|
-
- - "<"
|
17
|
+
- - "~>"
|
21
18
|
- !ruby/object:Gem::Version
|
22
|
-
version:
|
19
|
+
version: 0.1.0
|
23
20
|
type: :runtime
|
24
21
|
prerelease: false
|
25
22
|
version_requirements: !ruby/object:Gem::Requirement
|
26
23
|
requirements:
|
27
|
-
- - "
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: 0.11.1
|
30
|
-
- - "<"
|
24
|
+
- - "~>"
|
31
25
|
- !ruby/object:Gem::Version
|
32
|
-
version:
|
26
|
+
version: 0.1.0
|
33
27
|
- !ruby/object:Gem::Dependency
|
34
28
|
name: css_parser
|
35
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -44,6 +38,40 @@ dependencies:
|
|
44
38
|
- - "~>"
|
45
39
|
- !ruby/object:Gem::Version
|
46
40
|
version: '1.6'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: matrix
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 0.4.2
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 0.4.2
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: prawn
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 0.11.1
|
62
|
+
- - "<"
|
63
|
+
- !ruby/object:Gem::Version
|
64
|
+
version: '3'
|
65
|
+
type: :runtime
|
66
|
+
prerelease: false
|
67
|
+
version_requirements: !ruby/object:Gem::Requirement
|
68
|
+
requirements:
|
69
|
+
- - ">="
|
70
|
+
- !ruby/object:Gem::Version
|
71
|
+
version: 0.11.1
|
72
|
+
- - "<"
|
73
|
+
- !ruby/object:Gem::Version
|
74
|
+
version: '3'
|
47
75
|
- !ruby/object:Gem::Dependency
|
48
76
|
name: rexml
|
49
77
|
requirement: !ruby/object:Gem::Requirement
|
@@ -59,37 +87,37 @@ dependencies:
|
|
59
87
|
- !ruby/object:Gem::Version
|
60
88
|
version: '3.2'
|
61
89
|
- !ruby/object:Gem::Dependency
|
62
|
-
name:
|
90
|
+
name: rake
|
63
91
|
requirement: !ruby/object:Gem::Requirement
|
64
92
|
requirements:
|
65
93
|
- - "~>"
|
66
94
|
- !ruby/object:Gem::Version
|
67
|
-
version: '
|
95
|
+
version: '13.0'
|
68
96
|
type: :development
|
69
97
|
prerelease: false
|
70
98
|
version_requirements: !ruby/object:Gem::Requirement
|
71
99
|
requirements:
|
72
100
|
- - "~>"
|
73
101
|
- !ruby/object:Gem::Version
|
74
|
-
version: '
|
102
|
+
version: '13.0'
|
75
103
|
- !ruby/object:Gem::Dependency
|
76
|
-
name:
|
104
|
+
name: rspec
|
77
105
|
requirement: !ruby/object:Gem::Requirement
|
78
106
|
requirements:
|
79
107
|
- - "~>"
|
80
108
|
- !ruby/object:Gem::Version
|
81
|
-
version: '
|
109
|
+
version: '3.0'
|
82
110
|
type: :development
|
83
111
|
prerelease: false
|
84
112
|
version_requirements: !ruby/object:Gem::Requirement
|
85
113
|
requirements:
|
86
114
|
- - "~>"
|
87
115
|
- !ruby/object:Gem::Version
|
88
|
-
version: '
|
116
|
+
version: '3.0'
|
89
117
|
description: This gem allows you to render SVG directly into a PDF using the 'prawn'
|
90
118
|
gem. Since PDF is vector-based, you'll get nice scaled graphics if you use SVG
|
91
119
|
instead of an image.
|
92
|
-
email:
|
120
|
+
email: mog@seriousorange.com
|
93
121
|
executables: []
|
94
122
|
extensions: []
|
95
123
|
extra_rdoc_files: []
|
@@ -143,12 +171,14 @@ files:
|
|
143
171
|
- lib/prawn/svg/extensions/additional_gradient_transforms.rb
|
144
172
|
- lib/prawn/svg/font.rb
|
145
173
|
- lib/prawn/svg/font_registry.rb
|
174
|
+
- lib/prawn/svg/gradients.rb
|
146
175
|
- lib/prawn/svg/interface.rb
|
147
176
|
- lib/prawn/svg/loaders/data.rb
|
148
177
|
- lib/prawn/svg/loaders/file.rb
|
149
178
|
- lib/prawn/svg/loaders/web.rb
|
150
179
|
- lib/prawn/svg/pathable.rb
|
151
180
|
- lib/prawn/svg/properties.rb
|
181
|
+
- lib/prawn/svg/renderer.rb
|
152
182
|
- lib/prawn/svg/state.rb
|
153
183
|
- lib/prawn/svg/transform_parser.rb
|
154
184
|
- lib/prawn/svg/ttf.rb
|
@@ -173,6 +203,7 @@ files:
|
|
173
203
|
- spec/prawn/svg/elements/path_spec.rb
|
174
204
|
- spec/prawn/svg/elements/polygon_spec.rb
|
175
205
|
- spec/prawn/svg/elements/polyline_spec.rb
|
206
|
+
- spec/prawn/svg/elements/root_spec.rb
|
176
207
|
- spec/prawn/svg/elements/text_spec.rb
|
177
208
|
- spec/prawn/svg/font_registry_spec.rb
|
178
209
|
- spec/prawn/svg/font_spec.rb
|
@@ -185,6 +216,7 @@ files:
|
|
185
216
|
- spec/prawn/svg/transform_parser_spec.rb
|
186
217
|
- spec/prawn/svg/ttf_spec.rb
|
187
218
|
- spec/prawn/svg/url_loader_spec.rb
|
219
|
+
- spec/sample_images/image_svg_embed.svg
|
188
220
|
- spec/sample_images/mushroom-long.jpg
|
189
221
|
- spec/sample_images/mushroom-wide.jpg
|
190
222
|
- spec/sample_output/.keep
|
@@ -194,6 +226,7 @@ files:
|
|
194
226
|
- spec/sample_svg/circle01.svg
|
195
227
|
- spec/sample_svg/clip_path.svg
|
196
228
|
- spec/sample_svg/close_path.svg
|
229
|
+
- spec/sample_svg/cmyk.svg
|
197
230
|
- spec/sample_svg/cubic01.svg
|
198
231
|
- spec/sample_svg/cubic01a.svg
|
199
232
|
- spec/sample_svg/cubic02.svg
|
@@ -203,12 +236,14 @@ files:
|
|
203
236
|
- spec/sample_svg/gistfile1.svg
|
204
237
|
- spec/sample_svg/google_charts.svg
|
205
238
|
- spec/sample_svg/gradient_transform.svg
|
239
|
+
- spec/sample_svg/gradients-cmyk.svg
|
206
240
|
- spec/sample_svg/gradients.svg
|
207
241
|
- spec/sample_svg/hidden_paths.svg
|
208
242
|
- spec/sample_svg/highcharts.svg
|
209
243
|
- spec/sample_svg/image01.svg
|
210
244
|
- spec/sample_svg/image02_base64.svg
|
211
245
|
- spec/sample_svg/image03.svg
|
246
|
+
- spec/sample_svg/image_svg.svg
|
212
247
|
- spec/sample_svg/line01.svg
|
213
248
|
- spec/sample_svg/links.svg
|
214
249
|
- spec/sample_svg/marker.svg
|
@@ -221,6 +256,7 @@ files:
|
|
221
256
|
- spec/sample_svg/offset_viewport.svg
|
222
257
|
- spec/sample_svg/omnigraffle.svg
|
223
258
|
- spec/sample_svg/opacity01.svg
|
259
|
+
- spec/sample_svg/ordering.svg
|
224
260
|
- spec/sample_svg/path.svg
|
225
261
|
- spec/sample_svg/pie_piece.svg
|
226
262
|
- spec/sample_svg/polygon01.svg
|
@@ -238,6 +274,7 @@ files:
|
|
238
274
|
- spec/sample_svg/subviewports.svg
|
239
275
|
- spec/sample_svg/subviewports2.svg
|
240
276
|
- spec/sample_svg/svg_fill.svg
|
277
|
+
- spec/sample_svg/symbol.svg
|
241
278
|
- spec/sample_svg/text-decoration.svg
|
242
279
|
- spec/sample_svg/text_entities.svg
|
243
280
|
- spec/sample_svg/text_stroke.svg
|
@@ -270,14 +307,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
270
307
|
requirements:
|
271
308
|
- - ">="
|
272
309
|
- !ruby/object:Gem::Version
|
273
|
-
version: 2.
|
310
|
+
version: 2.5.0
|
274
311
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
275
312
|
requirements:
|
276
313
|
- - ">="
|
277
314
|
- !ruby/object:Gem::Version
|
278
315
|
version: '0'
|
279
316
|
requirements: []
|
280
|
-
rubygems_version: 3.
|
317
|
+
rubygems_version: 3.5.3
|
281
318
|
signing_key:
|
282
319
|
specification_version: 4
|
283
320
|
summary: SVG renderer for Prawn PDF library
|
@@ -300,6 +337,7 @@ test_files:
|
|
300
337
|
- spec/prawn/svg/elements/path_spec.rb
|
301
338
|
- spec/prawn/svg/elements/polygon_spec.rb
|
302
339
|
- spec/prawn/svg/elements/polyline_spec.rb
|
340
|
+
- spec/prawn/svg/elements/root_spec.rb
|
303
341
|
- spec/prawn/svg/elements/text_spec.rb
|
304
342
|
- spec/prawn/svg/font_registry_spec.rb
|
305
343
|
- spec/prawn/svg/font_spec.rb
|
@@ -312,6 +350,7 @@ test_files:
|
|
312
350
|
- spec/prawn/svg/transform_parser_spec.rb
|
313
351
|
- spec/prawn/svg/ttf_spec.rb
|
314
352
|
- spec/prawn/svg/url_loader_spec.rb
|
353
|
+
- spec/sample_images/image_svg_embed.svg
|
315
354
|
- spec/sample_images/mushroom-long.jpg
|
316
355
|
- spec/sample_images/mushroom-wide.jpg
|
317
356
|
- spec/sample_output/.keep
|
@@ -321,6 +360,7 @@ test_files:
|
|
321
360
|
- spec/sample_svg/circle01.svg
|
322
361
|
- spec/sample_svg/clip_path.svg
|
323
362
|
- spec/sample_svg/close_path.svg
|
363
|
+
- spec/sample_svg/cmyk.svg
|
324
364
|
- spec/sample_svg/cubic01.svg
|
325
365
|
- spec/sample_svg/cubic01a.svg
|
326
366
|
- spec/sample_svg/cubic02.svg
|
@@ -330,12 +370,14 @@ test_files:
|
|
330
370
|
- spec/sample_svg/gistfile1.svg
|
331
371
|
- spec/sample_svg/google_charts.svg
|
332
372
|
- spec/sample_svg/gradient_transform.svg
|
373
|
+
- spec/sample_svg/gradients-cmyk.svg
|
333
374
|
- spec/sample_svg/gradients.svg
|
334
375
|
- spec/sample_svg/hidden_paths.svg
|
335
376
|
- spec/sample_svg/highcharts.svg
|
336
377
|
- spec/sample_svg/image01.svg
|
337
378
|
- spec/sample_svg/image02_base64.svg
|
338
379
|
- spec/sample_svg/image03.svg
|
380
|
+
- spec/sample_svg/image_svg.svg
|
339
381
|
- spec/sample_svg/line01.svg
|
340
382
|
- spec/sample_svg/links.svg
|
341
383
|
- spec/sample_svg/marker.svg
|
@@ -348,6 +390,7 @@ test_files:
|
|
348
390
|
- spec/sample_svg/offset_viewport.svg
|
349
391
|
- spec/sample_svg/omnigraffle.svg
|
350
392
|
- spec/sample_svg/opacity01.svg
|
393
|
+
- spec/sample_svg/ordering.svg
|
351
394
|
- spec/sample_svg/path.svg
|
352
395
|
- spec/sample_svg/pie_piece.svg
|
353
396
|
- spec/sample_svg/polygon01.svg
|
@@ -365,6 +408,7 @@ test_files:
|
|
365
408
|
- spec/sample_svg/subviewports.svg
|
366
409
|
- spec/sample_svg/subviewports2.svg
|
367
410
|
- spec/sample_svg/svg_fill.svg
|
411
|
+
- spec/sample_svg/symbol.svg
|
368
412
|
- spec/sample_svg/text-decoration.svg
|
369
413
|
- spec/sample_svg/text_entities.svg
|
370
414
|
- spec/sample_svg/text_stroke.svg
|