@syncfusion/ej2-pdf-export 30.1.37 → 30.1.41

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 (369) hide show
  1. package/.eslintrc.json +2 -0
  2. package/dist/ej2-pdf-export.min.js +2 -2
  3. package/dist/ej2-pdf-export.umd.min.js +2 -2
  4. package/dist/ej2-pdf-export.umd.min.js.map +1 -1
  5. package/dist/es6/ej2-pdf-export.es2015.js +65 -19
  6. package/dist/es6/ej2-pdf-export.es2015.js.map +1 -1
  7. package/dist/es6/ej2-pdf-export.es5.js +65 -19
  8. package/dist/es6/ej2-pdf-export.es5.js.map +1 -1
  9. package/dist/global/ej2-pdf-export.min.js +2 -2
  10. package/dist/global/ej2-pdf-export.min.js.map +1 -1
  11. package/dist/global/index.d.ts +1 -1
  12. package/package.json +8 -44
  13. package/src/implementation/graphics/fonts/ttf-reader.d.ts +2 -0
  14. package/src/implementation/graphics/fonts/ttf-reader.js +14 -1
  15. package/src/implementation/graphics/fonts/unicode-true-type-font.js +25 -7
  16. package/src/implementation/input-output/pdf-dictionary-properties.d.ts +15 -0
  17. package/src/implementation/input-output/pdf-dictionary-properties.js +15 -0
  18. package/src/implementation/structured-elements/grid/layout/grid-layouter.js +10 -10
  19. package/src/implementation/structured-elements/grid/pdf-grid.js +1 -1
  20. package/dist/ts/implementation/actions/action.d.ts +0 -50
  21. package/dist/ts/implementation/actions/action.ts +0 -76
  22. package/dist/ts/implementation/actions/index.d.ts +0 -6
  23. package/dist/ts/implementation/actions/index.ts +0 -6
  24. package/dist/ts/implementation/actions/uri-action.d.ts +0 -33
  25. package/dist/ts/implementation/actions/uri-action.ts +0 -52
  26. package/dist/ts/implementation/annotations/action-link-annotation.d.ts +0 -30
  27. package/dist/ts/implementation/annotations/action-link-annotation.ts +0 -43
  28. package/dist/ts/implementation/annotations/annotation-collection.d.ts +0 -77
  29. package/dist/ts/implementation/annotations/annotation-collection.ts +0 -159
  30. package/dist/ts/implementation/annotations/annotation.d.ts +0 -152
  31. package/dist/ts/implementation/annotations/annotation.ts +0 -241
  32. package/dist/ts/implementation/annotations/document-link-annotation.d.ts +0 -89
  33. package/dist/ts/implementation/annotations/document-link-annotation.ts +0 -118
  34. package/dist/ts/implementation/annotations/index.d.ts +0 -11
  35. package/dist/ts/implementation/annotations/index.ts +0 -11
  36. package/dist/ts/implementation/annotations/link-annotation.d.ts +0 -23
  37. package/dist/ts/implementation/annotations/link-annotation.ts +0 -32
  38. package/dist/ts/implementation/annotations/pdf-text-web-link.d.ts +0 -118
  39. package/dist/ts/implementation/annotations/pdf-text-web-link.ts +0 -268
  40. package/dist/ts/implementation/annotations/uri-annotation.d.ts +0 -48
  41. package/dist/ts/implementation/annotations/uri-annotation.ts +0 -86
  42. package/dist/ts/implementation/collections/dictionary.d.ts +0 -76
  43. package/dist/ts/implementation/collections/dictionary.ts +0 -150
  44. package/dist/ts/implementation/collections/index.d.ts +0 -7
  45. package/dist/ts/implementation/collections/index.ts +0 -7
  46. package/dist/ts/implementation/collections/object-object-pair/dictionary.d.ts +0 -62
  47. package/dist/ts/implementation/collections/object-object-pair/dictionary.ts +0 -125
  48. package/dist/ts/implementation/collections/object-object-pair/index.d.ts +0 -5
  49. package/dist/ts/implementation/collections/object-object-pair/index.ts +0 -5
  50. package/dist/ts/implementation/collections/utils.d.ts +0 -27
  51. package/dist/ts/implementation/collections/utils.ts +0 -38
  52. package/dist/ts/implementation/document/automatic-fields/automatic-field-info-collection.d.ts +0 -31
  53. package/dist/ts/implementation/document/automatic-fields/automatic-field-info-collection.ts +0 -39
  54. package/dist/ts/implementation/document/automatic-fields/automatic-field-info.d.ts +0 -67
  55. package/dist/ts/implementation/document/automatic-fields/automatic-field-info.ts +0 -108
  56. package/dist/ts/implementation/document/automatic-fields/automatic-field.d.ts +0 -41
  57. package/dist/ts/implementation/document/automatic-fields/automatic-field.ts +0 -127
  58. package/dist/ts/implementation/document/automatic-fields/composite-field.d.ts +0 -46
  59. package/dist/ts/implementation/document/automatic-fields/composite-field.ts +0 -76
  60. package/dist/ts/implementation/document/automatic-fields/index.d.ts +0 -11
  61. package/dist/ts/implementation/document/automatic-fields/index.ts +0 -11
  62. package/dist/ts/implementation/document/automatic-fields/multiple-value-field.d.ts +0 -18
  63. package/dist/ts/implementation/document/automatic-fields/multiple-value-field.ts +0 -37
  64. package/dist/ts/implementation/document/automatic-fields/page-count-field.d.ts +0 -44
  65. package/dist/ts/implementation/document/automatic-fields/page-count-field.ts +0 -75
  66. package/dist/ts/implementation/document/automatic-fields/pdf-numbers-convertor.d.ts +0 -53
  67. package/dist/ts/implementation/document/automatic-fields/pdf-numbers-convertor.ts +0 -157
  68. package/dist/ts/implementation/document/automatic-fields/pdf-page-number-field.d.ts +0 -51
  69. package/dist/ts/implementation/document/automatic-fields/pdf-page-number-field.ts +0 -82
  70. package/dist/ts/implementation/document/automatic-fields/pdf-template-value-pair.d.ts +0 -38
  71. package/dist/ts/implementation/document/automatic-fields/pdf-template-value-pair.ts +0 -60
  72. package/dist/ts/implementation/document/automatic-fields/single-value-field.d.ts +0 -15
  73. package/dist/ts/implementation/document/automatic-fields/single-value-field.ts +0 -48
  74. package/dist/ts/implementation/document/index.d.ts +0 -16
  75. package/dist/ts/implementation/document/index.ts +0 -16
  76. package/dist/ts/implementation/document/pdf-catalog.d.ts +0 -39
  77. package/dist/ts/implementation/document/pdf-catalog.ts +0 -65
  78. package/dist/ts/implementation/document/pdf-document-base.d.ts +0 -137
  79. package/dist/ts/implementation/document/pdf-document-base.ts +0 -187
  80. package/dist/ts/implementation/document/pdf-document-template.d.ts +0 -166
  81. package/dist/ts/implementation/document/pdf-document-template.ts +0 -310
  82. package/dist/ts/implementation/document/pdf-document.d.ts +0 -227
  83. package/dist/ts/implementation/document/pdf-document.ts +0 -361
  84. package/dist/ts/implementation/document/pdf-viewer-preferences.d.ts +0 -467
  85. package/dist/ts/implementation/document/pdf-viewer-preferences.ts +0 -578
  86. package/dist/ts/implementation/drawing/index.d.ts +0 -5
  87. package/dist/ts/implementation/drawing/index.ts +0 -5
  88. package/dist/ts/implementation/drawing/pdf-drawing.d.ts +0 -141
  89. package/dist/ts/implementation/drawing/pdf-drawing.ts +0 -218
  90. package/dist/ts/implementation/general/enum.d.ts +0 -21
  91. package/dist/ts/implementation/general/enum.ts +0 -21
  92. package/dist/ts/implementation/general/functions/index.d.ts +0 -6
  93. package/dist/ts/implementation/general/functions/index.ts +0 -6
  94. package/dist/ts/implementation/general/functions/pdf-function.d.ts +0 -44
  95. package/dist/ts/implementation/general/functions/pdf-function.ts +0 -66
  96. package/dist/ts/implementation/general/functions/pdf-sampled-function.d.ts +0 -25
  97. package/dist/ts/implementation/general/functions/pdf-sampled-function.ts +0 -63
  98. package/dist/ts/implementation/general/index.d.ts +0 -9
  99. package/dist/ts/implementation/general/index.ts +0 -9
  100. package/dist/ts/implementation/general/pdf-cache-collection.d.ts +0 -42
  101. package/dist/ts/implementation/general/pdf-cache-collection.ts +0 -97
  102. package/dist/ts/implementation/general/pdf-collection.d.ts +0 -26
  103. package/dist/ts/implementation/general/pdf-collection.ts +0 -41
  104. package/dist/ts/implementation/general/pdf-destination.d.ts +0 -103
  105. package/dist/ts/implementation/general/pdf-destination.ts +0 -170
  106. package/dist/ts/implementation/graphics/brushes/enum.d.ts +0 -236
  107. package/dist/ts/implementation/graphics/brushes/enum.ts +0 -237
  108. package/dist/ts/implementation/graphics/brushes/index.d.ts +0 -13
  109. package/dist/ts/implementation/graphics/brushes/index.ts +0 -13
  110. package/dist/ts/implementation/graphics/brushes/pdf-blend.d.ts +0 -105
  111. package/dist/ts/implementation/graphics/brushes/pdf-blend.ts +0 -294
  112. package/dist/ts/implementation/graphics/brushes/pdf-brush.d.ts +0 -51
  113. package/dist/ts/implementation/graphics/brushes/pdf-brush.ts +0 -63
  114. package/dist/ts/implementation/graphics/brushes/pdf-brushes.d.ts +0 -726
  115. package/dist/ts/implementation/graphics/brushes/pdf-brushes.ts +0 -2438
  116. package/dist/ts/implementation/graphics/brushes/pdf-color-blend.d.ts +0 -113
  117. package/dist/ts/implementation/graphics/brushes/pdf-color-blend.ts +0 -295
  118. package/dist/ts/implementation/graphics/brushes/pdf-gradient-brush.d.ts +0 -155
  119. package/dist/ts/implementation/graphics/brushes/pdf-gradient-brush.ts +0 -311
  120. package/dist/ts/implementation/graphics/brushes/pdf-linear-gradient-brush.d.ts +0 -147
  121. package/dist/ts/implementation/graphics/brushes/pdf-linear-gradient-brush.ts +0 -406
  122. package/dist/ts/implementation/graphics/brushes/pdf-radial-gradient-brush.d.ts +0 -122
  123. package/dist/ts/implementation/graphics/brushes/pdf-radial-gradient-brush.ts +0 -290
  124. package/dist/ts/implementation/graphics/brushes/pdf-solid-brush.d.ts +0 -77
  125. package/dist/ts/implementation/graphics/brushes/pdf-solid-brush.ts +0 -107
  126. package/dist/ts/implementation/graphics/brushes/pdf-tiling-brush.d.ts +0 -161
  127. package/dist/ts/implementation/graphics/brushes/pdf-tiling-brush.ts +0 -304
  128. package/dist/ts/implementation/graphics/constants.d.ts +0 -31
  129. package/dist/ts/implementation/graphics/constants.ts +0 -31
  130. package/dist/ts/implementation/graphics/enum.d.ts +0 -413
  131. package/dist/ts/implementation/graphics/enum.ts +0 -413
  132. package/dist/ts/implementation/graphics/figures/arc.d.ts +0 -87
  133. package/dist/ts/implementation/graphics/figures/arc.ts +0 -133
  134. package/dist/ts/implementation/graphics/figures/base/draw-element.d.ts +0 -30
  135. package/dist/ts/implementation/graphics/figures/base/draw-element.ts +0 -59
  136. package/dist/ts/implementation/graphics/figures/base/element-layouter.d.ts +0 -161
  137. package/dist/ts/implementation/graphics/figures/base/element-layouter.ts +0 -260
  138. package/dist/ts/implementation/graphics/figures/base/fill-element.d.ts +0 -46
  139. package/dist/ts/implementation/graphics/figures/base/fill-element.ts +0 -72
  140. package/dist/ts/implementation/graphics/figures/base/graphics-element.d.ts +0 -16
  141. package/dist/ts/implementation/graphics/figures/base/graphics-element.ts +0 -34
  142. package/dist/ts/implementation/graphics/figures/base/index.d.ts +0 -9
  143. package/dist/ts/implementation/graphics/figures/base/index.ts +0 -9
  144. package/dist/ts/implementation/graphics/figures/base/pdf-shape-element.d.ts +0 -40
  145. package/dist/ts/implementation/graphics/figures/base/pdf-shape-element.ts +0 -69
  146. package/dist/ts/implementation/graphics/figures/base/shape-layouter.d.ts +0 -131
  147. package/dist/ts/implementation/graphics/figures/base/shape-layouter.ts +0 -276
  148. package/dist/ts/implementation/graphics/figures/base/text-layouter.d.ts +0 -107
  149. package/dist/ts/implementation/graphics/figures/base/text-layouter.ts +0 -212
  150. package/dist/ts/implementation/graphics/figures/ellipse-part.d.ts +0 -48
  151. package/dist/ts/implementation/graphics/figures/ellipse-part.ts +0 -76
  152. package/dist/ts/implementation/graphics/figures/enum.d.ts +0 -79
  153. package/dist/ts/implementation/graphics/figures/enum.ts +0 -80
  154. package/dist/ts/implementation/graphics/figures/index.d.ts +0 -13
  155. package/dist/ts/implementation/graphics/figures/index.ts +0 -13
  156. package/dist/ts/implementation/graphics/figures/layout-element.d.ts +0 -73
  157. package/dist/ts/implementation/graphics/figures/layout-element.ts +0 -132
  158. package/dist/ts/implementation/graphics/figures/path.d.ts +0 -319
  159. package/dist/ts/implementation/graphics/figures/path.ts +0 -646
  160. package/dist/ts/implementation/graphics/figures/pdf-template.d.ts +0 -113
  161. package/dist/ts/implementation/graphics/figures/pdf-template.ts +0 -205
  162. package/dist/ts/implementation/graphics/figures/rectangle-area.d.ts +0 -64
  163. package/dist/ts/implementation/graphics/figures/rectangle-area.ts +0 -108
  164. package/dist/ts/implementation/graphics/figures/text-element.d.ts +0 -214
  165. package/dist/ts/implementation/graphics/figures/text-element.ts +0 -449
  166. package/dist/ts/implementation/graphics/fonts/enum.d.ts +0 -385
  167. package/dist/ts/implementation/graphics/fonts/enum.ts +0 -385
  168. package/dist/ts/implementation/graphics/fonts/index.d.ts +0 -16
  169. package/dist/ts/implementation/graphics/fonts/index.ts +0 -16
  170. package/dist/ts/implementation/graphics/fonts/pdf-font-metrics.d.ts +0 -164
  171. package/dist/ts/implementation/graphics/fonts/pdf-font-metrics.ts +0 -248
  172. package/dist/ts/implementation/graphics/fonts/pdf-font.d.ts +0 -187
  173. package/dist/ts/implementation/graphics/fonts/pdf-font.ts +0 -316
  174. package/dist/ts/implementation/graphics/fonts/pdf-standard-font-metrics-factory.d.ts +0 -301
  175. package/dist/ts/implementation/graphics/fonts/pdf-standard-font-metrics-factory.ts +0 -606
  176. package/dist/ts/implementation/graphics/fonts/pdf-standard-font.d.ts +0 -143
  177. package/dist/ts/implementation/graphics/fonts/pdf-standard-font.ts +0 -243
  178. package/dist/ts/implementation/graphics/fonts/pdf-string-format.d.ts +0 -321
  179. package/dist/ts/implementation/graphics/fonts/pdf-string-format.ts +0 -474
  180. package/dist/ts/implementation/graphics/fonts/pdf-true-type-font.d.ts +0 -49
  181. package/dist/ts/implementation/graphics/fonts/pdf-true-type-font.ts +0 -165
  182. package/dist/ts/implementation/graphics/fonts/rtl/index.d.ts +0 -6
  183. package/dist/ts/implementation/graphics/fonts/rtl/index.ts +0 -6
  184. package/dist/ts/implementation/graphics/fonts/rtl/rtl-bidirectional.d.ts +0 -62
  185. package/dist/ts/implementation/graphics/fonts/rtl/rtl-bidirectional.ts +0 -958
  186. package/dist/ts/implementation/graphics/fonts/rtl/rtl-text-shape.d.ts +0 -68
  187. package/dist/ts/implementation/graphics/fonts/rtl/rtl-text-shape.ts +0 -374
  188. package/dist/ts/implementation/graphics/fonts/rtl-renderer.d.ts +0 -23
  189. package/dist/ts/implementation/graphics/fonts/rtl-renderer.ts +0 -255
  190. package/dist/ts/implementation/graphics/fonts/string-layouter.d.ts +0 -254
  191. package/dist/ts/implementation/graphics/fonts/string-layouter.ts +0 -617
  192. package/dist/ts/implementation/graphics/fonts/string-tokenizer.d.ts +0 -109
  193. package/dist/ts/implementation/graphics/fonts/string-tokenizer.ts +0 -275
  194. package/dist/ts/implementation/graphics/fonts/ttf-OS2-Table.d.ts +0 -204
  195. package/dist/ts/implementation/graphics/fonts/ttf-OS2-Table.ts +0 -206
  196. package/dist/ts/implementation/graphics/fonts/ttf-apple-cmap-sub-table.d.ts +0 -17
  197. package/dist/ts/implementation/graphics/fonts/ttf-apple-cmap-sub-table.ts +0 -18
  198. package/dist/ts/implementation/graphics/fonts/ttf-cmap-sub-table.d.ts +0 -17
  199. package/dist/ts/implementation/graphics/fonts/ttf-cmap-sub-table.ts +0 -18
  200. package/dist/ts/implementation/graphics/fonts/ttf-cmap-table.d.ts +0 -13
  201. package/dist/ts/implementation/graphics/fonts/ttf-cmap-table.ts +0 -14
  202. package/dist/ts/implementation/graphics/fonts/ttf-glyph-header.d.ts +0 -25
  203. package/dist/ts/implementation/graphics/fonts/ttf-glyph-header.ts +0 -26
  204. package/dist/ts/implementation/graphics/fonts/ttf-glyph-info.d.ts +0 -25
  205. package/dist/ts/implementation/graphics/fonts/ttf-glyph-info.ts +0 -35
  206. package/dist/ts/implementation/graphics/fonts/ttf-head-table.d.ts +0 -94
  207. package/dist/ts/implementation/graphics/fonts/ttf-head-table.ts +0 -94
  208. package/dist/ts/implementation/graphics/fonts/ttf-horizontal-header-table.d.ts +0 -55
  209. package/dist/ts/implementation/graphics/fonts/ttf-horizontal-header-table.ts +0 -56
  210. package/dist/ts/implementation/graphics/fonts/ttf-loca-table.d.ts +0 -9
  211. package/dist/ts/implementation/graphics/fonts/ttf-loca-table.ts +0 -10
  212. package/dist/ts/implementation/graphics/fonts/ttf-long-hor-metric.d.ts +0 -13
  213. package/dist/ts/implementation/graphics/fonts/ttf-long-hor-metric.ts +0 -14
  214. package/dist/ts/implementation/graphics/fonts/ttf-metrics.d.ts +0 -101
  215. package/dist/ts/implementation/graphics/fonts/ttf-metrics.ts +0 -106
  216. package/dist/ts/implementation/graphics/fonts/ttf-microsoft-cmap-sub-table.d.ts +0 -57
  217. package/dist/ts/implementation/graphics/fonts/ttf-microsoft-cmap-sub-table.ts +0 -58
  218. package/dist/ts/implementation/graphics/fonts/ttf-name-record.d.ts +0 -33
  219. package/dist/ts/implementation/graphics/fonts/ttf-name-record.ts +0 -33
  220. package/dist/ts/implementation/graphics/fonts/ttf-name-table.d.ts +0 -22
  221. package/dist/ts/implementation/graphics/fonts/ttf-name-table.ts +0 -22
  222. package/dist/ts/implementation/graphics/fonts/ttf-post-table.d.ts +0 -41
  223. package/dist/ts/implementation/graphics/fonts/ttf-post-table.ts +0 -42
  224. package/dist/ts/implementation/graphics/fonts/ttf-reader.d.ts +0 -225
  225. package/dist/ts/implementation/graphics/fonts/ttf-reader.ts +0 -1254
  226. package/dist/ts/implementation/graphics/fonts/ttf-table-info.d.ts +0 -22
  227. package/dist/ts/implementation/graphics/fonts/ttf-table-info.ts +0 -26
  228. package/dist/ts/implementation/graphics/fonts/ttf-trimmed-cmap-sub-table.d.ts +0 -25
  229. package/dist/ts/implementation/graphics/fonts/ttf-trimmed-cmap-sub-table.ts +0 -26
  230. package/dist/ts/implementation/graphics/fonts/unicode-true-type-font.d.ts +0 -213
  231. package/dist/ts/implementation/graphics/fonts/unicode-true-type-font.ts +0 -577
  232. package/dist/ts/implementation/graphics/images/byte-array.d.ts +0 -74
  233. package/dist/ts/implementation/graphics/images/byte-array.ts +0 -137
  234. package/dist/ts/implementation/graphics/images/image-decoder.d.ts +0 -274
  235. package/dist/ts/implementation/graphics/images/image-decoder.ts +0 -439
  236. package/dist/ts/implementation/graphics/images/index.d.ts +0 -8
  237. package/dist/ts/implementation/graphics/images/index.ts +0 -8
  238. package/dist/ts/implementation/graphics/images/pdf-bitmap.d.ts +0 -90
  239. package/dist/ts/implementation/graphics/images/pdf-bitmap.ts +0 -110
  240. package/dist/ts/implementation/graphics/images/pdf-image.d.ts +0 -88
  241. package/dist/ts/implementation/graphics/images/pdf-image.ts +0 -132
  242. package/dist/ts/implementation/graphics/index.d.ts +0 -35
  243. package/dist/ts/implementation/graphics/index.ts +0 -46
  244. package/dist/ts/implementation/graphics/pdf-color.d.ts +0 -206
  245. package/dist/ts/implementation/graphics/pdf-color.ts +0 -484
  246. package/dist/ts/implementation/graphics/pdf-graphics.d.ts +0 -1210
  247. package/dist/ts/implementation/graphics/pdf-graphics.ts +0 -2556
  248. package/dist/ts/implementation/graphics/pdf-margins.d.ts +0 -82
  249. package/dist/ts/implementation/graphics/pdf-margins.ts +0 -124
  250. package/dist/ts/implementation/graphics/pdf-pen.d.ts +0 -237
  251. package/dist/ts/implementation/graphics/pdf-pen.ts +0 -370
  252. package/dist/ts/implementation/graphics/pdf-resources.d.ts +0 -122
  253. package/dist/ts/implementation/graphics/pdf-resources.ts +0 -300
  254. package/dist/ts/implementation/graphics/pdf-transformation-matrix.d.ts +0 -143
  255. package/dist/ts/implementation/graphics/pdf-transformation-matrix.ts +0 -246
  256. package/dist/ts/implementation/graphics/pdf-transparency.d.ts +0 -34
  257. package/dist/ts/implementation/graphics/pdf-transparency.ts +0 -93
  258. package/dist/ts/implementation/graphics/unit-convertor.d.ts +0 -72
  259. package/dist/ts/implementation/graphics/unit-convertor.ts +0 -96
  260. package/dist/ts/implementation/index.d.ts +0 -103
  261. package/dist/ts/implementation/index.ts +0 -103
  262. package/dist/ts/implementation/input-output/big-endian-writer.d.ts +0 -59
  263. package/dist/ts/implementation/input-output/big-endian-writer.ts +0 -121
  264. package/dist/ts/implementation/input-output/cross-table.d.ts +0 -21
  265. package/dist/ts/implementation/input-output/cross-table.ts +0 -21
  266. package/dist/ts/implementation/input-output/enum.d.ts +0 -16
  267. package/dist/ts/implementation/input-output/enum.ts +0 -16
  268. package/dist/ts/implementation/input-output/index.d.ts +0 -12
  269. package/dist/ts/implementation/input-output/index.ts +0 -12
  270. package/dist/ts/implementation/input-output/pdf-cross-table.d.ts +0 -259
  271. package/dist/ts/implementation/input-output/pdf-cross-table.ts +0 -536
  272. package/dist/ts/implementation/input-output/pdf-dictionary-properties.d.ts +0 -568
  273. package/dist/ts/implementation/input-output/pdf-dictionary-properties.ts +0 -571
  274. package/dist/ts/implementation/input-output/pdf-main-object-collection.d.ts +0 -120
  275. package/dist/ts/implementation/input-output/pdf-main-object-collection.ts +0 -194
  276. package/dist/ts/implementation/input-output/pdf-operators.d.ts +0 -361
  277. package/dist/ts/implementation/input-output/pdf-operators.ts +0 -363
  278. package/dist/ts/implementation/input-output/pdf-stream-writer.d.ts +0 -311
  279. package/dist/ts/implementation/input-output/pdf-stream-writer.ts +0 -681
  280. package/dist/ts/implementation/input-output/pdf-writer.d.ts +0 -122
  281. package/dist/ts/implementation/input-output/pdf-writer.ts +0 -164
  282. package/dist/ts/implementation/pages/enum.d.ts +0 -201
  283. package/dist/ts/implementation/pages/enum.ts +0 -201
  284. package/dist/ts/implementation/pages/index.d.ts +0 -17
  285. package/dist/ts/implementation/pages/index.ts +0 -17
  286. package/dist/ts/implementation/pages/page-added-event-arguments.d.ts +0 -30
  287. package/dist/ts/implementation/pages/page-added-event-arguments.ts +0 -39
  288. package/dist/ts/implementation/pages/pdf-document-page-collection.d.ts +0 -86
  289. package/dist/ts/implementation/pages/pdf-document-page-collection.ts +0 -180
  290. package/dist/ts/implementation/pages/pdf-page-base.d.ts +0 -121
  291. package/dist/ts/implementation/pages/pdf-page-base.ts +0 -181
  292. package/dist/ts/implementation/pages/pdf-page-layer-collection.d.ts +0 -99
  293. package/dist/ts/implementation/pages/pdf-page-layer-collection.ts +0 -348
  294. package/dist/ts/implementation/pages/pdf-page-layer.d.ts +0 -160
  295. package/dist/ts/implementation/pages/pdf-page-layer.ts +0 -271
  296. package/dist/ts/implementation/pages/pdf-page-settings.d.ts +0 -111
  297. package/dist/ts/implementation/pages/pdf-page-settings.ts +0 -192
  298. package/dist/ts/implementation/pages/pdf-page-size.d.ts +0 -159
  299. package/dist/ts/implementation/pages/pdf-page-size.ts +0 -162
  300. package/dist/ts/implementation/pages/pdf-page-template-element.d.ts +0 -240
  301. package/dist/ts/implementation/pages/pdf-page-template-element.ts +0 -663
  302. package/dist/ts/implementation/pages/pdf-page.d.ts +0 -153
  303. package/dist/ts/implementation/pages/pdf-page.ts +0 -235
  304. package/dist/ts/implementation/pages/pdf-section-collection.d.ts +0 -109
  305. package/dist/ts/implementation/pages/pdf-section-collection.ts +0 -187
  306. package/dist/ts/implementation/pages/pdf-section-page-collection.d.ts +0 -41
  307. package/dist/ts/implementation/pages/pdf-section-page-collection.ts +0 -61
  308. package/dist/ts/implementation/pages/pdf-section-templates.d.ts +0 -64
  309. package/dist/ts/implementation/pages/pdf-section-templates.ts +0 -96
  310. package/dist/ts/implementation/pages/pdf-section.d.ts +0 -327
  311. package/dist/ts/implementation/pages/pdf-section.ts +0 -644
  312. package/dist/ts/implementation/primitives/index.d.ts +0 -12
  313. package/dist/ts/implementation/primitives/index.ts +0 -12
  314. package/dist/ts/implementation/primitives/pdf-array.d.ts +0 -192
  315. package/dist/ts/implementation/primitives/pdf-array.ts +0 -386
  316. package/dist/ts/implementation/primitives/pdf-boolean.d.ts +0 -84
  317. package/dist/ts/implementation/primitives/pdf-boolean.ts +0 -119
  318. package/dist/ts/implementation/primitives/pdf-dictionary.d.ts +0 -362
  319. package/dist/ts/implementation/primitives/pdf-dictionary.ts +0 -513
  320. package/dist/ts/implementation/primitives/pdf-name.d.ts +0 -121
  321. package/dist/ts/implementation/primitives/pdf-name.ts +0 -218
  322. package/dist/ts/implementation/primitives/pdf-number.d.ts +0 -104
  323. package/dist/ts/implementation/primitives/pdf-number.ts +0 -165
  324. package/dist/ts/implementation/primitives/pdf-reference.d.ts +0 -223
  325. package/dist/ts/implementation/primitives/pdf-reference.ts +0 -430
  326. package/dist/ts/implementation/primitives/pdf-stream.d.ts +0 -161
  327. package/dist/ts/implementation/primitives/pdf-stream.ts +0 -306
  328. package/dist/ts/implementation/primitives/pdf-string.d.ts +0 -235
  329. package/dist/ts/implementation/primitives/pdf-string.ts +0 -397
  330. package/dist/ts/implementation/structured-elements/grid/index.d.ts +0 -4
  331. package/dist/ts/implementation/structured-elements/grid/index.ts +0 -10
  332. package/dist/ts/implementation/structured-elements/grid/layout/grid-layouter.d.ts +0 -597
  333. package/dist/ts/implementation/structured-elements/grid/layout/grid-layouter.ts +0 -2127
  334. package/dist/ts/implementation/structured-elements/grid/pdf-grid-cell.d.ts +0 -288
  335. package/dist/ts/implementation/structured-elements/grid/pdf-grid-cell.ts +0 -1225
  336. package/dist/ts/implementation/structured-elements/grid/pdf-grid-column.d.ts +0 -108
  337. package/dist/ts/implementation/structured-elements/grid/pdf-grid-column.ts +0 -206
  338. package/dist/ts/implementation/structured-elements/grid/pdf-grid-row.d.ts +0 -261
  339. package/dist/ts/implementation/structured-elements/grid/pdf-grid-row.ts +0 -470
  340. package/dist/ts/implementation/structured-elements/grid/pdf-grid.d.ts +0 -292
  341. package/dist/ts/implementation/structured-elements/grid/pdf-grid.ts +0 -853
  342. package/dist/ts/implementation/structured-elements/grid/styles/index.d.ts +0 -5
  343. package/dist/ts/implementation/structured-elements/grid/styles/index.ts +0 -5
  344. package/dist/ts/implementation/structured-elements/grid/styles/pdf-borders.d.ts +0 -146
  345. package/dist/ts/implementation/structured-elements/grid/styles/pdf-borders.ts +0 -238
  346. package/dist/ts/implementation/structured-elements/grid/styles/style.d.ts +0 -272
  347. package/dist/ts/implementation/structured-elements/grid/styles/style.ts +0 -423
  348. package/dist/ts/implementation/structured-elements/index.d.ts +0 -4
  349. package/dist/ts/implementation/structured-elements/index.ts +0 -10
  350. package/dist/ts/implementation/structured-elements/tables/light-tables/enum.d.ts +0 -16
  351. package/dist/ts/implementation/structured-elements/tables/light-tables/enum.ts +0 -16
  352. package/dist/ts/index.d.ts +0 -116
  353. package/dist/ts/index.ts +0 -116
  354. package/dist/ts/interfaces/i-pdf-cache.d.ts +0 -23
  355. package/dist/ts/interfaces/i-pdf-cache.ts +0 -23
  356. package/dist/ts/interfaces/i-pdf-changable.d.ts +0 -17
  357. package/dist/ts/interfaces/i-pdf-changable.ts +0 -17
  358. package/dist/ts/interfaces/i-pdf-clonable.d.ts +0 -12
  359. package/dist/ts/interfaces/i-pdf-clonable.ts +0 -12
  360. package/dist/ts/interfaces/i-pdf-primitives.d.ts +0 -45
  361. package/dist/ts/interfaces/i-pdf-primitives.ts +0 -45
  362. package/dist/ts/interfaces/i-pdf-true-type-font.d.ts +0 -18
  363. package/dist/ts/interfaces/i-pdf-true-type-font.ts +0 -48
  364. package/dist/ts/interfaces/i-pdf-wrapper.d.ts +0 -13
  365. package/dist/ts/interfaces/i-pdf-wrapper.ts +0 -13
  366. package/dist/ts/interfaces/i-pdf-writer.d.ts +0 -29
  367. package/dist/ts/interfaces/i-pdf-writer.ts +0 -29
  368. package/dist/ts/interfaces/index.d.ts +0 -10
  369. package/dist/ts/interfaces/index.ts +0 -10
