@syncfusion/ej2-pdf 1.0.22 → 23.1.36

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