@syncfusion/ej2-pdf 1.0.23 → 23.1.38

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 (518) hide show
  1. package/.eslintrc.json +260 -0
  2. package/.gitleaksignore +1 -0
  3. package/CHANGELOG.md +28 -0
  4. package/README.md +17 -0
  5. package/dist/ej2-pdf.umd.min.js +4 -14
  6. package/dist/ej2-pdf.umd.min.js.map +1 -11
  7. package/dist/es6/ej2-pdf.es2015.js +48372 -0
  8. package/dist/es6/ej2-pdf.es2015.js.map +1 -0
  9. package/dist/es6/ej2-pdf.es5.js +50250 -0
  10. package/dist/es6/ej2-pdf.es5.js.map +1 -0
  11. package/dist/global/ej2-pdf.min.js +11 -0
  12. package/dist/global/ej2-pdf.min.js.map +1 -0
  13. package/dist/global/index.d.ts +14 -0
  14. package/index.js +4 -8
  15. package/license +10 -3
  16. package/package.json +58 -16
  17. package/pdf.d.ts +4 -0
  18. package/pdf.js +4 -0
  19. package/src/global.js +1 -0
  20. package/src/index.d.ts +45 -98
  21. package/src/index.js +45 -96
  22. package/src/pdf/core/annotations/annotation-collection.d.ts +289 -0
  23. package/src/pdf/core/annotations/annotation-collection.js +755 -0
  24. package/src/pdf/core/annotations/annotation.d.ts +5865 -0
  25. package/src/pdf/core/annotations/annotation.js +14195 -0
  26. package/src/pdf/core/annotations/index.d.ts +4 -0
  27. package/src/pdf/core/annotations/index.js +4 -0
  28. package/src/pdf/core/annotations/pdf-appearance.d.ts +102 -0
  29. package/src/pdf/core/annotations/pdf-appearance.js +124 -0
  30. package/src/pdf/core/annotations/pdf-paddings.d.ts +8 -0
  31. package/src/pdf/core/annotations/pdf-paddings.js +22 -0
  32. package/src/pdf/core/base-stream.d.ts +86 -0
  33. package/src/pdf/core/base-stream.js +332 -0
  34. package/src/pdf/core/content-parser.d.ts +38 -0
  35. package/src/pdf/core/content-parser.js +359 -0
  36. package/src/pdf/core/decode-stream.d.ts +21 -0
  37. package/src/pdf/core/decode-stream.js +120 -0
  38. package/src/pdf/core/decrypt-stream.d.ts +11 -0
  39. package/src/pdf/core/decrypt-stream.js +53 -0
  40. package/src/pdf/core/enumerator.d.ts +1668 -0
  41. package/src/pdf/core/enumerator.js +1717 -0
  42. package/src/pdf/core/flate-stream.d.ts +13 -0
  43. package/src/pdf/core/flate-stream.js +329 -0
  44. package/src/pdf/core/fonts/index.d.ts +7 -0
  45. package/{dist/es6/implementation/graphics → src/pdf/core}/fonts/index.js +3 -4
  46. package/src/pdf/core/fonts/pdf-font-metrics.d.ts +66 -0
  47. package/src/pdf/core/fonts/pdf-font-metrics.js +192 -0
  48. package/src/pdf/core/fonts/pdf-standard-font.d.ts +1023 -0
  49. package/src/pdf/core/fonts/pdf-standard-font.js +1682 -0
  50. package/src/pdf/core/fonts/pdf-string-format.d.ts +236 -0
  51. package/src/pdf/core/fonts/pdf-string-format.js +213 -0
  52. package/src/pdf/core/fonts/string-layouter.d.ts +68 -0
  53. package/src/pdf/core/fonts/string-layouter.js +437 -0
  54. package/src/pdf/core/fonts/ttf-reader.d.ts +167 -0
  55. package/src/pdf/core/fonts/ttf-reader.js +1150 -0
  56. package/src/pdf/core/fonts/ttf-table.d.ts +132 -0
  57. package/src/pdf/core/fonts/ttf-table.js +74 -0
  58. package/src/pdf/core/fonts/unicode-true-type-font.d.ts +50 -0
  59. package/src/pdf/core/fonts/unicode-true-type-font.js +289 -0
  60. package/src/pdf/core/form/field.d.ts +3011 -0
  61. package/src/pdf/core/form/field.js +6828 -0
  62. package/src/pdf/core/form/form.d.ts +279 -0
  63. package/src/pdf/core/form/form.js +782 -0
  64. package/src/pdf/core/form/index.d.ts +2 -0
  65. package/src/pdf/core/form/index.js +2 -0
  66. package/src/pdf/core/graphics/images/image-decoder.d.ts +38 -0
  67. package/src/pdf/core/graphics/images/image-decoder.js +227 -0
  68. package/src/{implementation → pdf/core}/graphics/images/index.d.ts +0 -5
  69. package/{dist/es6/implementation → src/pdf/core}/graphics/images/index.js +0 -1
  70. package/src/pdf/core/graphics/images/pdf-bitmap.d.ts +73 -0
  71. package/src/pdf/core/graphics/images/pdf-bitmap.js +68 -0
  72. package/src/pdf/core/graphics/images/pdf-image.d.ts +201 -0
  73. package/src/pdf/core/graphics/images/pdf-image.js +201 -0
  74. package/src/pdf/core/graphics/index.d.ts +10 -0
  75. package/src/pdf/core/graphics/index.js +10 -0
  76. package/src/pdf/core/graphics/pdf-graphics.d.ts +956 -0
  77. package/src/pdf/core/graphics/pdf-graphics.js +1860 -0
  78. package/src/pdf/core/graphics/pdf-path.d.ts +34 -0
  79. package/src/pdf/core/graphics/pdf-path.js +177 -0
  80. package/src/pdf/core/graphics/pdf-stream-writer.d.ts +56 -0
  81. package/src/pdf/core/graphics/pdf-stream-writer.js +231 -0
  82. package/src/pdf/core/graphics/pdf-template.d.ts +79 -0
  83. package/src/pdf/core/graphics/pdf-template.js +100 -0
  84. package/src/pdf/core/graphics/rightToLeft/bidirectional.d.ts +69 -0
  85. package/src/pdf/core/graphics/rightToLeft/bidirectional.js +831 -0
  86. package/src/pdf/core/graphics/rightToLeft/index.d.ts +3 -0
  87. package/src/pdf/core/graphics/rightToLeft/index.js +3 -0
  88. package/src/pdf/core/graphics/rightToLeft/text-renderer.d.ts +13 -0
  89. package/src/pdf/core/graphics/rightToLeft/text-renderer.js +116 -0
  90. package/src/pdf/core/graphics/rightToLeft/text-shape.d.ts +48 -0
  91. package/src/pdf/core/graphics/rightToLeft/text-shape.js +289 -0
  92. package/src/pdf/core/import-export/fdf-document.d.ts +37 -0
  93. package/src/pdf/core/import-export/fdf-document.js +667 -0
  94. package/src/pdf/core/import-export/index.d.ts +5 -0
  95. package/src/pdf/core/import-export/index.js +5 -0
  96. package/src/pdf/core/import-export/json-document.d.ts +47 -0
  97. package/src/pdf/core/import-export/json-document.js +1547 -0
  98. package/src/pdf/core/import-export/xfdf-document.d.ts +146 -0
  99. package/src/pdf/core/import-export/xfdf-document.js +2920 -0
  100. package/src/pdf/core/import-export/xml-document.d.ts +14 -0
  101. package/src/pdf/core/import-export/xml-document.js +166 -0
  102. package/src/pdf/core/import-export/xml-writer.d.ts +69 -0
  103. package/src/pdf/core/import-export/xml-writer.js +494 -0
  104. package/src/pdf/core/pdf-catalog.d.ts +18 -0
  105. package/src/pdf/core/pdf-catalog.js +166 -0
  106. package/src/pdf/core/pdf-cross-reference.d.ts +80 -0
  107. package/src/pdf/core/pdf-cross-reference.js +1049 -0
  108. package/src/pdf/core/pdf-document.d.ts +821 -0
  109. package/src/pdf/core/pdf-document.js +1022 -0
  110. package/src/pdf/core/pdf-file-structure.d.ts +54 -0
  111. package/src/pdf/core/pdf-file-structure.js +65 -0
  112. package/src/pdf/core/pdf-outline.d.ts +362 -0
  113. package/src/pdf/core/pdf-outline.js +860 -0
  114. package/src/pdf/core/pdf-page.d.ts +589 -0
  115. package/src/pdf/core/pdf-page.js +1049 -0
  116. package/src/pdf/core/pdf-parser.d.ts +62 -0
  117. package/src/pdf/core/pdf-parser.js +1035 -0
  118. package/src/pdf/core/pdf-primitives.d.ts +87 -0
  119. package/src/pdf/core/pdf-primitives.js +305 -0
  120. package/src/pdf/core/predictor-stream.d.ts +15 -0
  121. package/src/pdf/core/predictor-stream.js +214 -0
  122. package/src/pdf/core/security/encryptor.d.ts +140 -0
  123. package/src/pdf/core/security/encryptor.js +1616 -0
  124. package/src/pdf/core/security/index.d.ts +1 -0
  125. package/src/pdf/core/security/index.js +1 -0
  126. package/src/pdf/core/utils.d.ts +686 -0
  127. package/src/pdf/core/utils.js +3625 -0
  128. package/src/pdf/index.d.ts +44 -0
  129. package/src/pdf/index.js +44 -0
  130. package/tslint.json +111 -0
  131. package/ReadMe.md +0 -13
  132. package/dist/es6/implementation/actions/action.js +0 -44
  133. package/dist/es6/implementation/actions/index.js +0 -2
  134. package/dist/es6/implementation/actions/uri-action.js +0 -38
  135. package/dist/es6/implementation/annotations/action-link-annotation.js +0 -29
  136. package/dist/es6/implementation/annotations/annotation-collection.js +0 -93
  137. package/dist/es6/implementation/annotations/annotation.js +0 -156
  138. package/dist/es6/implementation/annotations/document-link-annotation.js +0 -48
  139. package/dist/es6/implementation/annotations/index.js +0 -7
  140. package/dist/es6/implementation/annotations/link-annotation.js +0 -31
  141. package/dist/es6/implementation/annotations/pdf-text-web-link.js +0 -178
  142. package/dist/es6/implementation/annotations/uri-annotation.js +0 -64
  143. package/dist/es6/implementation/collections/dictionary.js +0 -71
  144. package/dist/es6/implementation/collections/index.js +0 -3
  145. package/dist/es6/implementation/collections/object-object-pair/dictionary.js +0 -84
  146. package/dist/es6/implementation/collections/object-object-pair/index.js +0 -1
  147. package/dist/es6/implementation/collections/utils.js +0 -8
  148. package/dist/es6/implementation/document/automatic-fields/automatic-field-info-collection.js +0 -17
  149. package/dist/es6/implementation/document/automatic-fields/automatic-field-info.js +0 -68
  150. package/dist/es6/implementation/document/automatic-fields/automatic-field.js +0 -145
  151. package/dist/es6/implementation/document/automatic-fields/composite-field.js +0 -61
  152. package/dist/es6/implementation/document/automatic-fields/index.js +0 -7
  153. package/dist/es6/implementation/document/automatic-fields/multiple-value-field.js +0 -36
  154. package/dist/es6/implementation/document/automatic-fields/page-count-field.js +0 -53
  155. package/dist/es6/implementation/document/automatic-fields/pdf-numbers-convertor.js +0 -91
  156. package/dist/es6/implementation/document/automatic-fields/pdf-page-number-field.js +0 -56
  157. package/dist/es6/implementation/document/automatic-fields/pdf-template-value-pair.js +0 -34
  158. package/dist/es6/implementation/document/automatic-fields/single-value-field.js +0 -47
  159. package/dist/es6/implementation/document/index.js +0 -11
  160. package/dist/es6/implementation/document/pdf-catalog.js +0 -38
  161. package/dist/es6/implementation/document/pdf-document-base.js +0 -71
  162. package/dist/es6/implementation/document/pdf-document-template.js +0 -204
  163. package/dist/es6/implementation/document/pdf-document.js +0 -175
  164. package/dist/es6/implementation/drawing/index.js +0 -1
  165. package/dist/es6/implementation/drawing/pdf-drawing.js +0 -80
  166. package/dist/es6/implementation/general/enum.js +0 -6
  167. package/dist/es6/implementation/general/index.js +0 -3
  168. package/dist/es6/implementation/general/pdf-cache-collection.js +0 -24
  169. package/dist/es6/implementation/general/pdf-collection.js +0 -26
  170. package/dist/es6/implementation/general/pdf-destination.js +0 -107
  171. package/dist/es6/implementation/graphics/brushes/index.js +0 -2
  172. package/dist/es6/implementation/graphics/brushes/pdf-brush.js +0 -6
  173. package/dist/es6/implementation/graphics/brushes/pdf-solid-brush.js +0 -53
  174. package/dist/es6/implementation/graphics/constants.js +0 -11
  175. package/dist/es6/implementation/graphics/enum.js +0 -100
  176. package/dist/es6/implementation/graphics/figures/base/element-layouter.js +0 -154
  177. package/dist/es6/implementation/graphics/figures/base/graphics-element.js +0 -18
  178. package/dist/es6/implementation/graphics/figures/base/index.js +0 -3
  179. package/dist/es6/implementation/graphics/figures/base/pdf-shape-element.js +0 -32
  180. package/dist/es6/implementation/graphics/figures/base/shape-layouter.js +0 -55
  181. package/dist/es6/implementation/graphics/figures/base/text-layouter.js +0 -123
  182. package/dist/es6/implementation/graphics/figures/enum.js +0 -11
  183. package/dist/es6/implementation/graphics/figures/index.js +0 -5
  184. package/dist/es6/implementation/graphics/figures/layout-element.js +0 -41
  185. package/dist/es6/implementation/graphics/figures/pdf-template.js +0 -110
  186. package/dist/es6/implementation/graphics/figures/text-element.js +0 -298
  187. package/dist/es6/implementation/graphics/fonts/enum.js +0 -45
  188. package/dist/es6/implementation/graphics/fonts/pdf-font-metrics.js +0 -122
  189. package/dist/es6/implementation/graphics/fonts/pdf-font.js +0 -159
  190. package/dist/es6/implementation/graphics/fonts/pdf-standard-font-metrics-factory.js +0 -357
  191. package/dist/es6/implementation/graphics/fonts/pdf-standard-font.js +0 -124
  192. package/dist/es6/implementation/graphics/fonts/pdf-string-format.js +0 -239
  193. package/dist/es6/implementation/graphics/fonts/string-layouter.js +0 -335
  194. package/dist/es6/implementation/graphics/fonts/string-tokenizer.js +0 -162
  195. package/dist/es6/implementation/graphics/images/byte-array.js +0 -82
  196. package/dist/es6/implementation/graphics/images/image-decoder.js +0 -167
  197. package/dist/es6/implementation/graphics/images/pdf-bitmap.js +0 -41
  198. package/dist/es6/implementation/graphics/images/pdf-image.js +0 -68
  199. package/dist/es6/implementation/graphics/index.js +0 -20
  200. package/dist/es6/implementation/graphics/pdf-color.js +0 -205
  201. package/dist/es6/implementation/graphics/pdf-graphics.js +0 -1034
  202. package/dist/es6/implementation/graphics/pdf-margins.js +0 -75
  203. package/dist/es6/implementation/graphics/pdf-pen.js +0 -180
  204. package/dist/es6/implementation/graphics/pdf-resources.js +0 -223
  205. package/dist/es6/implementation/graphics/pdf-transformation-matrix.js +0 -134
  206. package/dist/es6/implementation/graphics/pdf-transparency.js +0 -22
  207. package/dist/es6/implementation/graphics/unit-convertor.js +0 -33
  208. package/dist/es6/implementation/index.js +0 -85
  209. package/dist/es6/implementation/input-output/cross-table.js +0 -6
  210. package/dist/es6/implementation/input-output/enum.js +0 -5
  211. package/dist/es6/implementation/input-output/index.js +0 -8
  212. package/dist/es6/implementation/input-output/pdf-cross-table.js +0 -346
  213. package/dist/es6/implementation/input-output/pdf-dictionary-properties.js +0 -60
  214. package/dist/es6/implementation/input-output/pdf-main-object-collection.js +0 -115
  215. package/dist/es6/implementation/input-output/pdf-operators.js +0 -75
  216. package/dist/es6/implementation/input-output/pdf-stream-writer.js +0 -364
  217. package/dist/es6/implementation/input-output/pdf-writer.js +0 -44
  218. package/dist/es6/implementation/pages/enum.js +0 -51
  219. package/dist/es6/implementation/pages/index.js +0 -13
  220. package/dist/es6/implementation/pages/page-added-event-arguments.js +0 -19
  221. package/dist/es6/implementation/pages/pdf-document-page-collection.js +0 -120
  222. package/dist/es6/implementation/pages/pdf-page-base.js +0 -104
  223. package/dist/es6/implementation/pages/pdf-page-layer-collection.js +0 -115
  224. package/dist/es6/implementation/pages/pdf-page-layer.js +0 -160
  225. package/dist/es6/implementation/pages/pdf-page-settings.js +0 -126
  226. package/dist/es6/implementation/pages/pdf-page-size.js +0 -36
  227. package/dist/es6/implementation/pages/pdf-page-template-element.js +0 -510
  228. package/dist/es6/implementation/pages/pdf-page.js +0 -130
  229. package/dist/es6/implementation/pages/pdf-section-collection.js +0 -95
  230. package/dist/es6/implementation/pages/pdf-section-page-collection.js +0 -30
  231. package/dist/es6/implementation/pages/pdf-section-templates.js +0 -71
  232. package/dist/es6/implementation/pages/pdf-section.js +0 -388
  233. package/dist/es6/implementation/primitives/index.js +0 -8
  234. package/dist/es6/implementation/primitives/pdf-array.js +0 -199
  235. package/dist/es6/implementation/primitives/pdf-boolean.js +0 -66
  236. package/dist/es6/implementation/primitives/pdf-dictionary.js +0 -220
  237. package/dist/es6/implementation/primitives/pdf-name.js +0 -102
  238. package/dist/es6/implementation/primitives/pdf-number.js +0 -94
  239. package/dist/es6/implementation/primitives/pdf-reference.js +0 -195
  240. package/dist/es6/implementation/primitives/pdf-stream.js +0 -149
  241. package/dist/es6/implementation/primitives/pdf-string.js +0 -143
  242. package/dist/es6/implementation/structured-elements/grid/index.js +0 -1
  243. package/dist/es6/implementation/structured-elements/grid/pdf-grid-cell.js +0 -512
  244. package/dist/es6/implementation/structured-elements/grid/pdf-grid-column.js +0 -125
  245. package/dist/es6/implementation/structured-elements/grid/pdf-grid-row.js +0 -244
  246. package/dist/es6/implementation/structured-elements/grid/pdf-grid.js +0 -989
  247. package/dist/es6/implementation/structured-elements/grid/styles/index.js +0 -2
  248. package/dist/es6/implementation/structured-elements/grid/styles/pdf-borders.js +0 -145
  249. package/dist/es6/implementation/structured-elements/grid/styles/style.js +0 -267
  250. package/dist/es6/implementation/structured-elements/index.js +0 -1
  251. package/dist/es6/implementation/structured-elements/tables/light-tables/enum.js +0 -5
  252. package/dist/es6/index.js +0 -89
  253. package/dist/es6/interfaces/i-pdf-cache.js +0 -1
  254. package/dist/es6/interfaces/i-pdf-changable.js +0 -1
  255. package/dist/es6/interfaces/i-pdf-primitives.js +0 -1
  256. package/dist/es6/interfaces/i-pdf-wrapper.js +0 -1
  257. package/dist/es6/interfaces/i-pdf-writer.js +0 -1
  258. package/dist/es6/interfaces/index.js +0 -1
  259. package/dist/global/ej2-pdf-export.js +0 -15979
  260. package/implementation.d.ts +0 -4
  261. package/implementation.js +0 -8
  262. package/interfaces.d.ts +0 -4
  263. package/interfaces.js +0 -4
  264. package/src/implementation/actions/action.d.ts +0 -50
  265. package/src/implementation/actions/action.js +0 -44
  266. package/src/implementation/actions/index.d.ts +0 -6
  267. package/src/implementation/actions/index.js +0 -9
  268. package/src/implementation/actions/uri-action.d.ts +0 -33
  269. package/src/implementation/actions/uri-action.js +0 -39
  270. package/src/implementation/annotations/action-link-annotation.d.ts +0 -30
  271. package/src/implementation/annotations/action-link-annotation.js +0 -32
  272. package/src/implementation/annotations/annotation-collection.d.ts +0 -77
  273. package/src/implementation/annotations/annotation-collection.js +0 -91
  274. package/src/implementation/annotations/annotation.d.ts +0 -152
  275. package/src/implementation/annotations/annotation.js +0 -146
  276. package/src/implementation/annotations/document-link-annotation.d.ts +0 -89
  277. package/src/implementation/annotations/document-link-annotation.js +0 -51
  278. package/src/implementation/annotations/index.d.ts +0 -11
  279. package/src/implementation/annotations/index.js +0 -14
  280. package/src/implementation/annotations/link-annotation.d.ts +0 -23
  281. package/src/implementation/annotations/link-annotation.js +0 -33
  282. package/src/implementation/annotations/pdf-text-web-link.d.ts +0 -118
  283. package/src/implementation/annotations/pdf-text-web-link.js +0 -173
  284. package/src/implementation/annotations/uri-annotation.d.ts +0 -48
  285. package/src/implementation/annotations/uri-annotation.js +0 -65
  286. package/src/implementation/collections/dictionary.d.ts +0 -76
  287. package/src/implementation/collections/dictionary.js +0 -74
  288. package/src/implementation/collections/index.d.ts +0 -7
  289. package/src/implementation/collections/index.js +0 -10
  290. package/src/implementation/collections/object-object-pair/dictionary.d.ts +0 -62
  291. package/src/implementation/collections/object-object-pair/dictionary.js +0 -88
  292. package/src/implementation/collections/object-object-pair/index.d.ts +0 -5
  293. package/src/implementation/collections/object-object-pair/index.js +0 -8
  294. package/src/implementation/collections/utils.d.ts +0 -27
  295. package/src/implementation/collections/utils.js +0 -13
  296. package/src/implementation/document/automatic-fields/automatic-field-info-collection.d.ts +0 -31
  297. package/src/implementation/document/automatic-fields/automatic-field-info-collection.js +0 -21
  298. package/src/implementation/document/automatic-fields/automatic-field-info.d.ts +0 -67
  299. package/src/implementation/document/automatic-fields/automatic-field-info.js +0 -70
  300. package/src/implementation/document/automatic-fields/automatic-field.d.ts +0 -41
  301. package/src/implementation/document/automatic-fields/automatic-field.js +0 -143
  302. package/src/implementation/document/automatic-fields/composite-field.d.ts +0 -46
  303. package/src/implementation/document/automatic-fields/composite-field.js +0 -64
  304. package/src/implementation/document/automatic-fields/index.d.ts +0 -11
  305. package/src/implementation/document/automatic-fields/index.js +0 -14
  306. package/src/implementation/document/automatic-fields/multiple-value-field.d.ts +0 -18
  307. package/src/implementation/document/automatic-fields/multiple-value-field.js +0 -35
  308. package/src/implementation/document/automatic-fields/page-count-field.d.ts +0 -44
  309. package/src/implementation/document/automatic-fields/page-count-field.js +0 -53
  310. package/src/implementation/document/automatic-fields/pdf-numbers-convertor.d.ts +0 -53
  311. package/src/implementation/document/automatic-fields/pdf-numbers-convertor.js +0 -94
  312. package/src/implementation/document/automatic-fields/pdf-page-number-field.d.ts +0 -51
  313. package/src/implementation/document/automatic-fields/pdf-page-number-field.js +0 -56
  314. package/src/implementation/document/automatic-fields/pdf-template-value-pair.d.ts +0 -38
  315. package/src/implementation/document/automatic-fields/pdf-template-value-pair.js +0 -38
  316. package/src/implementation/document/automatic-fields/single-value-field.d.ts +0 -15
  317. package/src/implementation/document/automatic-fields/single-value-field.js +0 -46
  318. package/src/implementation/document/index.d.ts +0 -15
  319. package/src/implementation/document/index.js +0 -18
  320. package/src/implementation/document/pdf-catalog.d.ts +0 -32
  321. package/src/implementation/document/pdf-catalog.js +0 -38
  322. package/src/implementation/document/pdf-document-base.d.ts +0 -117
  323. package/src/implementation/document/pdf-document-base.js +0 -72
  324. package/src/implementation/document/pdf-document-template.d.ts +0 -166
  325. package/src/implementation/document/pdf-document-template.js +0 -207
  326. package/src/implementation/document/pdf-document.d.ts +0 -206
  327. package/src/implementation/document/pdf-document.js +0 -166
  328. package/src/implementation/drawing/index.d.ts +0 -5
  329. package/src/implementation/drawing/index.js +0 -8
  330. package/src/implementation/drawing/pdf-drawing.d.ts +0 -93
  331. package/src/implementation/drawing/pdf-drawing.js +0 -84
  332. package/src/implementation/general/enum.d.ts +0 -21
  333. package/src/implementation/general/enum.js +0 -10
  334. package/src/implementation/general/index.d.ts +0 -7
  335. package/src/implementation/general/index.js +0 -10
  336. package/src/implementation/general/pdf-cache-collection.d.ts +0 -33
  337. package/src/implementation/general/pdf-cache-collection.js +0 -27
  338. package/src/implementation/general/pdf-collection.d.ts +0 -26
  339. package/src/implementation/general/pdf-collection.js +0 -30
  340. package/src/implementation/general/pdf-destination.d.ts +0 -103
  341. package/src/implementation/general/pdf-destination.js +0 -103
  342. package/src/implementation/graphics/brushes/index.d.ts +0 -6
  343. package/src/implementation/graphics/brushes/index.js +0 -9
  344. package/src/implementation/graphics/brushes/pdf-brush.d.ts +0 -55
  345. package/src/implementation/graphics/brushes/pdf-brush.js +0 -10
  346. package/src/implementation/graphics/brushes/pdf-solid-brush.d.ts +0 -77
  347. package/src/implementation/graphics/brushes/pdf-solid-brush.js +0 -54
  348. package/src/implementation/graphics/constants.d.ts +0 -31
  349. package/src/implementation/graphics/constants.js +0 -15
  350. package/src/implementation/graphics/enum.d.ts +0 -392
  351. package/src/implementation/graphics/enum.js +0 -104
  352. package/src/implementation/graphics/figures/base/element-layouter.d.ts +0 -160
  353. package/src/implementation/graphics/figures/base/element-layouter.js +0 -156
  354. package/src/implementation/graphics/figures/base/graphics-element.d.ts +0 -16
  355. package/src/implementation/graphics/figures/base/graphics-element.js +0 -22
  356. package/src/implementation/graphics/figures/base/index.d.ts +0 -7
  357. package/src/implementation/graphics/figures/base/index.js +0 -10
  358. package/src/implementation/graphics/figures/base/pdf-shape-element.d.ts +0 -28
  359. package/src/implementation/graphics/figures/base/pdf-shape-element.js +0 -34
  360. package/src/implementation/graphics/figures/base/shape-layouter.d.ts +0 -80
  361. package/src/implementation/graphics/figures/base/shape-layouter.js +0 -57
  362. package/src/implementation/graphics/figures/base/text-layouter.d.ts +0 -107
  363. package/src/implementation/graphics/figures/base/text-layouter.js +0 -121
  364. package/src/implementation/graphics/figures/enum.d.ts +0 -37
  365. package/src/implementation/graphics/figures/enum.js +0 -15
  366. package/src/implementation/graphics/figures/index.d.ts +0 -9
  367. package/src/implementation/graphics/figures/index.js +0 -12
  368. package/src/implementation/graphics/figures/layout-element.d.ts +0 -57
  369. package/src/implementation/graphics/figures/layout-element.js +0 -43
  370. package/src/implementation/graphics/figures/pdf-template.d.ts +0 -113
  371. package/src/implementation/graphics/figures/pdf-template.js +0 -106
  372. package/src/implementation/graphics/figures/text-element.d.ts +0 -213
  373. package/src/implementation/graphics/figures/text-element.js +0 -289
  374. package/src/implementation/graphics/fonts/enum.d.ts +0 -179
  375. package/src/implementation/graphics/fonts/enum.js +0 -49
  376. package/src/implementation/graphics/fonts/index.d.ts +0 -12
  377. package/src/implementation/graphics/fonts/index.js +0 -15
  378. package/src/implementation/graphics/fonts/pdf-font-metrics.d.ts +0 -160
  379. package/src/implementation/graphics/fonts/pdf-font-metrics.js +0 -123
  380. package/src/implementation/graphics/fonts/pdf-font.d.ts +0 -187
  381. package/src/implementation/graphics/fonts/pdf-font.js +0 -158
  382. package/src/implementation/graphics/fonts/pdf-standard-font-metrics-factory.d.ts +0 -301
  383. package/src/implementation/graphics/fonts/pdf-standard-font-metrics-factory.js +0 -359
  384. package/src/implementation/graphics/fonts/pdf-standard-font.d.ts +0 -143
  385. package/src/implementation/graphics/fonts/pdf-standard-font.js +0 -121
  386. package/src/implementation/graphics/fonts/pdf-string-format.d.ts +0 -319
  387. package/src/implementation/graphics/fonts/pdf-string-format.js +0 -241
  388. package/src/implementation/graphics/fonts/string-layouter.d.ts +0 -255
  389. package/src/implementation/graphics/fonts/string-layouter.js +0 -336
  390. package/src/implementation/graphics/fonts/string-tokenizer.d.ts +0 -107
  391. package/src/implementation/graphics/fonts/string-tokenizer.js +0 -166
  392. package/src/implementation/graphics/images/byte-array.d.ts +0 -68
  393. package/src/implementation/graphics/images/byte-array.js +0 -86
  394. package/src/implementation/graphics/images/image-decoder.d.ts +0 -227
  395. package/src/implementation/graphics/images/image-decoder.js +0 -164
  396. package/src/implementation/graphics/images/index.js +0 -11
  397. package/src/implementation/graphics/images/pdf-bitmap.d.ts +0 -90
  398. package/src/implementation/graphics/images/pdf-bitmap.js +0 -41
  399. package/src/implementation/graphics/images/pdf-image.d.ts +0 -88
  400. package/src/implementation/graphics/images/pdf-image.js +0 -69
  401. package/src/implementation/graphics/index.d.ts +0 -24
  402. package/src/implementation/graphics/index.js +0 -27
  403. package/src/implementation/graphics/pdf-color.d.ts +0 -170
  404. package/src/implementation/graphics/pdf-color.js +0 -204
  405. package/src/implementation/graphics/pdf-graphics.d.ts +0 -1085
  406. package/src/implementation/graphics/pdf-graphics.js +0 -1017
  407. package/src/implementation/graphics/pdf-margins.d.ts +0 -82
  408. package/src/implementation/graphics/pdf-margins.js +0 -79
  409. package/src/implementation/graphics/pdf-pen.d.ts +0 -237
  410. package/src/implementation/graphics/pdf-pen.js +0 -181
  411. package/src/implementation/graphics/pdf-resources.d.ts +0 -147
  412. package/src/implementation/graphics/pdf-resources.js +0 -215
  413. package/src/implementation/graphics/pdf-transformation-matrix.d.ts +0 -143
  414. package/src/implementation/graphics/pdf-transformation-matrix.js +0 -136
  415. package/src/implementation/graphics/pdf-transparency.d.ts +0 -34
  416. package/src/implementation/graphics/pdf-transparency.js +0 -22
  417. package/src/implementation/graphics/unit-convertor.d.ts +0 -72
  418. package/src/implementation/graphics/unit-convertor.js +0 -37
  419. package/src/implementation/index.d.ts +0 -89
  420. package/src/implementation/index.js +0 -92
  421. package/src/implementation/input-output/cross-table.d.ts +0 -21
  422. package/src/implementation/input-output/cross-table.js +0 -10
  423. package/src/implementation/input-output/enum.d.ts +0 -16
  424. package/src/implementation/input-output/enum.js +0 -9
  425. package/src/implementation/input-output/index.d.ts +0 -12
  426. package/src/implementation/input-output/index.js +0 -15
  427. package/src/implementation/input-output/pdf-cross-table.d.ts +0 -249
  428. package/src/implementation/input-output/pdf-cross-table.js +0 -340
  429. package/src/implementation/input-output/pdf-dictionary-properties.d.ts +0 -283
  430. package/src/implementation/input-output/pdf-dictionary-properties.js +0 -64
  431. package/src/implementation/input-output/pdf-main-object-collection.d.ts +0 -120
  432. package/src/implementation/input-output/pdf-main-object-collection.js +0 -117
  433. package/src/implementation/input-output/pdf-operators.d.ts +0 -352
  434. package/src/implementation/input-output/pdf-operators.js +0 -79
  435. package/src/implementation/input-output/pdf-stream-writer.d.ts +0 -314
  436. package/src/implementation/input-output/pdf-stream-writer.js +0 -363
  437. package/src/implementation/input-output/pdf-writer.d.ts +0 -68
  438. package/src/implementation/input-output/pdf-writer.js +0 -48
  439. package/src/implementation/pages/enum.d.ts +0 -201
  440. package/src/implementation/pages/enum.js +0 -55
  441. package/src/implementation/pages/index.d.ts +0 -17
  442. package/src/implementation/pages/index.js +0 -20
  443. package/src/implementation/pages/page-added-event-arguments.d.ts +0 -30
  444. package/src/implementation/pages/page-added-event-arguments.js +0 -23
  445. package/src/implementation/pages/pdf-document-page-collection.d.ts +0 -92
  446. package/src/implementation/pages/pdf-document-page-collection.js +0 -121
  447. package/src/implementation/pages/pdf-page-base.d.ts +0 -121
  448. package/src/implementation/pages/pdf-page-base.js +0 -104
  449. package/src/implementation/pages/pdf-page-layer-collection.d.ts +0 -99
  450. package/src/implementation/pages/pdf-page-layer-collection.js +0 -113
  451. package/src/implementation/pages/pdf-page-layer.d.ts +0 -160
  452. package/src/implementation/pages/pdf-page-layer.js +0 -159
  453. package/src/implementation/pages/pdf-page-settings.d.ts +0 -111
  454. package/src/implementation/pages/pdf-page-settings.js +0 -126
  455. package/src/implementation/pages/pdf-page-size.d.ts +0 -159
  456. package/src/implementation/pages/pdf-page-size.js +0 -39
  457. package/src/implementation/pages/pdf-page-template-element.d.ts +0 -230
  458. package/src/implementation/pages/pdf-page-template-element.js +0 -509
  459. package/src/implementation/pages/pdf-page.d.ts +0 -153
  460. package/src/implementation/pages/pdf-page.js +0 -127
  461. package/src/implementation/pages/pdf-section-collection.d.ts +0 -109
  462. package/src/implementation/pages/pdf-section-collection.js +0 -91
  463. package/src/implementation/pages/pdf-section-page-collection.d.ts +0 -41
  464. package/src/implementation/pages/pdf-section-page-collection.js +0 -34
  465. package/src/implementation/pages/pdf-section-templates.d.ts +0 -64
  466. package/src/implementation/pages/pdf-section-templates.js +0 -74
  467. package/src/implementation/pages/pdf-section.d.ts +0 -319
  468. package/src/implementation/pages/pdf-section.js +0 -379
  469. package/src/implementation/primitives/index.d.ts +0 -12
  470. package/src/implementation/primitives/index.js +0 -15
  471. package/src/implementation/primitives/pdf-array.d.ts +0 -186
  472. package/src/implementation/primitives/pdf-array.js +0 -201
  473. package/src/implementation/primitives/pdf-boolean.d.ts +0 -84
  474. package/src/implementation/primitives/pdf-boolean.js +0 -70
  475. package/src/implementation/primitives/pdf-dictionary.d.ts +0 -311
  476. package/src/implementation/primitives/pdf-dictionary.js +0 -220
  477. package/src/implementation/primitives/pdf-name.d.ts +0 -121
  478. package/src/implementation/primitives/pdf-name.js +0 -106
  479. package/src/implementation/primitives/pdf-number.d.ts +0 -104
  480. package/src/implementation/primitives/pdf-number.js +0 -98
  481. package/src/implementation/primitives/pdf-reference.d.ts +0 -222
  482. package/src/implementation/primitives/pdf-reference.js +0 -192
  483. package/src/implementation/primitives/pdf-stream.d.ts +0 -111
  484. package/src/implementation/primitives/pdf-stream.js +0 -146
  485. package/src/implementation/primitives/pdf-string.d.ts +0 -212
  486. package/src/implementation/primitives/pdf-string.js +0 -147
  487. package/src/implementation/structured-elements/grid/index.d.ts +0 -0
  488. package/src/implementation/structured-elements/grid/index.js +0 -1
  489. package/src/implementation/structured-elements/grid/pdf-grid-cell.d.ts +0 -248
  490. package/src/implementation/structured-elements/grid/pdf-grid-cell.js +0 -504
  491. package/src/implementation/structured-elements/grid/pdf-grid-column.d.ts +0 -108
  492. package/src/implementation/structured-elements/grid/pdf-grid-column.js +0 -127
  493. package/src/implementation/structured-elements/grid/pdf-grid-row.d.ts +0 -207
  494. package/src/implementation/structured-elements/grid/pdf-grid-row.js +0 -246
  495. package/src/implementation/structured-elements/grid/pdf-grid.d.ts +0 -678
  496. package/src/implementation/structured-elements/grid/pdf-grid.js +0 -982
  497. package/src/implementation/structured-elements/grid/styles/index.d.ts +0 -5
  498. package/src/implementation/structured-elements/grid/styles/index.js +0 -9
  499. package/src/implementation/structured-elements/grid/styles/pdf-borders.d.ts +0 -126
  500. package/src/implementation/structured-elements/grid/styles/pdf-borders.js +0 -146
  501. package/src/implementation/structured-elements/grid/styles/style.d.ts +0 -250
  502. package/src/implementation/structured-elements/grid/styles/style.js +0 -269
  503. package/src/implementation/structured-elements/index.d.ts +0 -0
  504. package/src/implementation/structured-elements/index.js +0 -1
  505. package/src/implementation/structured-elements/tables/light-tables/enum.d.ts +0 -16
  506. package/src/implementation/structured-elements/tables/light-tables/enum.js +0 -9
  507. package/src/interfaces/i-pdf-cache.d.ts +0 -23
  508. package/src/interfaces/i-pdf-cache.js +0 -4
  509. package/src/interfaces/i-pdf-changable.d.ts +0 -17
  510. package/src/interfaces/i-pdf-changable.js +0 -4
  511. package/src/interfaces/i-pdf-primitives.d.ts +0 -45
  512. package/src/interfaces/i-pdf-primitives.js +0 -4
  513. package/src/interfaces/i-pdf-wrapper.d.ts +0 -13
  514. package/src/interfaces/i-pdf-wrapper.js +0 -4
  515. package/src/interfaces/i-pdf-writer.d.ts +0 -29
  516. package/src/interfaces/i-pdf-writer.js +0 -4
  517. package/src/interfaces/index.d.ts +0 -9
  518. package/src/interfaces/index.js +0 -4