@@ -1,536 +0,0 @@
1
- /**
2
- * PdfCrossTable.ts class for EJ2-PDF
3
- */
4
- import { PdfDocument } from './../document/pdf-document';
5
- import { PdfDocumentBase } from './../document/pdf-document-base';
6
- import { ObjectStatus } from './../input-output/enum';
7
- import { PdfWriter, PdfWriterHelper } from './pdf-writer';
8
- import { PdfDictionary } from './../primitives/pdf-dictionary';
9
- import { DictionaryProperties } from './pdf-dictionary-properties';
10
- import { Operators } from './pdf-operators';
11
- import { PdfMainObjectCollection, ObjectInfo } from './pdf-main-object-collection';
12
- import { Dictionary } from './../collections/dictionary';
13
- import { PdfReference, PdfReferenceHolder } from './../primitives/pdf-reference';
14
- import { ObjectType } from './cross-table';
15
- import { IPdfPrimitive } from './../../interfaces/i-pdf-primitives';
16
- import { PdfStream } from './../primitives/pdf-stream';
17
- import { PdfNumber } from './../primitives/pdf-number';
18
- import { PdfCatalog } from './../document/pdf-catalog';
19
- import { StreamWriter } from '@syncfusion/ej2-file-utils';
20
- /**
21
- * `PdfCrossTable` is responsible for intermediate level parsing
22
- * and savingof a PDF document.
23
- * @private
24
- */
25
- export class PdfCrossTable {
26
- /**
27
- * Parent `Document`.
28
- * @private
29
- */
30
- private pdfDocument : PdfDocumentBase;
31
- /**
32
- * Internal variable to store primtive objects of `main object collection`.
33
- * @private
34
- */
35
- private items : PdfMainObjectCollection;
36
- /**
37
- * The `mapped references`.
38
- * @private
39
- */
40
- private mappedReferences : Dictionary<PdfReference, PdfReference>;
41
- /**
42
- * The modified `objects` that should be saved.
43
- * @private
44
- */
45
- private objects : Dictionary<number, RegisteredObject> = new Dictionary<number, RegisteredObject>();
46
- /**
47
- * The `trailer` for a new document.
48
- * @private
49
- */
50
- private internalTrailer : IPdfPrimitive;
51
- /**
52
- * Internal variable to store if document `is being merged`.
53
- * @private
54
- */
55
- private merging : boolean;
56
- /**
57
- * `Flag` that forces an object to be 'a new'.
58
- * @private
59
- */
60
- private bForceNew : boolean;
61
- /**
62
- * Holds `maximal generation number` or offset to object.
63
- * @default 0
64
- * @private
65
- */
66
- private maxGenNumIndex : number = 0;
67
- /**
68
- * The `number of the objects`.
69
- * @default 0
70
- * @private
71
- */
72
- private objectCount : number = 0;
73
- /**
74
- * Internal variable for accessing fields from `DictionryProperties` class.
75
- * @default new PdfDictionaryProperties()
76
- * @private
77
- */
78
- private dictionaryProperties : DictionaryProperties = new DictionaryProperties();
79
- //Properties
80
- /**
81
- * Gets or sets if the document `is merged`.
82
- * @private
83
- */
84
- public get isMerging() : boolean {
85
- return this.merging;
86
- }
87
- public set isMerging(value : boolean) {
88
- this.merging = value;
89
- }
90
- /**
91
- * Gets the `trailer`.
92
- * @private
93
- */
94
- public get trailer() : PdfDictionary {
95
- if (this.internalTrailer == null) {
96
- this.internalTrailer = new PdfStream();
97
- }
98
- return <PdfDictionary>this.internalTrailer;
99
- }
100
- /**
101
- * Gets or sets the main `PdfDocument` class instance.
102
- * @private
103
- */
104
- public get document() : PdfDocumentBase {
105
- return this.pdfDocument;
106
- }
107
- public set document(value : PdfDocumentBase) {
108
- this.pdfDocument = value;
109
- this.items = this.pdfDocument.pdfObjects;
110
- }
111
- /**
112
- * Gets the catched `PDF object` main collection.
113
- * @private
114
- */
115
- public get pdfObjects() : PdfMainObjectCollection {
116
- return this.items;
117
- }
118
- /**
119
- * Gets the `object collection`.
120
- * @private
121
- */
122
- private get objectCollection() : PdfMainObjectCollection {
123
- return this.pdfDocument.pdfObjects;
124
- }
125
- /**
126
- * Gets or sets the `number of the objects` within the document.
127
- * @private
128
- */
129
- public get count() : number {
130
- return this.objectCount;
131
- }
132
- public set count(value : number) {
133
- this.objectCount = value;
134
- }
135
- /**
136
- * Returns `next available object number`.
137
- * @private
138
- */
139
- public get nextObjNumber() : number {
140
- this.count = this.count + 1;
141
- return this.count;
142
- }
143
- //Public methods
144
- /**
145
- * `Saves` the cross-reference table into the stream and return it as Blob.
146
- * @private
147
- */
148
- public save(writer : PdfWriter) : Blob
149
- /**
150
- * `Saves` the cross-reference table into the stream.
151
- * @private
152
- */
153
- public save(writer : PdfWriter, filename : string) : void
154
- public save(writer : PdfWriter, filename ?: string) : void | Blob {
155
- this._saveProcess(writer);
156
- if (typeof filename === 'undefined') {
157
- return (writer.stream as StreamWriter).buffer;
158
- } else {
159
- (writer.stream as StreamWriter).save(filename);
160
- }
161
- }
162
- /**
163
- * Saves the cross-reference table into the stream.
164
- * @private
165
- */
166
- _saveProcess(writer: PdfWriter): void {
167
- this.saveHead(writer);
168
- this.mappedReferences = null;
169
- this.objects.clear();
170
- this.markTrailerReferences();
171
- this.saveObjects(writer);
172
- let saveCount : number = this.count;
173
- let xrefPos : number = writer.position;
174
- this.registerObject(0, new PdfReference(0, -1), true);
175
- let prevXRef : number = 0;
176
- writer.write(Operators.xref);
177
- writer.write(Operators.newLine);
178
- this.saveSections(writer);
179
- this.saveTrailer(writer, this.count, prevXRef);
180
- this.saveTheEndess(writer, xrefPos);
181
- this.count = saveCount;
182
- for (let i : number = 0; i < this.objectCollection.count; ++i) {
183
- let oi : ObjectInfo = this.objectCollection.items(i);
184
- oi.object.isSaving = false;
185
- }
186
- }
187
- /**
188
- * Saves the cross-reference table into the stream.
189
- * @private
190
- */
191
- _save(writer : PdfWriter): Uint8Array {
192
- this._saveProcess(writer);
193
- return new Uint8Array((writer.stream as PdfWriterHelper).buffer.buffer);
194
- }
195
- /**
196
- * `Saves the endess` of the file.
197
- * @private
198
- */
199
- private saveTheEndess(writer : PdfWriter, xrefPos : number) : void {
200
- writer.write(Operators.newLine + Operators.startxref + Operators.newLine);
201
- writer.write(xrefPos.toString() + Operators.newLine);
202
- writer.write(Operators.eof + Operators.newLine);
203
- }
204
- /**
205
- * `Saves the new trailer` dictionary.
206
- * @private
207
- */
208
- private saveTrailer(writer : PdfWriter, count : number, prevXRef : number) : void {
209
- writer.write(Operators.trailer + Operators.newLine);
210
- // Save the dictionary.
211
- let trailer : PdfDictionary = this.trailer;
212
- trailer.items.setValue(this.dictionaryProperties.size, new PdfNumber(this.objectCount + 1));
213
- trailer = new PdfDictionary(trailer); // Make it real dictionary.
214
- trailer.setEncrypt(false);
215
- trailer.save(writer);
216
- }
217
- /**
218
- * `Saves the xref section`.
219
- * @private
220
- */
221
- private saveSections(writer : PdfWriter) : void {
222
- let objectNum : number = 0;
223
- let count : number = 0;
224
- do {
225
- count = this.prepareSubsection(objectNum);
226
- this.saveSubsection(writer, objectNum, count);
227
- objectNum += count;
228
- } while (count !== 0);
229
- }
230
- /**
231
- * `Saves a subsection`.
232
- * @private
233
- */
234
- private saveSubsection(writer : PdfWriter, objectNum : number, count : number) : void {
235
- if (count <= 0 || objectNum >= this.count) {
236
- return;
237
- }
238
- let subsectionHead : string = '{0} {1}{2}';
239
- writer.write(objectNum + ' ' + (count + 1) + Operators.newLine);
240
- for (let i : number = objectNum; i <= objectNum + count; ++i) {
241
- let obj : RegisteredObject = this.objects.getValue(i) as RegisteredObject;
242
- let str : string = '';
243
- if ( obj.type === ObjectType.Free ) {
244
- str = this.getItem(obj.offset, 65535, true);
245
- } else {
246
- str = this.getItem(obj.offset, obj.generation, false);
247
- }
248
- writer.write(str);
249
- }
250
- }
251
- /**
252
- * Generates string for `xref table item`.
253
- * @private
254
- */
255
- public getItem(offset : number, genNumber : number, isFree : boolean) : string {
256
- let returnString : string = '';
257
- let addOffsetLength : number = 10 - offset.toString().length;
258
- if ( genNumber <= 0 ) {
259
- genNumber = 0;
260
- }
261
- let addGenNumberLength : number = (5 - genNumber.toString().length) <= 0 ? 0 : (5 - genNumber.toString().length);
262
- for (let index : number = 0; index < addOffsetLength; index++) {
263
- returnString = returnString + '0';
264
- }
265
- returnString = returnString + offset.toString() + ' ';
266
- for (let index : number = 0; index < addGenNumberLength; index++) {
267
- returnString = returnString + '0';
268
- }
269
- returnString = returnString + genNumber.toString() + ' ';
270
- returnString = returnString + ((isFree) ? Operators.f : Operators.n) + Operators.newLine;
271
- return returnString;
272
- }
273
- /**
274
- * `Prepares a subsection` of the current section within the cross-reference table.
275
- * @private
276
- */
277
- private prepareSubsection(objectNum : number) : number {
278
- let count : number = 0;
279
- let i : number;
280
- let total : number = this.count;
281
- for (let k : number = 0; k < this.document.pdfObjects.count; k++) {
282
- let reference : PdfReference = this.document.pdfObjects.items(k).reference;
283
- let refString : string = reference.toString();
284
- let refArray : string[] = refString.split(' ');
285
- }
286
- if (objectNum >= total) {
287
- return count;
288
- }
289
- // search for first changed indirect object.
290
- for (i = objectNum; i < total; ++i) {
291
- break;
292
- }
293
- objectNum = i;
294
- // look up for all indirect objects in one subsection.
295
- for (; i < total; ++i) {
296
- ++count;
297
- }
298
- return count;
299
- }
300
- /**
301
- * `Marks the trailer references` being saved.
302
- * @private
303
- */
304
- private markTrailerReferences() : void {
305
- let tempArray : IPdfPrimitive[];
306
- let keys : string[] = this.trailer.items.keys();
307
- let values : IPdfPrimitive[] = this.trailer.items.values();
308
- }
309
- /**
310
- * `Saves the head`.
311
- * @private
312
- */
313
- private saveHead(writer : PdfWriter) : void {
314
- let version : string = this.generateFileVersion(writer.document);
315
- writer.write('%PDF-' + version);
316
- writer.write(Operators.newLine);
317
- }
318
- /**
319
- * Generates the `version` of the file.
320
- * @private
321
- */
322
- private generateFileVersion(document : PdfDocumentBase) : string {
323
- let iVersion : number = 4;
324
- let version : string = '1.' + iVersion.toString();
325
- return version;
326
- }
327
- /**
328
- * Retrieves the `reference` of the object given.
329
- * @private
330
- */
331
- public getReference(obj : IPdfPrimitive) : PdfReference
332
- /**
333
- * Retrieves the `reference` of the object given.
334
- * @private
335
- */
336
- public getReference(obj : IPdfPrimitive, bNew : boolean) : PdfReference
337
- public getReference(obj : IPdfPrimitive, bNew? : boolean) : PdfReference {
338
- if (typeof bNew === 'undefined') {
339
- let wasNew : boolean = false;
340
- return this.getReference(obj, wasNew);
341
- } else {
342
- //code splitted for reducing lines of code exceeds 100.
343
- return this.getSubReference(obj, bNew);
344
- }
345
- }
346
- /**
347
- * Retrieves the `reference` of the object given.
348
- * @private
349
- */
350
- private getSubReference(obj : IPdfPrimitive, bNew : boolean) : PdfReference {
351
- let isNew : boolean = false;
352
- let wasNew : boolean;
353
- let reference : PdfReference = null;
354
- // if (obj.IsSaving) {
355
- if (this.items.count > 0 && obj.objectCollectionIndex > 0 && this.items.count > obj.objectCollectionIndex - 1) {
356
- let tempObj : {reference : PdfReference, wasNew : boolean} = this.document.pdfObjects.getReference(obj, wasNew);
357
- reference = tempObj.reference;
358
- wasNew = tempObj.wasNew;
359
- }
360
- if (reference == null) {
361
- if (obj.status === ObjectStatus.Registered) {
362
- wasNew = false;
363
- } else {
364
- wasNew = true;
365
- }
366
- } else {
367
- wasNew = false;
368
- }
369
- // need to add mapped reference code
370
- if (reference == null) {
371
- let objnumber : number = this.nextObjNumber;
372
- reference = new PdfReference(objnumber, 0);
373
- let found : boolean;
374
- if (wasNew) {
375
- this.document.pdfObjects.add(obj);
376
- this.document.pdfObjects.trySetReference(obj, reference, found);
377
- let tempIndex : number = this.document.pdfObjects.count - 1;
378
- let tempkey : number = this.document.pdfObjects.objectCollections[tempIndex].reference.objNumber;
379
- let tempvalue : ObjectInfo = this.document.pdfObjects.objectCollections[this.document.pdfObjects.count - 1];
380
- this.document.pdfObjects.mainObjectCollection.setValue(tempkey, tempvalue);
381
- obj.position = -1;
382
- } else {
383
- this.document.pdfObjects.trySetReference(obj, reference, found);
384
- }
385
- obj.objectCollectionIndex = <number>reference.objNumber;
386
- obj.status = ObjectStatus.None;
387
- isNew = true;
388
- }
389
- bNew = isNew || this.bForceNew;
390
- return reference;
391
- }
392
- /**
393
- * `Saves all objects` in the collection.
394
- * @private
395
- */
396
- private saveObjects(writer : PdfWriter) : void {
397
- let objectCollection : PdfMainObjectCollection = this.objectCollection;
398
- for (let i : number = 0; i < objectCollection.count; ++i) {
399
- let oi : ObjectInfo = objectCollection.items(i);
400
- let obj : IPdfPrimitive = oi.object;
401
- obj.isSaving = true;
402
- this.saveIndirectObject(obj, writer);
403
- }
404
- }
405
- /**
406
- * `Saves indirect object`.
407
- * @private
408
- */
409
- public saveIndirectObject(obj : IPdfPrimitive, writer : PdfWriter) : void {
410
- let reference : PdfReference = this.getReference(obj);
411
- if (obj instanceof PdfCatalog) {
412
- this.trailer.items.setValue(this.dictionaryProperties.root, reference);
413
- }
414
- // NOTE : This is needed for correct string objects encryption.
415
- this.pdfDocument.currentSavingObj = reference;
416
- let tempArchive : boolean = false;
417
- tempArchive = (<PdfDictionary>obj).getArchive();
418
- let allowedType : boolean = !((obj instanceof PdfStream) || !tempArchive || (obj instanceof PdfCatalog));
419
- let sigFlag : boolean = false;
420
- this.registerObject(writer.position, reference);
421
- this.doSaveObject(obj, reference, writer);
422
- }
423
- /**
424
- * Performs `real saving` of the save object.
425
- * @private
426
- */
427
- private doSaveObject(obj : IPdfPrimitive, reference : PdfReference, writer : PdfWriter) : void {
428
- writer.write(reference.objNumber.toString());
429
- writer.write(Operators.whiteSpace);
430
- writer.write(reference.genNumber.toString());
431
- writer.write(Operators.whiteSpace);
432
- writer.write(Operators.obj);
433
- writer.write(Operators.newLine);
434
- obj.save(writer);
435
- writer.write(Operators.endObj);
436
- writer.write(Operators.newLine);
437
- }
438
- /**
439
- * `Registers` an archived object.
440
- * @private
441
- */
442
- public registerObject(offset : number, reference : PdfReference) : void
443
- /**
444
- * `Registers` the object in the cross reference table.
445
- * @private
446
- */
447
- public registerObject(offset : number, reference : PdfReference, free : boolean) : void
448
- public registerObject(offset? : number, reference? : PdfReference, free? : boolean) : void {
449
- if (typeof free === 'boolean') {
450
- // Register the object by its number.
451
- this.objects.setValue(reference.objNumber, new RegisteredObject(<number>offset, reference, free));
452
- this.maxGenNumIndex = Math.max(this.maxGenNumIndex, reference.genNumber);
453
- } else if (typeof free === 'undefined') {
454
- // Register the object by its number.
455
- this.objects.setValue(reference.objNumber, new RegisteredObject(offset, reference));
456
- this.maxGenNumIndex = Math.max(this.maxGenNumIndex, reference.genNumber);
457
- }
458
- }
459
- /**
460
- * `Dereferences` the specified primitive object.
461
- * @private
462
- */
463
- public static dereference(obj : IPdfPrimitive) : IPdfPrimitive {
464
- let rh : PdfReferenceHolder = obj as PdfReferenceHolder;
465
- if (rh != null) {
466
- obj = rh.object;
467
- }
468
- return obj;
469
- }
470
- }
471
- export class RegisteredObject {
472
- /**
473
- * The `object number` of the indirect object.
474
- * @private
475
- */
476
- private object : number;
477
- /**
478
- * The `generation number` of the indirect object.
479
- * @private
480
- */
481
- public generation : number;
482
- /**
483
- * The `offset` of the indirect object within the file.
484
- * @private
485
- */
486
- private offsetNumber : number;
487
- /**
488
- * Shows if the object `is free`.
489
- * @private
490
- */
491
- public type : ObjectType;
492
- /**
493
- * Holds the current `cross-reference` table.
494
- * @private
495
- */
496
- private xrefTable : PdfCrossTable;
497
- //Properties
498
- /**
499
- * Gets the `object number`.
500
- * @private
501
- */
502
- public get objectNumber() : number {
503
- return this.object;
504
- }
505
- /**
506
- * Gets the `offset`.
507
- * @private
508
- */
509
- public get offset() : number {
510
- let result : number;
511
- result = this.offsetNumber;
512
- return result;
513
- }
514
- /**
515
- * Initialize the `structure` with the proper values.
516
- * @private
517
- */
518
- public constructor(offset : number, reference : PdfReference)
519
- /**
520
- * Initialize the `structure` with the proper values.
521
- * @private
522
- */
523
- public constructor(offset : number, reference : PdfReference, free : boolean)
524
- public constructor(offset : number|PdfCrossTable, reference : PdfReference, free? : boolean|PdfReference) {
525
- let tempOffset : number = <number>offset;
526
- this.offsetNumber = tempOffset;
527
- let tempReference : PdfReference = <PdfReference>reference;
528
- this.generation = tempReference.genNumber;
529
- this.object = tempReference.objNumber;
530
- if (typeof free === 'undefined') {
531
- this.type = ObjectType.Normal;
532
- } else {
533
- this.type = ObjectType.Free;
534
- }
535
- }
536
- }