@syncfusion/ej2-pdf-export 19.3.43 → 19.3.53

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 (166) hide show
  1. package/.eslintrc.json +1 -1
  2. package/CHANGELOG.md +167 -0
  3. package/README.md +1 -10
  4. package/dist/ej2-pdf-export.umd.min.js +1 -1
  5. package/dist/ej2-pdf-export.umd.min.js.map +1 -1
  6. package/dist/es6/ej2-pdf-export.es2015.js +1 -2
  7. package/dist/es6/ej2-pdf-export.es2015.js.map +1 -1
  8. package/dist/es6/ej2-pdf-export.es5.js +1 -2
  9. package/dist/es6/ej2-pdf-export.es5.js.map +1 -1
  10. package/dist/global/ej2-pdf-export.min.js +1 -1
  11. package/dist/global/ej2-pdf-export.min.js.map +1 -1
  12. package/dist/global/index.d.ts +1 -1
  13. package/license +3 -0
  14. package/package.json +15 -7
  15. package/src/implementation/pages/pdf-section.d.ts +0 -1
  16. package/src/implementation/pages/pdf-section.js +0 -1
  17. package/src/implementation/structured-elements/grid/pdf-grid-cell.js +1 -1
  18. package/dist/ts/implementation/actions/action.ts +0 -76
  19. package/dist/ts/implementation/actions/uri-action.ts +0 -52
  20. package/dist/ts/implementation/annotations/action-link-annotation.ts +0 -43
  21. package/dist/ts/implementation/annotations/annotation-collection.ts +0 -159
  22. package/dist/ts/implementation/annotations/annotation.ts +0 -241
  23. package/dist/ts/implementation/annotations/document-link-annotation.ts +0 -118
  24. package/dist/ts/implementation/annotations/link-annotation.ts +0 -32
  25. package/dist/ts/implementation/annotations/pdf-text-web-link.ts +0 -265
  26. package/dist/ts/implementation/annotations/uri-annotation.ts +0 -86
  27. package/dist/ts/implementation/collections/dictionary.ts +0 -150
  28. package/dist/ts/implementation/collections/object-object-pair/dictionary.ts +0 -125
  29. package/dist/ts/implementation/collections/utils.ts +0 -38
  30. package/dist/ts/implementation/document/automatic-fields/automatic-field-info-collection.ts +0 -39
  31. package/dist/ts/implementation/document/automatic-fields/automatic-field-info.ts +0 -108
  32. package/dist/ts/implementation/document/automatic-fields/automatic-field.ts +0 -127
  33. package/dist/ts/implementation/document/automatic-fields/composite-field.ts +0 -76
  34. package/dist/ts/implementation/document/automatic-fields/multiple-value-field.ts +0 -37
  35. package/dist/ts/implementation/document/automatic-fields/page-count-field.ts +0 -75
  36. package/dist/ts/implementation/document/automatic-fields/pdf-numbers-convertor.ts +0 -157
  37. package/dist/ts/implementation/document/automatic-fields/pdf-page-number-field.ts +0 -82
  38. package/dist/ts/implementation/document/automatic-fields/pdf-template-value-pair.ts +0 -60
  39. package/dist/ts/implementation/document/automatic-fields/single-value-field.ts +0 -48
  40. package/dist/ts/implementation/document/pdf-catalog.ts +0 -52
  41. package/dist/ts/implementation/document/pdf-document-base.ts +0 -166
  42. package/dist/ts/implementation/document/pdf-document-template.ts +0 -310
  43. package/dist/ts/implementation/document/pdf-document.ts +0 -342
  44. package/dist/ts/implementation/drawing/pdf-drawing.ts +0 -218
  45. package/dist/ts/implementation/general/enum.ts +0 -21
  46. package/dist/ts/implementation/general/functions/pdf-function.ts +0 -66
  47. package/dist/ts/implementation/general/functions/pdf-sampled-function.ts +0 -62
  48. package/dist/ts/implementation/general/pdf-cache-collection.ts +0 -97
  49. package/dist/ts/implementation/general/pdf-collection.ts +0 -41
  50. package/dist/ts/implementation/general/pdf-destination.ts +0 -170
  51. package/dist/ts/implementation/graphics/brushes/enum.ts +0 -237
  52. package/dist/ts/implementation/graphics/brushes/pdf-blend.ts +0 -294
  53. package/dist/ts/implementation/graphics/brushes/pdf-brush.ts +0 -68
  54. package/dist/ts/implementation/graphics/brushes/pdf-brushes.ts +0 -2438
  55. package/dist/ts/implementation/graphics/brushes/pdf-color-blend.ts +0 -295
  56. package/dist/ts/implementation/graphics/brushes/pdf-gradient-brush.ts +0 -311
  57. package/dist/ts/implementation/graphics/brushes/pdf-linear-gradient-brush.ts +0 -406
  58. package/dist/ts/implementation/graphics/brushes/pdf-radial-gradient-brush.ts +0 -290
  59. package/dist/ts/implementation/graphics/brushes/pdf-solid-brush.ts +0 -107
  60. package/dist/ts/implementation/graphics/brushes/pdf-tiling-brush.ts +0 -304
  61. package/dist/ts/implementation/graphics/constants.ts +0 -31
  62. package/dist/ts/implementation/graphics/enum.ts +0 -413
  63. package/dist/ts/implementation/graphics/figures/arc.ts +0 -133
  64. package/dist/ts/implementation/graphics/figures/base/draw-element.ts +0 -59
  65. package/dist/ts/implementation/graphics/figures/base/element-layouter.ts +0 -260
  66. package/dist/ts/implementation/graphics/figures/base/fill-element.ts +0 -72
  67. package/dist/ts/implementation/graphics/figures/base/graphics-element.ts +0 -34
  68. package/dist/ts/implementation/graphics/figures/base/pdf-shape-element.ts +0 -69
  69. package/dist/ts/implementation/graphics/figures/base/shape-layouter.ts +0 -276
  70. package/dist/ts/implementation/graphics/figures/base/text-layouter.ts +0 -205
  71. package/dist/ts/implementation/graphics/figures/ellipse-part.ts +0 -76
  72. package/dist/ts/implementation/graphics/figures/enum.ts +0 -80
  73. package/dist/ts/implementation/graphics/figures/layout-element.ts +0 -132
  74. package/dist/ts/implementation/graphics/figures/path.ts +0 -646
  75. package/dist/ts/implementation/graphics/figures/pdf-template.ts +0 -205
  76. package/dist/ts/implementation/graphics/figures/rectangle-area.ts +0 -108
  77. package/dist/ts/implementation/graphics/figures/text-element.ts +0 -445
  78. package/dist/ts/implementation/graphics/fonts/enum.ts +0 -385
  79. package/dist/ts/implementation/graphics/fonts/pdf-font-metrics.ts +0 -248
  80. package/dist/ts/implementation/graphics/fonts/pdf-font.ts +0 -316
  81. package/dist/ts/implementation/graphics/fonts/pdf-standard-font-metrics-factory.ts +0 -606
  82. package/dist/ts/implementation/graphics/fonts/pdf-standard-font.ts +0 -243
  83. package/dist/ts/implementation/graphics/fonts/pdf-string-format.ts +0 -474
  84. package/dist/ts/implementation/graphics/fonts/pdf-true-type-font.ts +0 -165
  85. package/dist/ts/implementation/graphics/fonts/rtl/rtl-bidirectional.ts +0 -958
  86. package/dist/ts/implementation/graphics/fonts/rtl/rtl-text-shape.ts +0 -374
  87. package/dist/ts/implementation/graphics/fonts/rtl-renderer.ts +0 -255
  88. package/dist/ts/implementation/graphics/fonts/string-layouter.ts +0 -617
  89. package/dist/ts/implementation/graphics/fonts/string-tokenizer.ts +0 -275
  90. package/dist/ts/implementation/graphics/fonts/ttf-OS2-Table.ts +0 -206
  91. package/dist/ts/implementation/graphics/fonts/ttf-apple-cmap-sub-table.ts +0 -18
  92. package/dist/ts/implementation/graphics/fonts/ttf-cmap-sub-table.ts +0 -18
  93. package/dist/ts/implementation/graphics/fonts/ttf-cmap-table.ts +0 -14
  94. package/dist/ts/implementation/graphics/fonts/ttf-glyph-header.ts +0 -26
  95. package/dist/ts/implementation/graphics/fonts/ttf-glyph-info.ts +0 -35
  96. package/dist/ts/implementation/graphics/fonts/ttf-head-table.ts +0 -94
  97. package/dist/ts/implementation/graphics/fonts/ttf-horizontal-header-table.ts +0 -56
  98. package/dist/ts/implementation/graphics/fonts/ttf-loca-table.ts +0 -10
  99. package/dist/ts/implementation/graphics/fonts/ttf-long-hor-metric.ts +0 -14
  100. package/dist/ts/implementation/graphics/fonts/ttf-metrics.ts +0 -106
  101. package/dist/ts/implementation/graphics/fonts/ttf-microsoft-cmap-sub-table.ts +0 -58
  102. package/dist/ts/implementation/graphics/fonts/ttf-name-record.ts +0 -33
  103. package/dist/ts/implementation/graphics/fonts/ttf-name-table.ts +0 -22
  104. package/dist/ts/implementation/graphics/fonts/ttf-post-table.ts +0 -42
  105. package/dist/ts/implementation/graphics/fonts/ttf-reader.ts +0 -1254
  106. package/dist/ts/implementation/graphics/fonts/ttf-table-info.ts +0 -26
  107. package/dist/ts/implementation/graphics/fonts/ttf-trimmed-cmap-sub-table.ts +0 -26
  108. package/dist/ts/implementation/graphics/fonts/unicode-true-type-font.ts +0 -577
  109. package/dist/ts/implementation/graphics/images/byte-array.ts +0 -137
  110. package/dist/ts/implementation/graphics/images/image-decoder.ts +0 -437
  111. package/dist/ts/implementation/graphics/images/pdf-bitmap.ts +0 -110
  112. package/dist/ts/implementation/graphics/images/pdf-image.ts +0 -132
  113. package/dist/ts/implementation/graphics/pdf-color.ts +0 -478
  114. package/dist/ts/implementation/graphics/pdf-graphics.ts +0 -2424
  115. package/dist/ts/implementation/graphics/pdf-margins.ts +0 -124
  116. package/dist/ts/implementation/graphics/pdf-pen.ts +0 -370
  117. package/dist/ts/implementation/graphics/pdf-resources.ts +0 -300
  118. package/dist/ts/implementation/graphics/pdf-transformation-matrix.ts +0 -246
  119. package/dist/ts/implementation/graphics/pdf-transparency.ts +0 -93
  120. package/dist/ts/implementation/graphics/unit-convertor.ts +0 -96
  121. package/dist/ts/implementation/input-output/big-endian-writer.ts +0 -121
  122. package/dist/ts/implementation/input-output/cross-table.ts +0 -21
  123. package/dist/ts/implementation/input-output/enum.ts +0 -16
  124. package/dist/ts/implementation/input-output/pdf-cross-table.ts +0 -524
  125. package/dist/ts/implementation/input-output/pdf-dictionary-properties.ts +0 -515
  126. package/dist/ts/implementation/input-output/pdf-main-object-collection.ts +0 -194
  127. package/dist/ts/implementation/input-output/pdf-operators.ts +0 -363
  128. package/dist/ts/implementation/input-output/pdf-stream-writer.ts +0 -681
  129. package/dist/ts/implementation/input-output/pdf-writer.ts +0 -88
  130. package/dist/ts/implementation/pages/enum.ts +0 -201
  131. package/dist/ts/implementation/pages/page-added-event-arguments.ts +0 -39
  132. package/dist/ts/implementation/pages/pdf-document-page-collection.ts +0 -180
  133. package/dist/ts/implementation/pages/pdf-page-base.ts +0 -181
  134. package/dist/ts/implementation/pages/pdf-page-layer-collection.ts +0 -348
  135. package/dist/ts/implementation/pages/pdf-page-layer.ts +0 -271
  136. package/dist/ts/implementation/pages/pdf-page-settings.ts +0 -192
  137. package/dist/ts/implementation/pages/pdf-page-size.ts +0 -162
  138. package/dist/ts/implementation/pages/pdf-page-template-element.ts +0 -659
  139. package/dist/ts/implementation/pages/pdf-page.ts +0 -235
  140. package/dist/ts/implementation/pages/pdf-section-collection.ts +0 -187
  141. package/dist/ts/implementation/pages/pdf-section-page-collection.ts +0 -61
  142. package/dist/ts/implementation/pages/pdf-section-templates.ts +0 -96
  143. package/dist/ts/implementation/pages/pdf-section.ts +0 -644
  144. package/dist/ts/implementation/primitives/pdf-array.ts +0 -386
  145. package/dist/ts/implementation/primitives/pdf-boolean.ts +0 -119
  146. package/dist/ts/implementation/primitives/pdf-dictionary.ts +0 -513
  147. package/dist/ts/implementation/primitives/pdf-name.ts +0 -218
  148. package/dist/ts/implementation/primitives/pdf-number.ts +0 -165
  149. package/dist/ts/implementation/primitives/pdf-reference.ts +0 -430
  150. package/dist/ts/implementation/primitives/pdf-stream.ts +0 -336
  151. package/dist/ts/implementation/primitives/pdf-string.ts +0 -397
  152. package/dist/ts/implementation/structured-elements/grid/layout/grid-layouter.ts +0 -1998
  153. package/dist/ts/implementation/structured-elements/grid/pdf-grid-cell.ts +0 -1189
  154. package/dist/ts/implementation/structured-elements/grid/pdf-grid-column.ts +0 -206
  155. package/dist/ts/implementation/structured-elements/grid/pdf-grid-row.ts +0 -468
  156. package/dist/ts/implementation/structured-elements/grid/pdf-grid.ts +0 -839
  157. package/dist/ts/implementation/structured-elements/grid/styles/pdf-borders.ts +0 -240
  158. package/dist/ts/implementation/structured-elements/grid/styles/style.ts +0 -424
  159. package/dist/ts/implementation/structured-elements/tables/light-tables/enum.ts +0 -16
  160. package/dist/ts/interfaces/i-pdf-cache.ts +0 -23
  161. package/dist/ts/interfaces/i-pdf-changable.ts +0 -17
  162. package/dist/ts/interfaces/i-pdf-clonable.ts +0 -12
  163. package/dist/ts/interfaces/i-pdf-primitives.ts +0 -45
  164. package/dist/ts/interfaces/i-pdf-true-type-font.ts +0 -48
  165. package/dist/ts/interfaces/i-pdf-wrapper.ts +0 -13
  166. package/dist/ts/interfaces/i-pdf-writer.ts +0 -29
