imprimatur 0.5.0 → 0.6.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.
Files changed (58) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +31 -0
  3. data/Cargo.lock +473 -5
  4. data/Cargo.toml +17 -1
  5. data/README.md +63 -7
  6. data/ext/imprimatur_native/cli/Cargo.toml +1 -1
  7. data/ext/imprimatur_native/cli/src/app.rs +3 -1
  8. data/ext/imprimatur_native/core/Cargo.toml +30 -13
  9. data/ext/imprimatur_native/core/README.md +18 -1
  10. data/ext/imprimatur_native/core/src/bin/imprimatur-render-worker.rs +10 -0
  11. data/ext/imprimatur_native/core/src/bytes.rs +16 -0
  12. data/ext/imprimatur_native/core/src/doc/picture.rs +3 -7
  13. data/ext/imprimatur_native/core/src/doc/size.rs +14 -0
  14. data/ext/imprimatur_native/core/src/doc/symbol.rs +3 -5
  15. data/ext/imprimatur_native/core/src/doc.rs +24 -0
  16. data/ext/imprimatur_native/core/src/docx.rs +6 -5
  17. data/ext/imprimatur_native/core/src/error.rs +6 -0
  18. data/ext/imprimatur_native/core/src/font.rs +12 -0
  19. data/ext/imprimatur_native/core/src/lib.rs +6 -0
  20. data/ext/imprimatur_native/core/src/pdf/layout.rs +13 -5
  21. data/ext/imprimatur_native/core/src/pdf/objects.rs +1 -1
  22. data/ext/imprimatur_native/core/src/pdf/truetype/descriptor.rs +1 -0
  23. data/ext/imprimatur_native/core/src/read/budget.rs +10 -5
  24. data/ext/imprimatur_native/core/src/read/content.rs +16 -0
  25. data/ext/imprimatur_native/core/src/read/image/dimensions.rs +2 -2
  26. data/ext/imprimatur_native/core/src/read/ole.rs +1 -8
  27. data/ext/imprimatur_native/core/src/read/pdf/bounded.rs +249 -0
  28. data/ext/imprimatur_native/core/src/read/pdf/content/state.rs +50 -0
  29. data/ext/imprimatur_native/core/src/read/pdf/content.rs +43 -54
  30. data/ext/imprimatur_native/core/src/read/pdf/document/pages.rs +140 -0
  31. data/ext/imprimatur_native/core/src/read/pdf/document.rs +20 -110
  32. data/ext/imprimatur_native/core/src/read/pdf/filter.rs +25 -13
  33. data/ext/imprimatur_native/core/src/read/pdf/font.rs +4 -3
  34. data/ext/imprimatur_native/core/src/read/pdf/isolation/protocol.rs +224 -0
  35. data/ext/imprimatur_native/core/src/read/pdf/isolation/stream.rs +113 -0
  36. data/ext/imprimatur_native/core/src/read/pdf/isolation/system.rs +98 -0
  37. data/ext/imprimatur_native/core/src/read/pdf/isolation/worker.rs +74 -0
  38. data/ext/imprimatur_native/core/src/read/pdf/isolation.rs +255 -0
  39. data/ext/imprimatur_native/core/src/read/pdf/render.rs +206 -0
  40. data/ext/imprimatur_native/core/src/read/pdf.rs +16 -8
  41. data/ext/imprimatur_native/core/src/read/xls/strings.rs +2 -1
  42. data/ext/imprimatur_native/core/src/read/xls.rs +1 -8
  43. data/ext/imprimatur_native/core/src/read.rs +6 -5
  44. data/ext/imprimatur_native/core/src/test_support/font.rs +37 -0
  45. data/ext/imprimatur_native/core/src/xlsx/validation.rs +28 -18
  46. data/ext/imprimatur_native/core/src/zip/reader.rs +1 -8
  47. data/ext/imprimatur_native/extconf.rb +18 -0
  48. data/ext/imprimatur_native/ffi/Cargo.toml +2 -2
  49. data/ext/imprimatur_native/ffi/src/document.rs +6 -0
  50. data/ext/imprimatur_native/ffi/src/lib.rs +7 -0
  51. data/ext/imprimatur_native/ffi/src/pdf.rs +88 -0
  52. data/ext/imprimatur_native/ffi/src/read.rs +18 -12
  53. data/lib/imprimatur/document.rb +4 -2
  54. data/lib/imprimatur/native.rb +7 -0
  55. data/lib/imprimatur/pdf_reader.rb +29 -0
  56. data/lib/imprimatur/version.rb +1 -1
  57. data/lib/imprimatur.rb +26 -2
  58. metadata +20 -4
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: imprimatur
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.6.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Abdelkader Boudih
@@ -24,9 +24,10 @@ dependencies:
24
24
  - !ruby/object:Gem::Version
25
25
  version: 0.9.130
26
26
  description: 'A Ruby DSL over a native core that writes Excel workbooks, and PDF and
27
- Word documents from one model, with its own XML, zip and PDF writers: no third-party
28
- format stack. It reads PDF, XLSX, XLS, ODS and DOCX back: as Markdown, as typed
29
- structure, and their images. Precompiled for Linux, macOS and FreeBSD; CRuby only.'
27
+ Word documents from one model, with its own XML, zip and PDF readers and writers.
28
+ It reads PDF, XLSX, XLS, ODS and DOCX back: as Markdown, as typed structure, and
29
+ their images. Full-page PDF rendering uses the pure-Rust Hayro renderer. Precompiled
30
+ for Linux, macOS and FreeBSD; CRuby only.'
30
31
  email:
31
32
  - terminale@gmail.com
32
33
  executables: []
@@ -58,9 +59,12 @@ files:
58
59
  - ext/imprimatur_native/core/src/barcode/ean.rs
59
60
  - ext/imprimatur_native/core/src/barcode/gs1.rs
60
61
  - ext/imprimatur_native/core/src/barcode/matrix.rs
62
+ - ext/imprimatur_native/core/src/bin/imprimatur-render-worker.rs
63
+ - ext/imprimatur_native/core/src/bytes.rs
61
64
  - ext/imprimatur_native/core/src/doc.rs
62
65
  - ext/imprimatur_native/core/src/doc/paragraph.rs
63
66
  - ext/imprimatur_native/core/src/doc/picture.rs
67
+ - ext/imprimatur_native/core/src/doc/size.rs
64
68
  - ext/imprimatur_native/core/src/doc/symbol.rs
65
69
  - ext/imprimatur_native/core/src/doc/table.rs
66
70
  - ext/imprimatur_native/core/src/docx.rs
@@ -94,22 +98,31 @@ files:
94
98
  - ext/imprimatur_native/core/src/read/ole.rs
95
99
  - ext/imprimatur_native/core/src/read/package.rs
96
100
  - ext/imprimatur_native/core/src/read/pdf.rs
101
+ - ext/imprimatur_native/core/src/read/pdf/bounded.rs
97
102
  - ext/imprimatur_native/core/src/read/pdf/cmap.rs
98
103
  - ext/imprimatur_native/core/src/read/pdf/content.rs
99
104
  - ext/imprimatur_native/core/src/read/pdf/content/geometry.rs
100
105
  - ext/imprimatur_native/core/src/read/pdf/content/operands.rs
106
+ - ext/imprimatur_native/core/src/read/pdf/content/state.rs
101
107
  - ext/imprimatur_native/core/src/read/pdf/crypt.rs
102
108
  - ext/imprimatur_native/core/src/read/pdf/document.rs
109
+ - ext/imprimatur_native/core/src/read/pdf/document/pages.rs
103
110
  - ext/imprimatur_native/core/src/read/pdf/filter.rs
104
111
  - ext/imprimatur_native/core/src/read/pdf/font.rs
105
112
  - ext/imprimatur_native/core/src/read/pdf/glyphs.rs
106
113
  - ext/imprimatur_native/core/src/read/pdf/glyphs.txt
107
114
  - ext/imprimatur_native/core/src/read/pdf/images.rs
115
+ - ext/imprimatur_native/core/src/read/pdf/isolation.rs
116
+ - ext/imprimatur_native/core/src/read/pdf/isolation/protocol.rs
117
+ - ext/imprimatur_native/core/src/read/pdf/isolation/stream.rs
118
+ - ext/imprimatur_native/core/src/read/pdf/isolation/system.rs
119
+ - ext/imprimatur_native/core/src/read/pdf/isolation/worker.rs
108
120
  - ext/imprimatur_native/core/src/read/pdf/layout.rs
109
121
  - ext/imprimatur_native/core/src/read/pdf/layout/bidi.rs
110
122
  - ext/imprimatur_native/core/src/read/pdf/lexer.rs
111
123
  - ext/imprimatur_native/core/src/read/pdf/object.rs
112
124
  - ext/imprimatur_native/core/src/read/pdf/object/name.rs
125
+ - ext/imprimatur_native/core/src/read/pdf/render.rs
113
126
  - ext/imprimatur_native/core/src/read/pdf/xref.rs
114
127
  - ext/imprimatur_native/core/src/read/span.rs
115
128
  - ext/imprimatur_native/core/src/read/xls.rs
@@ -118,6 +131,7 @@ files:
118
131
  - ext/imprimatur_native/core/src/read/xlsx/formats.rs
119
132
  - ext/imprimatur_native/core/src/script.rs
120
133
  - ext/imprimatur_native/core/src/style.rs
134
+ - ext/imprimatur_native/core/src/test_support/font.rs
121
135
  - ext/imprimatur_native/core/src/xlsx.rs
122
136
  - ext/imprimatur_native/core/src/xlsx/autofit.rs
123
137
  - ext/imprimatur_native/core/src/xlsx/cell.rs
@@ -142,6 +156,7 @@ files:
142
156
  - ext/imprimatur_native/ffi/src/convert.rs
143
157
  - ext/imprimatur_native/ffi/src/document.rs
144
158
  - ext/imprimatur_native/ffi/src/lib.rs
159
+ - ext/imprimatur_native/ffi/src/pdf.rs
145
160
  - ext/imprimatur_native/ffi/src/read.rs
146
161
  - ext/imprimatur_native/ffi/src/sheets.rs
147
162
  - ext/imprimatur_native/ffi/src/style.rs
@@ -152,6 +167,7 @@ files:
152
167
  - lib/imprimatur/error.rb
153
168
  - lib/imprimatur/formula.rb
154
169
  - lib/imprimatur/native.rb
170
+ - lib/imprimatur/pdf_reader.rb
155
171
  - lib/imprimatur/reader.rb
156
172
  - lib/imprimatur/spreadsheet.rb
157
173
  - lib/imprimatur/style.rb