@@ -1,1017 +0,0 @@
1
- define(["require", "exports", "./enum", "./enum", "./fonts/enum", "./../input-output/pdf-stream-writer", "./pdf-pen", "./brushes/pdf-brush", "./brushes/pdf-solid-brush", "./fonts/pdf-font", "./pdf-transformation-matrix", "./../drawing/pdf-drawing", "./constants", "./../primitives/pdf-string", "./fonts/pdf-string-format", "./../collections/object-object-pair/dictionary", "./pdf-transparency", "./fonts/string-layouter", "./../input-output/pdf-dictionary-properties", "./fonts/string-tokenizer", "./../document/automatic-fields/automatic-field-info-collection", "./../document/automatic-fields/automatic-field-info", "./../input-output/pdf-operators"], function (require, exports, enum_1, enum_2, enum_3, pdf_stream_writer_1, pdf_pen_1, pdf_brush_1, pdf_solid_brush_1, pdf_font_1, pdf_transformation_matrix_1, pdf_drawing_1, constants_1, pdf_string_1, pdf_string_format_1, dictionary_1, pdf_transparency_1, string_layouter_1, pdf_dictionary_properties_1, string_tokenizer_1, automatic_field_info_collection_1, automatic_field_info_1, pdf_operators_1) {
2
- "use strict";
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- var PdfGraphics = (function () {
5
- function PdfGraphics(arg1, arg2, arg3) {
6
- this.currentColorSpace = enum_1.PdfColorSpace.Rgb;
7
- this.previousTextRenderingMode = enum_1.TextRenderingMode.Fill;
8
- this.previousCharacterSpacing = 0.0;
9
- this.previousWordSpacing = 0.0;
10
- this.previousTextScaling = 100.0;
11
- this.procedureSets = new constants_1.ProcedureSets();
12
- this.isNormalRender = true;
13
- this.isUseFontSize = false;
14
- this.isItalic = false;
15
- this.isEmfTextScaled = false;
16
- this.isEmf = false;
17
- this.isEmfPlus = false;
18
- this.isBaselineFormat = true;
19
- this.emfScalingFactor = new pdf_drawing_1.SizeF(0, 0);
20
- this.colorSpaceChanged = false;
21
- this.dictionaryProperties = new pdf_dictionary_properties_1.DictionaryProperties();
22
- this.isOverloadWithPosition = false;
23
- this.isPointOverload = false;
24
- this.currentColorSpaces = ['RGB', 'CMYK', 'GrayScale', 'Indexed'];
25
- this.isImageOptimized = false;
26
- this.graphicsState = [];
27
- this.istransparencySet = false;
28
- this.internalAutomaticFields = null;
29
- this.startCutIndex = -1;
30
- if (arg3 instanceof pdf_stream_writer_1.PdfStreamWriter) {
31
- this.pdfStreamWriter = arg3;
32
- this.getResources = arg2;
33
- this.canvasSize = arg1;
34
- this.initialize();
35
- }
36
- else {
37
- this.constructor(arg1, arg2, new pdf_stream_writer_1.PdfStreamWriter(arg3));
38
- }
39
- }
40
- Object.defineProperty(PdfGraphics.prototype, "stringLayoutResult", {
41
- get: function () {
42
- return this.pdfStringLayoutResult;
43
- },
44
- enumerable: true,
45
- configurable: true
46
- });
47
- Object.defineProperty(PdfGraphics.prototype, "size", {
48
- get: function () {
49
- return this.canvasSize;
50
- },
51
- enumerable: true,
52
- configurable: true
53
- });
54
- Object.defineProperty(PdfGraphics.prototype, "mediaBoxUpperRightBound", {
55
- get: function () {
56
- if (typeof this.internalMediaBoxUpperRightBound === 'undefined') {
57
- this.internalMediaBoxUpperRightBound = 0;
58
- }
59
- return this.internalMediaBoxUpperRightBound;
60
- },
61
- set: function (value) {
62
- this.internalMediaBoxUpperRightBound = value;
63
- },
64
- enumerable: true,
65
- configurable: true
66
- });
67
- Object.defineProperty(PdfGraphics.prototype, "clientSize", {
68
- get: function () {
69
- return new pdf_drawing_1.SizeF(this.clipBounds.width, this.clipBounds.height);
70
- },
71
- enumerable: true,
72
- configurable: true
73
- });
74
- Object.defineProperty(PdfGraphics.prototype, "colorSpace", {
75
- get: function () {
76
- return this.currentColorSpace;
77
- },
78
- set: function (value) {
79
- this.currentColorSpace = value;
80
- },
81
- enumerable: true,
82
- configurable: true
83
- });
84
- Object.defineProperty(PdfGraphics.prototype, "streamWriter", {
85
- get: function () {
86
- return this.pdfStreamWriter;
87
- },
88
- enumerable: true,
89
- configurable: true
90
- });
91
- Object.defineProperty(PdfGraphics.prototype, "matrix", {
92
- get: function () {
93
- if (this.transformationMatrix == null) {
94
- this.transformationMatrix = new pdf_transformation_matrix_1.PdfTransformationMatrix();
95
- }
96
- return this.transformationMatrix;
97
- },
98
- enumerable: true,
99
- configurable: true
100
- });
101
- Object.defineProperty(PdfGraphics.prototype, "layer", {
102
- get: function () {
103
- return this.pageLayer;
104
- },
105
- enumerable: true,
106
- configurable: true
107
- });
108
- Object.defineProperty(PdfGraphics.prototype, "page", {
109
- get: function () {
110
- return this.pageLayer.page;
111
- },
112
- enumerable: true,
113
- configurable: true
114
- });
115
- Object.defineProperty(PdfGraphics.prototype, "automaticFields", {
116
- get: function () {
117
- if (this.internalAutomaticFields == null || typeof this.internalAutomaticFields === 'undefined') {
118
- this.internalAutomaticFields = new automatic_field_info_collection_1.PdfAutomaticFieldInfoCollection();
119
- }
120
- return this.internalAutomaticFields;
121
- },
122
- enumerable: true,
123
- configurable: true
124
- });
125
- PdfGraphics.prototype.initialize = function () {
126
- this.bStateSaved = false;
127
- this.currentPen = null;
128
- this.currentBrush = null;
129
- this.currentFont = null;
130
- this.currentColorSpace = enum_1.PdfColorSpace.Rgb;
131
- this.bCSInitialized = false;
132
- this.transformationMatrix = null;
133
- this.previousTextRenderingMode = (-1);
134
- this.previousCharacterSpacing = -1.0;
135
- this.previousWordSpacing = -1.0;
136
- this.previousTextScaling = -100.0;
137
- this.currentStringFormat = null;
138
- this.clipBounds = new pdf_drawing_1.RectangleF(new pdf_drawing_1.PointF(0, 0), this.size);
139
- this.getResources.getResources().requireProcedureSet(this.procedureSets.pdf);
140
- };
141
- PdfGraphics.prototype.drawPdfTemplate = function (template, location, size) {
142
- if (typeof size === 'undefined') {
143
- if (template == null) {
144
- throw Error('ArgumentNullException-template');
145
- }
146
- this.drawPdfTemplate(template, location, template.size);
147
- }
148
- else {
149
- if (template == null) {
150
- throw Error('ArgumentNullException-template');
151
- }
152
- var scaleX = (template.width > 0) ? size.width / template.width : 1;
153
- var scaleY = (template.height > 0) ? size.height / template.height : 1;
154
- var bNeedScale = !(scaleX === 1 && scaleY === 1);
155
- var state = this.save();
156
- var matrix = new pdf_transformation_matrix_1.PdfTransformationMatrix();
157
- if (this.pageLayer != null) {
158
- this.getTranslateTransform(location.x, location.y + size.height, matrix);
159
- }
160
- if (bNeedScale) {
161
- this.getScaleTransform(scaleX, scaleY, matrix);
162
- }
163
- this.pdfStreamWriter.modifyCtm(matrix);
164
- var resources = this.getResources.getResources();
165
- var name_1 = resources.getName(template);
166
- this.pdfStreamWriter.executeObject(name_1);
167
- this.restore(state);
168
- var g = template.graphics;
169
- if (g != null) {
170
- for (var index = 0; index < g.automaticFields.automaticFields.length; index++) {
171
- var fieldInfo = g.automaticFields.automaticFields[index];
172
- var newLocation = new pdf_drawing_1.PointF(fieldInfo.location.x + location.x, fieldInfo.location.y + location.y);
173
- var scalingX = template.size.width == 0 ? 0 : size.width / template.size.width;
174
- var scalingY = template.size.height == 0 ? 0 : size.height / template.size.height;
175
- this.automaticFields.add(new automatic_field_info_1.PdfAutomaticFieldInfo(fieldInfo.field, newLocation, scalingX, scalingY));
176
- this.page.dictionary.modify();
177
- }
178
- }
179
- this.getResources.getResources().requireProcedureSet(this.procedureSets.imageB);
180
- this.getResources.getResources().requireProcedureSet(this.procedureSets.imageC);
181
- this.getResources.getResources().requireProcedureSet(this.procedureSets.imageI);
182
- this.getResources.getResources().requireProcedureSet(this.procedureSets.text);
183
- }
184
- };
185
- PdfGraphics.prototype.drawString = function (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
186
- if (typeof arg1 === 'string' && arg2 instanceof pdf_font_1.PdfFont && (arg3 instanceof pdf_pen_1.PdfPen || arg3 === null) && (arg4 instanceof pdf_brush_1.PdfBrush || arg4 === null) && typeof arg5 === 'number' && typeof arg6 === 'number' && (arg7 instanceof pdf_string_format_1.PdfStringFormat || arg7 === null) && typeof arg8 === 'undefined') {
187
- this.isOverloadWithPosition = true;
188
- this.drawString(arg1, arg2, arg3, arg4, arg5, arg6, (this.clientSize.width - arg5), 0, arg7);
189
- }
190
- else {
191
- var temparg3 = arg3;
192
- var temparg4 = arg4;
193
- var temparg5 = arg5;
194
- var temparg6 = arg6;
195
- var temparg7 = arg7;
196
- var temparg8 = arg8;
197
- var temparg9 = arg9;
198
- var layouter = new string_layouter_1.PdfStringLayouter();
199
- var result = layouter.layout(arg1, arg2, temparg9, new pdf_drawing_1.SizeF(temparg7, 0), this.isOverloadWithPosition, this.clientSize);
200
- if (!result.empty) {
201
- var rect = this.checkCorrectLayoutRectangle(result.actualSize, temparg5, temparg6, temparg9);
202
- if (temparg7 <= 0) {
203
- temparg5 = rect.x;
204
- temparg7 = rect.width;
205
- }
206
- if (temparg8 <= 0) {
207
- temparg6 = rect.y;
208
- temparg8 = rect.height;
209
- }
210
- this.drawStringLayoutResult(result, arg2, temparg3, temparg4, new pdf_drawing_1.RectangleF(temparg5, temparg6, temparg7, temparg8), temparg9);
211
- this.isEmfTextScaled = false;
212
- this.emfScalingFactor = new pdf_drawing_1.SizeF(0, 0);
213
- }
214
- this.getResources.getResources().requireProcedureSet(this.procedureSets.text);
215
- this.isNormalRender = true;
216
- this.pdfStringLayoutResult = result;
217
- this.isUseFontSize = false;
218
- }
219
- };
220
- PdfGraphics.prototype.drawLine = function (arg1, arg2, arg3, arg4, arg5) {
221
- if (arg2 instanceof pdf_drawing_1.PointF) {
222
- var temparg2 = arg2;
223
- var temparg3 = arg3;
224
- this.drawLine(arg1, temparg2.x, temparg2.y, temparg3.x, temparg3.y);
225
- }
226
- else {
227
- var temparg2 = arg2;
228
- var temparg3 = arg3;
229
- var temparg4 = arg4;
230
- var temparg5 = arg5;
231
- this.stateControl(arg1, null, null);
232
- var sw = this.streamWriter;
233
- sw.beginPath(temparg2, temparg3);
234
- sw.appendLineSegment(temparg4, temparg5);
235
- sw.strokePath();
236
- this.getResources.getResources().requireProcedureSet(this.procedureSets.pdf);
237
- }
238
- };
239
- PdfGraphics.prototype.drawRectangle = function (arg1, arg2, arg3, arg4, arg5, arg6) {
240
- if (arg1 instanceof pdf_pen_1.PdfPen && typeof arg2 === 'number') {
241
- var temparg3 = arg3;
242
- this.drawRectangle(arg1, null, arg2, temparg3, arg4, arg5);
243
- }
244
- else if (arg1 instanceof pdf_brush_1.PdfBrush && typeof arg2 === 'number') {
245
- var temparg3 = arg3;
246
- this.drawRectangle(null, arg1, arg2, temparg3, arg4, arg5);
247
- }
248
- else {
249
- var temparg3 = arg3;
250
- var temparg4 = arg4;
251
- var temparg5 = arg5;
252
- var temparg6 = arg6;
253
- if (arg2 instanceof pdf_solid_brush_1.PdfSolidBrush && arg2.color.isEmpty) {
254
- arg2 = null;
255
- }
256
- var temparg1 = arg1;
257
- var temparg2 = arg2;
258
- this.stateControl(temparg1, temparg2, null);
259
- this.streamWriter.appendRectangle(temparg3, temparg4, temparg5, temparg6);
260
- this.drawPath(temparg1, temparg2, false);
261
- }
262
- };
263
- PdfGraphics.prototype.drawPath = function (arg1, arg2, arg3, arg4) {
264
- if (typeof arg3 === 'boolean') {
265
- var temparg3 = arg3;
266
- this.drawPath(arg1, arg2, enum_1.PdfFillMode.Winding, temparg3);
267
- }
268
- else {
269
- var temparg3 = arg3;
270
- var temparg4 = arg4;
271
- var isPen = arg1 != null;
272
- var isBrush = arg2 != null;
273
- var isEvenOdd = (temparg3 === enum_1.PdfFillMode.Alternate);
274
- if (isPen && isBrush) {
275
- this.streamWriter.fillStrokePath(isEvenOdd);
276
- }
277
- else if (!isPen && !isBrush) {
278
- this.streamWriter.endPath();
279
- }
280
- else if (isPen) {
281
- this.streamWriter.strokePath();
282
- }
283
- else {
284
- this.streamWriter.fillPath(isEvenOdd);
285
- }
286
- }
287
- };
288
- PdfGraphics.prototype.drawImage = function (arg1, arg2, arg3, arg4, arg5) {
289
- if (typeof arg2 === 'number' && typeof arg3 === 'number' && typeof arg4 === 'undefined') {
290
- var size = arg1.physicalDimension;
291
- this.drawImage(arg1, arg2, arg3, size.width, size.height);
292
- }
293
- else {
294
- var temparg2 = arg2;
295
- var temparg3 = arg3;
296
- var temparg4 = arg4;
297
- var temparg5 = arg5;
298
- arg1.save();
299
- var matrix = new pdf_transformation_matrix_1.PdfTransformationMatrix();
300
- this.getTranslateTransform(temparg2, (temparg3 + temparg5), matrix);
301
- this.getScaleTransform(arg4, arg5, matrix);
302
- this.pdfStreamWriter.write('q');
303
- this.pdfStreamWriter.modifyCtm(matrix);
304
- var resources = this.getResources.getResources();
305
- if (typeof this.pageLayer !== 'undefined' && this.page != null) {
306
- resources.document = this.page.document;
307
- }
308
- var name_2 = resources.getName(arg1);
309
- if (typeof this.pageLayer !== 'undefined') {
310
- this.page.setResources(resources);
311
- }
312
- this.pdfStreamWriter.executeObject(name_2);
313
- this.pdfStreamWriter.write(pdf_operators_1.Operators.restoreState);
314
- this.pdfStreamWriter.write(pdf_operators_1.Operators.newLine);
315
- var resource = this.getResources.getResources();
316
- resource.requireProcedureSet(this.procedureSets.imageB);
317
- resource.requireProcedureSet(this.procedureSets.imageC);
318
- resource.requireProcedureSet(this.procedureSets.imageI);
319
- resource.requireProcedureSet(this.procedureSets.text);
320
- }
321
- };
322
- PdfGraphics.prototype.getLineBounds = function (lineIndex, result, font, layoutRectangle, format) {
323
- var bounds;
324
- if (!result.empty && lineIndex < result.lineCount && lineIndex >= 0) {
325
- var line = result.lines[lineIndex];
326
- var vShift = this.getTextVerticalAlignShift(result.actualSize.height, layoutRectangle.height, format);
327
- var y = vShift + layoutRectangle.y + (result.lineHeight * lineIndex);
328
- var lineWidth = line.width;
329
- var hShift = this.getHorizontalAlignShift(lineWidth, layoutRectangle.width, format);
330
- var lineIndent = this.getLineIndent(line, format, layoutRectangle, (lineIndex === 0));
331
- hShift += (!this.rightToLeft(format)) ? lineIndent : 0;
332
- var x = layoutRectangle.x + hShift;
333
- var width = (!this.shouldJustify(line, layoutRectangle.width, format)) ? lineWidth - lineIndent : layoutRectangle.width - lineIndent;
334
- var height = result.lineHeight;
335
- bounds = new pdf_drawing_1.RectangleF(x, y, width, height);
336
- }
337
- else {
338
- bounds = new pdf_drawing_1.RectangleF(0, 0, 0, 0);
339
- }
340
- return bounds;
341
- };
342
- PdfGraphics.prototype.checkCorrectLayoutRectangle = function (textSize, x, y, format) {
343
- var layoutedRectangle = new pdf_drawing_1.RectangleF(x, y, textSize.width, textSize.width);
344
- if (format != null) {
345
- switch (format.alignment) {
346
- case enum_1.PdfTextAlignment.Center:
347
- layoutedRectangle.x -= layoutedRectangle.width / 2;
348
- break;
349
- case enum_1.PdfTextAlignment.Right:
350
- layoutedRectangle.x -= layoutedRectangle.width;
351
- break;
352
- }
353
- switch (format.lineAlignment) {
354
- case enum_2.PdfVerticalAlignment.Middle:
355
- layoutedRectangle.y -= layoutedRectangle.height / 2;
356
- break;
357
- case enum_2.PdfVerticalAlignment.Bottom:
358
- layoutedRectangle.y -= layoutedRectangle.height;
359
- break;
360
- }
361
- }
362
- return layoutedRectangle;
363
- };
364
- PdfGraphics.prototype.setLayer = function (layer) {
365
- this.pageLayer = layer;
366
- var page = layer.page;
367
- if (page != null && typeof page !== 'undefined') {
368
- page.beginSave = this.pageSave;
369
- }
370
- };
371
- PdfGraphics.prototype.pageSave = function (page) {
372
- if (page.graphics.automaticFields != null) {
373
- for (var i = 0; i < page.graphics.automaticFields.automaticFields.length; i++) {
374
- var fieldInfo = page.graphics.automaticFields.automaticFields[i];
375
- fieldInfo.field.performDraw(page.graphics, fieldInfo.location, fieldInfo.scalingX, fieldInfo.scalingY);
376
- }
377
- }
378
- };
379
- PdfGraphics.prototype.drawStringLayoutResult = function (result, font, pen, brush, layoutRectangle, format) {
380
- if (!result.empty) {
381
- this.applyStringSettings(font, pen, brush, format, layoutRectangle);
382
- var textScaling = (format != null) ? format.horizontalScalingFactor : 100.0;
383
- if (textScaling !== this.previousTextScaling && !this.isEmfTextScaled) {
384
- this.pdfStreamWriter.setTextScaling(textScaling);
385
- this.previousTextScaling = textScaling;
386
- }
387
- var height = (format == null || format.lineSpacing === 0) ? font.height : format.lineSpacing + font.height;
388
- var subScript = (format != null && format.subSuperScript === enum_3.PdfSubSuperScript.SubScript);
389
- var shift = 0;
390
- shift = (subScript) ? height - (font.height + font.metrics.getDescent(format)) : (height - font.metrics.getAscent(format));
391
- this.shift = shift;
392
- this.pdfStreamWriter.startNextLine(layoutRectangle.x, layoutRectangle.y - shift);
393
- this.pdfStreamWriter.setLeading(+height);
394
- var resultHeight = 0;
395
- var remainingString = '';
396
- for (var i = 0; i < result.lines.length; i++) {
397
- resultHeight += result.lineHeight;
398
- if ((layoutRectangle.y + resultHeight) > this.clientSize.height) {
399
- this.startCutIndex = i;
400
- break;
401
- }
402
- }
403
- for (var j = this.startCutIndex; (j < result.lines.length && j >= 0); j++) {
404
- remainingString += result.lines[j].text;
405
- }
406
- var bounds = new pdf_drawing_1.RectangleF(layoutRectangle.x, layoutRectangle.y, layoutRectangle.width, layoutRectangle.height);
407
- this.drawLayoutResult(result, font, format, layoutRectangle);
408
- this.underlineStrikeoutText(pen, brush, result, font, bounds, format);
409
- this.isEmfPlus = false;
410
- this.isUseFontSize = false;
411
- if (this.startCutIndex !== -1) {
412
- var page = this.getNextPage();
413
- page.graphics.drawString(remainingString, font, pen, brush, layoutRectangle.x, 0, layoutRectangle.width, 0, format);
414
- }
415
- }
416
- else {
417
- throw new Error('ArgumentNullException:result');
418
- }
419
- };
420
- PdfGraphics.prototype.getNextPage = function () {
421
- var section = this.currentPage.section;
422
- var nextPage = null;
423
- var index = section.indexOf(this.currentPage);
424
- if (index === section.count - 1) {
425
- nextPage = section.add();
426
- }
427
- else {
428
- nextPage = section.getPages()[index + 1];
429
- }
430
- return nextPage;
431
- };
432
- PdfGraphics.prototype.setClip = function (rectangle, mode) {
433
- if (typeof mode === 'undefined') {
434
- this.setClip(rectangle, enum_1.PdfFillMode.Winding);
435
- }
436
- else {
437
- this.pdfStreamWriter.appendRectangle(rectangle);
438
- this.pdfStreamWriter.clipPath((mode === enum_1.PdfFillMode.Alternate));
439
- }
440
- };
441
- PdfGraphics.prototype.applyStringSettings = function (font, pen, brush, format, bounds) {
442
- var setLineWidth = false;
443
- var tm = this.getTextRenderingMode(pen, brush, format);
444
- this.stateControl(pen, brush, font, format);
445
- this.pdfStreamWriter.beginText();
446
- if ((tm) !== this.previousTextRenderingMode) {
447
- this.pdfStreamWriter.setTextRenderingMode(tm);
448
- this.previousTextRenderingMode = tm;
449
- }
450
- var cs = (format != null) ? format.characterSpacing : 0;
451
- if (cs !== this.previousCharacterSpacing && !this.isEmfTextScaled) {
452
- this.pdfStreamWriter.setCharacterSpacing(cs);
453
- this.previousCharacterSpacing = cs;
454
- }
455
- var ws = (format != null) ? format.wordSpacing : 0;
456
- if (ws !== this.previousWordSpacing) {
457
- this.pdfStreamWriter.setWordSpacing(ws);
458
- this.previousWordSpacing = ws;
459
- }
460
- };
461
- PdfGraphics.prototype.getTextVerticalAlignShift = function (textHeight, boundsHeight, format) {
462
- var shift = 0;
463
- if (boundsHeight >= 0 && format != null && format.lineAlignment !== enum_2.PdfVerticalAlignment.Top) {
464
- switch (format.lineAlignment) {
465
- case enum_2.PdfVerticalAlignment.Middle:
466
- shift = (boundsHeight - textHeight) / 2;
467
- break;
468
- case enum_2.PdfVerticalAlignment.Bottom:
469
- shift = boundsHeight - textHeight;
470
- break;
471
- }
472
- }
473
- return shift;
474
- };
475
- PdfGraphics.prototype.drawLayoutResult = function (result, font, format, layoutRectangle) {
476
- var vAlignShift = this.getTextVerticalAlignShift(result.actualSize.height, layoutRectangle.height, format);
477
- if (vAlignShift !== 0) {
478
- this.pdfStreamWriter.startNextLine(0, vAlignShift);
479
- }
480
- var lines = result.lines;
481
- for (var i = 0, len = lines.length; (i < len && i !== this.startCutIndex); i++) {
482
- var lineInfo = lines[i];
483
- var line = lineInfo.text;
484
- var lineWidth = lineInfo.width;
485
- var hAlignShift = this.getHorizontalAlignShift(lineWidth, layoutRectangle.width, format);
486
- var lineIndent = this.getLineIndent(lineInfo, format, layoutRectangle, (i === 0));
487
- hAlignShift += (!this.rightToLeft(format)) ? lineIndent : 0;
488
- if (hAlignShift !== 0 && !this.isEmfTextScaled) {
489
- this.pdfStreamWriter.startNextLine(hAlignShift, 0);
490
- }
491
- this.drawAsciiLine(lineInfo, layoutRectangle, font, format);
492
- if (hAlignShift !== 0 && !this.isEmfTextScaled) {
493
- this.pdfStreamWriter.startNextLine(-hAlignShift, 0);
494
- }
495
- if (this.isOverloadWithPosition && lines.length > 1) {
496
- this.pdfStreamWriter.startNextLine(-(layoutRectangle.x), 0);
497
- layoutRectangle.x = 0;
498
- layoutRectangle.width = this.clientSize.width;
499
- this.isOverloadWithPosition = false;
500
- this.isPointOverload = true;
501
- }
502
- }
503
- this.getResources.getResources().requireProcedureSet(this.procedureSets.text);
504
- if (vAlignShift !== 0) {
505
- this.pdfStreamWriter.startNextLine(0, -(vAlignShift - result.lineHeight));
506
- }
507
- this.pdfStreamWriter.endText();
508
- };
509
- PdfGraphics.prototype.drawAsciiLine = function (lineInfo, layoutRectangle, font, format) {
510
- this.justifyLine(lineInfo, layoutRectangle.width, format);
511
- var value = '';
512
- if (lineInfo.text.indexOf('(') !== -1 || lineInfo.text.indexOf(')') !== -1) {
513
- for (var i = 0; i < lineInfo.text.length; i++) {
514
- if (lineInfo.text[i] === '(') {
515
- value += '\\\(';
516
- }
517
- else if (lineInfo.text[i] === ')') {
518
- value += '\\\)';
519
- }
520
- else {
521
- value += lineInfo.text[i];
522
- }
523
- }
524
- }
525
- if (value === '') {
526
- value = lineInfo.text;
527
- }
528
- var line = '(' + value + ')';
529
- this.pdfStreamWriter.showNextLineText(new pdf_string_1.PdfString(line));
530
- };
531
- PdfGraphics.prototype.justifyLine = function (lineInfo, boundsWidth, format) {
532
- var line = lineInfo.text;
533
- var lineWidth = lineInfo.width;
534
- var shouldJustify = this.shouldJustify(lineInfo, boundsWidth, format);
535
- var hasWordSpacing = (format != null && format.wordSpacing !== 0);
536
- var symbols = string_tokenizer_1.StringTokenizer.spaces;
537
- var whitespacesCount = string_tokenizer_1.StringTokenizer.getCharsCount(line, symbols);
538
- var wordSpace = 0;
539
- if (shouldJustify) {
540
- if (hasWordSpacing) {
541
- lineWidth -= (whitespacesCount * format.wordSpacing);
542
- }
543
- var difference = boundsWidth - lineWidth;
544
- wordSpace = difference / whitespacesCount;
545
- this.pdfStreamWriter.setWordSpacing(wordSpace);
546
- }
547
- else {
548
- if (hasWordSpacing) {
549
- this.pdfStreamWriter.setWordSpacing(format.wordSpacing);
550
- }
551
- else {
552
- this.pdfStreamWriter.setWordSpacing(0);
553
- }
554
- }
555
- return wordSpace;
556
- };
557
- PdfGraphics.prototype.reset = function (size) {
558
- this.canvasSize = size;
559
- this.streamWriter.clear();
560
- this.initialize();
561
- this.initializeCoordinates();
562
- };
563
- PdfGraphics.prototype.shouldJustify = function (lineInfo, boundsWidth, format) {
564
- var line = lineInfo.text;
565
- var lineWidth = lineInfo.width;
566
- var justifyStyle = (format != null && format.alignment === enum_1.PdfTextAlignment.Justify);
567
- var goodWidth = (boundsWidth >= 0 && lineWidth < boundsWidth);
568
- var symbols = string_tokenizer_1.StringTokenizer.spaces;
569
- var whitespacesCount = string_tokenizer_1.StringTokenizer.getCharsCount(line, symbols);
570
- var hasSpaces = (whitespacesCount > 0 && line[0] !== string_tokenizer_1.StringTokenizer.whiteSpace);
571
- var goodLineBreakStyle = ((lineInfo.lineType & string_layouter_1.LineType.LayoutBreak) > 0);
572
- var shouldJustify = (justifyStyle && goodWidth && hasSpaces && (goodLineBreakStyle || format.alignment === enum_1.PdfTextAlignment.Justify));
573
- return shouldJustify;
574
- };
575
- PdfGraphics.prototype.underlineStrikeoutText = function (pen, brush, result, font, layoutRectangle, format) {
576
- if (font.underline || font.strikeout) {
577
- var linePen = this.createUnderlineStikeoutPen(pen, brush, font, format);
578
- if (linePen != null) {
579
- var vShift = this.getTextVerticalAlignShift(result.actualSize.height, layoutRectangle.height, format);
580
- var underlineYOffset = 0;
581
- underlineYOffset = layoutRectangle.y + vShift + font.metrics.getAscent(format) + 1.5 * linePen.width;
582
- var strikeoutYOffset = layoutRectangle.y + vShift + font.metrics.getHeight(format) / 2 + 1.5 * linePen.width;
583
- var lines = result.lines;
584
- for (var i = 0, len = result.lineCount; i < len; i++) {
585
- var lineInfo = lines[i];
586
- var line = lineInfo.text;
587
- var lineWidth = lineInfo.width;
588
- var hShift = this.getHorizontalAlignShift(lineWidth, layoutRectangle.width, format);
589
- var lineIndent = this.getLineIndent(lineInfo, format, layoutRectangle, (i === 0));
590
- hShift += (!this.rightToLeft(format)) ? lineIndent : 0;
591
- var x1 = layoutRectangle.x + hShift;
592
- var x2 = (!this.shouldJustify(lineInfo, layoutRectangle.width, format)) ? x1 + lineWidth - lineIndent : x1 + layoutRectangle.width - lineIndent;
593
- if (font.underline) {
594
- var y = underlineYOffset;
595
- this.drawLine(linePen, x1, y, x2, y);
596
- underlineYOffset += result.lineHeight;
597
- }
598
- if (font.strikeout) {
599
- var y = strikeoutYOffset;
600
- this.drawLine(linePen, x1, y, x2, y);
601
- strikeoutYOffset += result.lineHeight;
602
- }
603
- if (this.isPointOverload && lines.length > 1) {
604
- layoutRectangle.x = 0;
605
- layoutRectangle.width = this.clientSize.width;
606
- }
607
- }
608
- this.isPointOverload = false;
609
- }
610
- }
611
- };
612
- PdfGraphics.prototype.createUnderlineStikeoutPen = function (pen, brush, font, format) {
613
- var lineWidth = font.metrics.getSize(format) / 20;
614
- var linePen = null;
615
- if (pen != null) {
616
- linePen = new pdf_pen_1.PdfPen(pen.color, lineWidth);
617
- }
618
- else if (brush != null) {
619
- linePen = new pdf_pen_1.PdfPen(brush, lineWidth);
620
- }
621
- return linePen;
622
- };
623
- PdfGraphics.prototype.getTextRenderingMode = function (pen, brush, format) {
624
- var tm = enum_1.TextRenderingMode.None;
625
- if (pen != null && brush != null) {
626
- tm = enum_1.TextRenderingMode.FillStroke;
627
- }
628
- else if (pen != null) {
629
- tm = enum_1.TextRenderingMode.Stroke;
630
- }
631
- else {
632
- tm = enum_1.TextRenderingMode.Fill;
633
- }
634
- if (format != null && format.clipPath) {
635
- tm |= enum_1.TextRenderingMode.ClipFlag;
636
- }
637
- return tm;
638
- };
639
- PdfGraphics.prototype.getLineIndent = function (lineInfo, format, layoutBounds, firstLine) {
640
- var lineIndent = 0;
641
- var firstParagraphLine = ((lineInfo.lineType & string_layouter_1.LineType.FirstParagraphLine) > 0);
642
- if (format != null && firstParagraphLine) {
643
- lineIndent = (firstLine) ? format.firstLineIndent : format.paragraphIndent;
644
- lineIndent = (layoutBounds.width > 0) ? Math.min(layoutBounds.width, lineIndent) : lineIndent;
645
- }
646
- return lineIndent;
647
- };
648
- PdfGraphics.prototype.getHorizontalAlignShift = function (lineWidth, boundsWidth, format) {
649
- var shift = 0;
650
- if (boundsWidth >= 0 && format != null && format.alignment !== enum_1.PdfTextAlignment.Left) {
651
- switch (format.alignment) {
652
- case enum_1.PdfTextAlignment.Center:
653
- shift = (boundsWidth - lineWidth) / 2;
654
- break;
655
- case enum_1.PdfTextAlignment.Right:
656
- shift = boundsWidth - lineWidth;
657
- break;
658
- }
659
- }
660
- return shift;
661
- };
662
- PdfGraphics.prototype.rightToLeft = function (format) {
663
- var rtl = (format != null && format.rightToLeft);
664
- return rtl;
665
- };
666
- PdfGraphics.prototype.stateControl = function (pen, brush, font, format) {
667
- if (typeof format === 'undefined') {
668
- this.stateControl(pen, brush, font, null);
669
- }
670
- else {
671
- var saveState = false;
672
- if (brush !== null) {
673
- var solidBrush = brush;
674
- if (typeof this.pageLayer !== 'undefined' && this.pageLayer != null) {
675
- if (this.colorSpaceChanged === false) {
676
- this.lastDocumentCS = this.pageLayer.page.document.colorSpace;
677
- this.lastGraphicsCS = this.pageLayer.page.graphics.colorSpace;
678
- this.colorSpace = this.pageLayer.page.document.colorSpace;
679
- this.currentColorSpace = this.pageLayer.page.document.colorSpace;
680
- this.colorSpaceChanged = true;
681
- }
682
- }
683
- this.initCurrentColorSpace(this.currentColorSpace);
684
- }
685
- else if (pen != null) {
686
- var pdfPen = pen;
687
- if (typeof this.pageLayer !== 'undefined' && this.pageLayer != null) {
688
- this.colorSpace = this.pageLayer.page.document.colorSpace;
689
- this.currentColorSpace = this.pageLayer.page.document.colorSpace;
690
- }
691
- this.initCurrentColorSpace(this.currentColorSpace);
692
- }
693
- this.penControl(pen, saveState);
694
- this.brushControl(brush, saveState);
695
- this.fontControl(font, format, saveState);
696
- }
697
- };
698
- PdfGraphics.prototype.initCurrentColorSpace = function (colorspace) {
699
- var re = this.getResources.getResources();
700
- if (!this.bCSInitialized) {
701
- this.pdfStreamWriter.setColorSpace('Device' + this.currentColorSpaces[this.currentColorSpace], true);
702
- this.pdfStreamWriter.setColorSpace('Device' + this.currentColorSpaces[this.currentColorSpace], false);
703
- this.bCSInitialized = true;
704
- }
705
- };
706
- PdfGraphics.prototype.penControl = function (pen, saveState) {
707
- if (pen != null) {
708
- this.currentPen = pen;
709
- this.colorSpace = enum_1.PdfColorSpace.Rgb;
710
- pen.monitorChanges(this.currentPen, this.pdfStreamWriter, this.getResources, saveState, this.colorSpace, this.matrix.clone());
711
- this.currentPen = pen.clone();
712
- }
713
- };
714
- PdfGraphics.prototype.brushControl = function (brush, saveState) {
715
- if (brush != null) {
716
- this.currentBrush = brush;
717
- brush.monitorChanges(this.currentBrush, this.pdfStreamWriter, this.getResources, saveState, this.colorSpace);
718
- this.currentBrush = brush;
719
- brush = null;
720
- }
721
- };
722
- PdfGraphics.prototype.fontControl = function (font, format, saveState) {
723
- if (font != null) {
724
- var curSubSuper = (format != null) ? format.subSuperScript : enum_3.PdfSubSuperScript.None;
725
- var prevSubSuper = (this.currentStringFormat != null) ? this.currentStringFormat.subSuperScript : enum_3.PdfSubSuperScript.None;
726
- if (saveState || font !== this.currentFont || curSubSuper !== prevSubSuper) {
727
- var resources = this.getResources.getResources();
728
- this.currentFont = font;
729
- this.currentStringFormat = format;
730
- var size = font.metrics.getSize(format);
731
- this.isEmfTextScaled = false;
732
- var fontName = resources.getName(font);
733
- this.pdfStreamWriter.setFont(font, fontName, size);
734
- }
735
- }
736
- };
737
- PdfGraphics.prototype.setTransparency = function (arg1, arg2, arg3) {
738
- if (typeof arg2 === 'undefined') {
739
- this.istransparencySet = true;
740
- this.setTransparency(arg1, arg1, enum_2.PdfBlendMode.Normal);
741
- }
742
- else if (typeof arg2 === 'number' && typeof arg3 === 'undefined') {
743
- this.setTransparency(arg1, arg2, enum_2.PdfBlendMode.Normal);
744
- }
745
- else {
746
- if (this.trasparencies == null) {
747
- this.trasparencies = new dictionary_1.TemporaryDictionary();
748
- }
749
- var transp = null;
750
- var td = new TransparencyData(arg1, arg2, arg3);
751
- if (this.trasparencies.containsKey(td)) {
752
- transp = this.trasparencies.getValue(td);
753
- }
754
- if (transp == null) {
755
- transp = new pdf_transparency_1.PdfTransparency(arg1, arg2, arg3);
756
- this.trasparencies.setValue(td, transp);
757
- }
758
- var resources = this.getResources.getResources();
759
- var name_3 = resources.getName(transp);
760
- var sw = this.streamWriter;
761
- sw.setGraphicsState(name_3);
762
- }
763
- };
764
- PdfGraphics.prototype.clipTranslateMargins = function (x, y, left, top, right, bottom) {
765
- if (x instanceof pdf_drawing_1.RectangleF && typeof y === 'undefined') {
766
- this.clipBounds = x;
767
- this.pdfStreamWriter.writeComment('Clip margins.');
768
- this.pdfStreamWriter.appendRectangle(x);
769
- this.pdfStreamWriter.closePath();
770
- this.pdfStreamWriter.clipPath(false);
771
- this.pdfStreamWriter.writeComment('Translate co-ordinate system.');
772
- this.translateTransform(x.x, x.y);
773
- }
774
- else if (typeof x === 'number') {
775
- var clipArea = new pdf_drawing_1.RectangleF(left, top, this.size.width - left - right, this.size.height - top - bottom);
776
- this.clipBounds = clipArea;
777
- this.pdfStreamWriter.writeComment("Clip margins.");
778
- this.pdfStreamWriter.appendRectangle(clipArea);
779
- this.pdfStreamWriter.closePath();
780
- this.pdfStreamWriter.clipPath(false);
781
- this.pdfStreamWriter.writeComment("Translate co-ordinate system.");
782
- this.translateTransform(x, y);
783
- }
784
- };
785
- PdfGraphics.prototype.updateY = function (y) {
786
- return -y;
787
- };
788
- PdfGraphics.prototype.translateTransform = function (offsetX, offsetY) {
789
- var matrix = new pdf_transformation_matrix_1.PdfTransformationMatrix();
790
- this.getTranslateTransform(offsetX, offsetY, matrix);
791
- this.pdfStreamWriter.modifyCtm(matrix);
792
- this.matrix.multiply(matrix);
793
- };
794
- PdfGraphics.prototype.getTranslateTransform = function (x, y, input) {
795
- input.translate(x, this.updateY(y));
796
- return input;
797
- };
798
- PdfGraphics.prototype.scaleTransform = function (scaleX, scaleY) {
799
- var matrix = new pdf_transformation_matrix_1.PdfTransformationMatrix();
800
- this.getScaleTransform(scaleX, scaleY, matrix);
801
- this.pdfStreamWriter.modifyCtm(matrix);
802
- this.matrix.multiply(matrix);
803
- };
804
- PdfGraphics.prototype.getScaleTransform = function (x, y, input) {
805
- if (input == null) {
806
- input = new pdf_transformation_matrix_1.PdfTransformationMatrix();
807
- }
808
- input.scale(x, y);
809
- return input;
810
- };
811
- PdfGraphics.prototype.rotateTransform = function (angle) {
812
- var matrix = new pdf_transformation_matrix_1.PdfTransformationMatrix();
813
- this.getRotateTransform(angle, matrix);
814
- this.pdfStreamWriter.modifyCtm(matrix);
815
- this.matrix.multiply(matrix);
816
- };
817
- PdfGraphics.prototype.initializeCoordinates = function () {
818
- this.pdfStreamWriter.writeComment('Change co-ordinate system to left/top.');
819
- if (this.mediaBoxUpperRightBound !== -(this.size.height)) {
820
- if (this.cropBox == null) {
821
- if (this.mediaBoxUpperRightBound === this.size.height || this.mediaBoxUpperRightBound === 0) {
822
- this.translateTransform(0, this.updateY(this.size.height));
823
- }
824
- else {
825
- this.translateTransform(0, this.updateY(this.mediaBoxUpperRightBound));
826
- }
827
- }
828
- }
829
- };
830
- PdfGraphics.prototype.getRotateTransform = function (angle, input) {
831
- if (input == null || typeof input === 'undefined') {
832
- input = new pdf_transformation_matrix_1.PdfTransformationMatrix();
833
- }
834
- input.rotate(this.updateY(angle));
835
- return input;
836
- };
837
- PdfGraphics.prototype.save = function () {
838
- var state = new PdfGraphicsState(this, this.matrix.clone());
839
- state.brush = this.currentBrush;
840
- state.pen = this.currentPen;
841
- state.font = this.currentFont;
842
- state.colorSpace = this.currentColorSpace;
843
- state.characterSpacing = this.previousCharacterSpacing;
844
- state.wordSpacing = this.previousWordSpacing;
845
- state.textScaling = this.previousTextScaling;
846
- state.textRenderingMode = this.previousTextRenderingMode;
847
- this.graphicsState.push(state);
848
- this.pdfStreamWriter.saveGraphicsState();
849
- return state;
850
- };
851
- PdfGraphics.prototype.restore = function (state) {
852
- if (typeof state === 'undefined') {
853
- if (this.graphicsState.length > 0) {
854
- this.doRestoreState();
855
- }
856
- }
857
- else {
858
- if (this.graphicsState.indexOf(state) !== -1) {
859
- for (;;) {
860
- if (this.graphicsState.length === 0) {
861
- break;
862
- }
863
- var popState = this.doRestoreState();
864
- if (popState === state) {
865
- break;
866
- }
867
- }
868
- }
869
- }
870
- };
871
- PdfGraphics.prototype.doRestoreState = function () {
872
- var state = this.graphicsState.pop();
873
- this.transformationMatrix = state.matrix;
874
- this.currentBrush = state.brush;
875
- this.currentPen = state.pen;
876
- this.currentFont = state.font;
877
- this.currentColorSpace = state.colorSpace;
878
- this.previousCharacterSpacing = state.characterSpacing;
879
- this.previousWordSpacing = state.wordSpacing;
880
- this.previousTextScaling = state.textScaling;
881
- this.previousTextRenderingMode = state.textRenderingMode;
882
- this.pdfStreamWriter.restoreGraphicsState();
883
- return state;
884
- };
885
- return PdfGraphics;
886
- }());
887
- PdfGraphics.pathTypesValuesMask = 0xf;
888
- PdfGraphics.transparencyObject = false;
889
- exports.PdfGraphics = PdfGraphics;
890
- var GetResourceEventHandler = (function () {
891
- function GetResourceEventHandler(sender) {
892
- this.sender = sender;
893
- }
894
- GetResourceEventHandler.prototype.getResources = function () {
895
- return this.sender.getResources();
896
- };
897
- return GetResourceEventHandler;
898
- }());
899
- exports.GetResourceEventHandler = GetResourceEventHandler;
900
- var PdfGraphicsState = (function () {
901
- function PdfGraphicsState(graphics, matrix) {
902
- this.internalTextRenderingMode = enum_1.TextRenderingMode.Fill;
903
- this.internalCharacterSpacing = 0.0;
904
- this.internalWordSpacing = 0.0;
905
- this.internalTextScaling = 100.0;
906
- this.pdfColorSpace = enum_1.PdfColorSpace.Rgb;
907
- if (typeof graphics !== 'undefined') {
908
- this.pdfGraphics = graphics;
909
- this.transformationMatrix = matrix;
910
- }
911
- }
912
- Object.defineProperty(PdfGraphicsState.prototype, "graphics", {
913
- get: function () {
914
- return this.pdfGraphics;
915
- },
916
- enumerable: true,
917
- configurable: true
918
- });
919
- Object.defineProperty(PdfGraphicsState.prototype, "matrix", {
920
- get: function () {
921
- return this.transformationMatrix;
922
- },
923
- enumerable: true,
924
- configurable: true
925
- });
926
- Object.defineProperty(PdfGraphicsState.prototype, "characterSpacing", {
927
- get: function () {
928
- return this.internalCharacterSpacing;
929
- },
930
- set: function (value) {
931
- this.internalCharacterSpacing = value;
932
- },
933
- enumerable: true,
934
- configurable: true
935
- });
936
- Object.defineProperty(PdfGraphicsState.prototype, "wordSpacing", {
937
- get: function () {
938
- return this.internalWordSpacing;
939
- },
940
- set: function (value) {
941
- this.internalWordSpacing = value;
942
- },
943
- enumerable: true,
944
- configurable: true
945
- });
946
- Object.defineProperty(PdfGraphicsState.prototype, "textScaling", {
947
- get: function () {
948
- return this.internalTextScaling;
949
- },
950
- set: function (value) {
951
- this.internalTextScaling = value;
952
- },
953
- enumerable: true,
954
- configurable: true
955
- });
956
- Object.defineProperty(PdfGraphicsState.prototype, "pen", {
957
- get: function () {
958
- return this.pdfPen;
959
- },
960
- set: function (value) {
961
- this.pdfPen = value;
962
- },
963
- enumerable: true,
964
- configurable: true
965
- });
966
- Object.defineProperty(PdfGraphicsState.prototype, "brush", {
967
- get: function () {
968
- return this.pdfBrush;
969
- },
970
- set: function (value) {
971
- this.pdfBrush = value;
972
- },
973
- enumerable: true,
974
- configurable: true
975
- });
976
- Object.defineProperty(PdfGraphicsState.prototype, "font", {
977
- get: function () {
978
- return this.pdfFont;
979
- },
980
- set: function (value) {
981
- this.pdfFont = value;
982
- },
983
- enumerable: true,
984
- configurable: true
985
- });
986
- Object.defineProperty(PdfGraphicsState.prototype, "colorSpace", {
987
- get: function () {
988
- return this.pdfColorSpace;
989
- },
990
- set: function (value) {
991
- this.pdfColorSpace = value;
992
- },
993
- enumerable: true,
994
- configurable: true
995
- });
996
- Object.defineProperty(PdfGraphicsState.prototype, "textRenderingMode", {
997
- get: function () {
998
- return this.internalTextRenderingMode;
999
- },
1000
- set: function (value) {
1001
- this.internalTextRenderingMode = value;
1002
- },
1003
- enumerable: true,
1004
- configurable: true
1005
- });
1006
- return PdfGraphicsState;
1007
- }());
1008
- exports.PdfGraphicsState = PdfGraphicsState;
1009
- var TransparencyData = (function () {
1010
- function TransparencyData(alphaPen, alphaBrush, blendMode) {
1011
- this.alphaPen = alphaPen;
1012
- this.alphaBrush = alphaBrush;
1013
- this.blendMode = blendMode;
1014
- }
1015
- return TransparencyData;
1016
- }());
1017
- });