@@ -1,107 +0,0 @@
1
- import { PdfColor } from './../pdf-color';
2
- import { PdfStreamWriter } from './../../input-output/pdf-stream-writer';
3
- import { GetResourceEventHandler } from './../pdf-graphics';
4
- import { PdfColorSpace } from './../enum';
5
- import { PdfBrush } from './pdf-brush';
6
- /**
7
- * Represents a brush that fills any object with a solid color.
8
- * ```typescript
9
- * // create a new PDF document
10
- * let document : PdfDocument = new PdfDocument();
11
- * // add a pages to the document
12
- * let page1 : PdfPage = document.pages.add();
13
- * // set font
14
- * let font : PdfStandardFont = new PdfStandardFont(PdfFontFamily.Helvetica, 20);
15
- * // set brush
16
- * let blackBrush : PdfSolidBrush = new PdfSolidBrush(new PdfColor(0, 0, 0));
17
- * // draw the text
18
- * page1.graphics.drawString('Hello World', font, blackBrush, new PointF(10, 10));
19
- * // save the document
20
- * document.save('output.pdf');
21
- * // destroy the document
22
- * document.destroy();
23
- * ```
24
- */
25
- export class PdfSolidBrush extends PdfBrush {
26
- //Fields
27
- /**
28
- * The `colour` of the brush.
29
- * @private
30
- */
31
- public pdfColor : PdfColor;
32
- /**
33
- * Indicates if the brush is `immutable`.
34
- * @private
35
- */
36
- private bImmutable : boolean;
37
- /**
38
- * The `color space` of the brush.
39
- * @private
40
- */
41
- private colorSpace : PdfColorSpace;
42
- //Constructors
43
- /**
44
- * Initializes a new instance of the `PdfSolidBrush` class.
45
- * ```typescript
46
- * // create a new PDF document
47
- * let document : PdfDocument = new PdfDocument();
48
- * // add a pages to the document
49
- * let page1 : PdfPage = document.pages.add();
50
- * // set font
51
- * let font : PdfStandardFont = new PdfStandardFont(PdfFontFamily.Helvetica, 20);
52
- * // set brush
53
- * let blackBrush : PdfSolidBrush = new PdfSolidBrush(new PdfColor(0, 0, 0));
54
- * // draw the text
55
- * page1.graphics.drawString('Hello World', font, blackBrush, new PointF(10, 10));
56
- * // save the document
57
- * document.save('output.pdf');
58
- * // destroy the document
59
- * document.destroy();
60
- * ```
61
- * @param color color of the brush
62
- */
63
- public constructor(color : PdfColor) {
64
- super();
65
- this.pdfColor = color;
66
- }
67
- //Properties
68
- /**
69
- * Gets or sets the `color` of the brush.
70
- * @private
71
- */
72
- public get color() : PdfColor {
73
- return this.pdfColor;
74
- }
75
- public set color(value : PdfColor) {
76
- this.pdfColor = value;
77
- }
78
- //Implementation
79
- /**
80
- * `Monitors` the changes of the brush and modify PDF state respectively.
81
- * @private
82
- */
83
- public monitorChanges(brush : PdfBrush, streamWriter : PdfStreamWriter, getResources : GetResourceEventHandler,
84
- saveChanges : boolean, currentColorSpace : PdfColorSpace) : boolean {
85
- if (streamWriter == null) {
86
- throw new Error('ArgumentNullException:streamWriter');
87
- }
88
- let diff : boolean = false;
89
- if (brush == null) {
90
- diff = true;
91
- streamWriter.setColorAndSpace(this.pdfColor, currentColorSpace, false);
92
- return diff;
93
- } else {
94
- let sBrush : PdfSolidBrush = brush as PdfSolidBrush;
95
- diff = true;
96
- streamWriter.setColorAndSpace(this.pdfColor, currentColorSpace, false);
97
- return diff;
98
- }
99
- }
100
- /**
101
- * `Resets` the changes, which were made by the brush.
102
- * @private
103
- */
104
- public resetChanges(streamWriter : PdfStreamWriter) : void {
105
- streamWriter.setColorAndSpace(new PdfColor(0, 0, 0), PdfColorSpace.Rgb, false);
106
- }
107
- }
@@ -1,304 +0,0 @@
1
- /**
2
- * PdfTilingBrush.ts class for EJ2-PDF
3
- */
4
- import { PdfStreamWriter } from './../../input-output/pdf-stream-writer';
5
- import { GetResourceEventHandler } from './../pdf-graphics';
6
- import { PdfColorSpace } from './../enum';
7
- import { PdfBrush } from './pdf-brush';
8
- import { PointF, SizeF, RectangleF, Rectangle } from './../../drawing/pdf-drawing';
9
- import { IPdfWrapper } from '../../../interfaces/i-pdf-wrapper';
10
- import { PdfTransformationMatrix } from './../pdf-transformation-matrix';
11
- import { DictionaryProperties } from './../../input-output/pdf-dictionary-properties';
12
- import { PdfArray } from './../../primitives/pdf-array';
13
- import { PdfName } from '../../../../src/implementation/primitives/pdf-name';
14
- import { PdfNumber } from './../../primitives/pdf-number';
15
- import { PdfGraphics } from './../pdf-graphics';
16
- import { PdfResources} from './../pdf-resources';
17
- import { PdfStream } from './../../primitives/pdf-stream';
18
- import { PdfPage } from './../../pages/pdf-page';
19
- import { IPdfPrimitive } from './../../../interfaces/i-pdf-primitives';
20
- /**
21
- * `PdfTilingBrush` Implements a colored tiling brush.
22
- */
23
- export class PdfTilingBrush extends PdfBrush implements IPdfWrapper {
24
- //Fields
25
- /**
26
- * Local variable to store rectanble box.
27
- * @private
28
- */
29
- private mBox: Rectangle;
30
- /**
31
- * Local variable to store graphics.
32
- * @private
33
- */
34
- private mGraphics: PdfGraphics;
35
- /**
36
- * Local variable to store brush Stream.
37
- * @private
38
- */
39
- private brushStream: PdfStream;
40
- /**
41
- * Local variable to store brush Stream.
42
- * @private
43
- */
44
- private tempBrushStream: PdfStream;
45
- /**
46
- * Local variable to store resources.
47
- * @private
48
- */
49
- private mResources: PdfResources;
50
- /**
51
- * Local variable to store Stroking.
52
- * @private
53
- */
54
- private mStroking: boolean = false;
55
- /**
56
- * Local variable to store the page.
57
- * @private
58
- */
59
- private mPage: PdfPage;
60
- /**
61
- * Local variable to store the tile start location.
62
- * @private
63
- */
64
- private mLocation: PointF = new PointF(0, 0);
65
- /**
66
- * Local variable to store the Matrix.
67
- * @private
68
- */
69
- private mTransformationMatrix: PdfTransformationMatrix;
70
- /**
71
- * Local variable to store the dictionary properties.
72
- * @private
73
- */
74
- private mDictionaryProperties : DictionaryProperties = new DictionaryProperties();
75
- //Constructor
76
- /**
77
- * Initializes a new instance of the `PdfTilingBrush` class.
78
- * @public
79
- */
80
- public constructor(rectangle: Rectangle)
81
- /**
82
- * Initializes a new instance of the `PdfTilingBrush` class.
83
- * @public
84
- */
85
- public constructor(size: SizeF)
86
- /**
87
- * Initializes a new instance of the `PdfTilingBrush` class.
88
- * @public
89
- */
90
- public constructor(size: SizeF, page: PdfPage)
91
- /**
92
- * Initializes a new instance of the `PdfTilingBrush` class.
93
- * @public
94
- */
95
- public constructor(rectangle: Rectangle, page: PdfPage)
96
- /**
97
- * Initializes a new instance of the `PdfTilingBrush` class.
98
- * @public
99
- */
100
- public constructor(arg1?: Rectangle|SizeF, arg2?: PdfPage) {
101
- super();
102
- let rect : Rectangle = null;
103
- if (arg1 instanceof Rectangle) {
104
- rect = arg1;
105
- } else if (arg1 instanceof SizeF) {
106
- rect = new Rectangle(0, 0, arg1.width, arg1.height);
107
- }
108
- if (arg2 !== null && arg2 instanceof PdfPage) {
109
- this.mPage = arg2;
110
- }
111
- this.brushStream = new PdfStream();
112
- this.mResources = new PdfResources();
113
- this.brushStream.items.setValue(this.mDictionaryProperties.resources , this.mResources);
114
- this.setBox(rect);
115
- this.setObligatoryFields();
116
- if (arg2 !== null && arg2 instanceof PdfPage) {
117
- this.mPage = arg2;
118
- this.graphics.colorSpace = arg2.document.colorSpace;
119
- }
120
- }
121
- /**
122
- * Initializes a new instance of the `PdfTilingBrush` class.
123
- * @private
124
- * @param rectangle The size of the smallest brush cell.
125
- * @param page The Current Page Object.
126
- * @param location The Tile start location.
127
- * @param matrix The matrix.
128
- */
129
- private initialize(rectangle: Rectangle, page: PdfPage, location: PointF, matrix: PdfTransformationMatrix) : PdfTilingBrush {
130
- this.mPage = page;
131
- this.mLocation = location;
132
- this.mTransformationMatrix = matrix;
133
- this.tempBrushStream = this.brushStream;
134
- this.brushStream = new PdfStream();
135
- let tempResource : PdfResources = new PdfResources();
136
- this.brushStream.items.setValue(this.mDictionaryProperties.resources, tempResource);
137
- this.setBox(rectangle);
138
- this.setObligatoryFields();
139
- return this;
140
- }
141
- //Properties
142
- /**
143
- * Location representing the start position of the tiles.
144
- * @public
145
- */
146
- public get location(): PointF {
147
- return this.mLocation;
148
- }
149
- public set location(value: PointF) {
150
- this.mLocation = value;
151
- }
152
- /**
153
- * Sets the obligatory fields.
154
- * @private
155
- */
156
- private setObligatoryFields() : void {
157
- this.brushStream.items.setValue(this.mDictionaryProperties.patternType, new PdfNumber(1));
158
- // Tiling brush.
159
- this.brushStream.items.setValue(this.mDictionaryProperties.paintType, new PdfNumber(1));
160
- // Coloured.
161
- this.brushStream.items.setValue(this.mDictionaryProperties.tilingType , new PdfNumber(1));
162
- // Constant spacing.
163
- this.brushStream.items.setValue(this.mDictionaryProperties.xStep , new PdfNumber((this.mBox.right - this.mBox.left)));
164
- this.brushStream.items.setValue(this.mDictionaryProperties.yStep , new PdfNumber((this.mBox.bottom - this.mBox.top)));
165
- if ((this.mPage != null) && (this.mLocation != null)) {
166
- if ((this.mTransformationMatrix == null && typeof this.mTransformationMatrix === 'undefined')) {
167
- // Transform the tile origin to fit the location
168
- let tileTransform: number = (this.mPage.size.height % this.rectangle.size.height) - (this.mLocation.y);
169
- /* tslint:disable-next-line:max-line-length */
170
- this.brushStream.items.setValue(this.mDictionaryProperties.matrix, new PdfArray([1, 0, 0, 1, this.mLocation.x, tileTransform]));
171
- } else {
172
- let tileTransform: number = 0;
173
- // Transform the tile origin to fit the location
174
- let elements: number[] = this.mTransformationMatrix.matrix.elements;
175
- if ((this.mPage.size.height > this.rectangle.size.height)) {
176
- tileTransform = (this.mTransformationMatrix.matrix.offsetY
177
- - (this.mPage.size.height % this.rectangle.size.height));
178
- } else {
179
- tileTransform = ((this.mPage.size.height % this.rectangle.size.height) + this.mTransformationMatrix.matrix.offsetY);
180
- }
181
- this.brushStream.items.setValue(this.mDictionaryProperties.matrix, new PdfArray([
182
- elements[0], elements[1], elements[2], elements[3], elements[4], tileTransform]));
183
- }
184
- }
185
- }
186
- /**
187
- * Sets the BBox coordinates.
188
- * @private
189
- */
190
- private setBox(box: Rectangle) : void {
191
- this.mBox = box;
192
- let rect : RectangleF = new RectangleF(this.mBox.left, this.mBox.top, this.mBox.right, this.mBox.bottom);
193
- this.brushStream.items.setValue(this.mDictionaryProperties.bBox, PdfArray.fromRectangle(rect));
194
- }
195
- //Properties
196
- /**
197
- * Gets the boundary box of the smallest brush cell.
198
- * @public
199
- */
200
- public get rectangle(): Rectangle {
201
- return this.mBox;
202
- }
203
- /**
204
- * Gets the size of the smallest brush cell.
205
- * @public
206
- */
207
- public get size(): SizeF {
208
- return this.mBox.size;
209
- }
210
- /**
211
- * Gets Graphics context of the brush.
212
- */
213
- public get graphics(): PdfGraphics {
214
- if ((this.mGraphics == null && typeof this.mGraphics === 'undefined')) {
215
- let gr : GetResourceEventHandler = new GetResourceEventHandler(this);
216
- let g : PdfGraphics = new PdfGraphics(this.size, gr, this.brushStream);
217
- this.mGraphics = g;
218
- this.mResources = this.getResources();
219
- this.mGraphics.initializeCoordinates();
220
- }
221
- return this.mGraphics;
222
- }
223
- /**
224
- * Gets the resources and modifies the template dictionary.
225
- * @public
226
- */
227
- public getResources() : PdfResources {
228
- return this.mResources;
229
- }
230
- /**
231
- * Gets or sets a value indicating whether this PdfTilingBrush
232
- * is used for stroking operations.
233
- */
234
- public get stroking(): boolean {
235
- return this.mStroking;
236
- }
237
- public set stroking(value: boolean) {
238
- this.mStroking = value;
239
- }
240
- //PdfBrush methods
241
- /**
242
- * Creates a new copy of a brush.
243
- * @public
244
- */
245
- public clone(): PdfBrush {
246
- let brush: PdfTilingBrush = this.initialize(this.rectangle, this.mPage, this.location, this.mTransformationMatrix);
247
- if ((this.mTransformationMatrix != null) && (this.mTransformationMatrix.matrix != null)) {
248
- /* tslint:disable-next-line:max-line-length */
249
- brush.brushStream.items.setValue(this.mDictionaryProperties.matrix , new PdfArray(this.mTransformationMatrix.matrix.elements));
250
- }
251
- brush.brushStream.data = this.tempBrushStream.data;
252
- brush.mResources = new PdfResources(this.mResources);
253
- brush.brushStream.items.setValue(this.mDictionaryProperties.resources, brush.mResources);
254
- return brush;
255
- }
256
- /**
257
- * Monitors the changes of the brush and modify PDF state respectfully.
258
- * @param brush The brush
259
- * @param streamWriter The stream writer
260
- * @param getResources The get resources delegate.
261
- * @param saveChanges if set to true the changes should be saved anyway.
262
- * @param currentColorSpace The current color space.
263
- */
264
- /* tslint:disable-next-line:max-line-length */
265
- public monitorChanges(brush: PdfBrush, streamWriter: PdfStreamWriter, getResources: GetResourceEventHandler, saveChanges: boolean, currentColorSpace: PdfColorSpace): boolean {
266
- let diff: boolean = false;
267
- if (brush !== this) {
268
- // Set the Pattern colour space.
269
- streamWriter.setColorSpace('Pattern', this.mStroking);
270
- // Set the pattern for non-stroking operations.
271
- let resources1 : PdfResources = getResources.getResources();
272
- let name1 : PdfName = resources1.getName(this);
273
- streamWriter.setColourWithPattern(null, name1, this.mStroking);
274
- diff = true;
275
- } else if (brush instanceof PdfTilingBrush) {
276
- // Set the /Pattern colour space.
277
- streamWriter.setColorSpace('Pattern', this.mStroking);
278
- // Set the pattern for non-stroking operations.
279
- let resources : PdfResources = getResources.getResources();
280
- let name: PdfName = resources.getName(this);
281
- streamWriter.setColourWithPattern(null, name, this.mStroking);
282
- diff = true;
283
- }
284
- return diff;
285
- }
286
- /**
287
- * Resets the changes, which were made by the brush.
288
- * In other words resets the state to the initial one.
289
- * @param streamWriter The stream writer.
290
- */
291
- public resetChanges(streamWriter: PdfStreamWriter) : void {
292
- // We shouldn't do anything to reset changes.
293
- // All changes will be reset automatically by setting a new colour space.
294
- }
295
- /* tslint:enable */
296
- // IPdfWrapper Members
297
- /**
298
- * Gets the `element`.
299
- * @public
300
- */
301
- public get element() : IPdfPrimitive {
302
- return this.brushStream;
303
- }
304
- }
@@ -1,31 +0,0 @@
1
- /**
2
- * `constants.ts` class for EJ2-PDF
3
- * @private
4
- */
5
- export class ProcedureSets {
6
- /**
7
- * Specifies the `PDF` procedure set.
8
- * @private
9
- */
10
- public readonly pdf : string = 'PDF';
11
- /**
12
- * Specifies the `Text` procedure set.
13
- * @private
14
- */
15
- public readonly text : string = 'Text';
16
- /**
17
- * Specifies the `ImageB` procedure set.
18
- * @private
19
- */
20
- public readonly imageB : string = 'ImageB';
21
- /**
22
- * Specifies the `ImageC` procedure set.
23
- * @private
24
- */
25
- public readonly imageC : string = 'ImageC';
26
- /**
27
- * Specifies the `ImageI` procedure set.
28
- * @private
29
- */
30
- public readonly imageI : string = 'ImageI';
31
- }