@syncfusion/ej2-pdf-export 20.3.47 → 20.4.38
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.json +16 -1
- package/dist/ej2-pdf-export.min.js +1 -1
- package/dist/ej2-pdf-export.umd.min.js +1 -1
- package/dist/global/ej2-pdf-export.min.js +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +7 -8
- package/dist/ts/implementation/actions/action.ts +0 -76
- package/dist/ts/implementation/actions/uri-action.ts +0 -52
- package/dist/ts/implementation/annotations/action-link-annotation.ts +0 -43
- package/dist/ts/implementation/annotations/annotation-collection.ts +0 -159
- package/dist/ts/implementation/annotations/annotation.ts +0 -241
- package/dist/ts/implementation/annotations/document-link-annotation.ts +0 -118
- package/dist/ts/implementation/annotations/link-annotation.ts +0 -32
- package/dist/ts/implementation/annotations/pdf-text-web-link.ts +0 -265
- package/dist/ts/implementation/annotations/uri-annotation.ts +0 -86
- package/dist/ts/implementation/collections/dictionary.ts +0 -150
- package/dist/ts/implementation/collections/object-object-pair/dictionary.ts +0 -125
- package/dist/ts/implementation/collections/utils.ts +0 -38
- package/dist/ts/implementation/document/automatic-fields/automatic-field-info-collection.ts +0 -39
- package/dist/ts/implementation/document/automatic-fields/automatic-field-info.ts +0 -108
- package/dist/ts/implementation/document/automatic-fields/automatic-field.ts +0 -127
- package/dist/ts/implementation/document/automatic-fields/composite-field.ts +0 -76
- package/dist/ts/implementation/document/automatic-fields/multiple-value-field.ts +0 -37
- package/dist/ts/implementation/document/automatic-fields/page-count-field.ts +0 -75
- package/dist/ts/implementation/document/automatic-fields/pdf-numbers-convertor.ts +0 -157
- package/dist/ts/implementation/document/automatic-fields/pdf-page-number-field.ts +0 -82
- package/dist/ts/implementation/document/automatic-fields/pdf-template-value-pair.ts +0 -60
- package/dist/ts/implementation/document/automatic-fields/single-value-field.ts +0 -48
- package/dist/ts/implementation/document/pdf-catalog.ts +0 -52
- package/dist/ts/implementation/document/pdf-document-base.ts +0 -166
- package/dist/ts/implementation/document/pdf-document-template.ts +0 -310
- package/dist/ts/implementation/document/pdf-document.ts +0 -342
- package/dist/ts/implementation/drawing/pdf-drawing.ts +0 -218
- package/dist/ts/implementation/general/enum.ts +0 -21
- package/dist/ts/implementation/general/functions/pdf-function.ts +0 -66
- package/dist/ts/implementation/general/functions/pdf-sampled-function.ts +0 -62
- package/dist/ts/implementation/general/pdf-cache-collection.ts +0 -97
- package/dist/ts/implementation/general/pdf-collection.ts +0 -41
- package/dist/ts/implementation/general/pdf-destination.ts +0 -170
- package/dist/ts/implementation/graphics/brushes/enum.ts +0 -237
- package/dist/ts/implementation/graphics/brushes/pdf-blend.ts +0 -294
- package/dist/ts/implementation/graphics/brushes/pdf-brush.ts +0 -68
- package/dist/ts/implementation/graphics/brushes/pdf-brushes.ts +0 -2438
- package/dist/ts/implementation/graphics/brushes/pdf-color-blend.ts +0 -295
- package/dist/ts/implementation/graphics/brushes/pdf-gradient-brush.ts +0 -311
- package/dist/ts/implementation/graphics/brushes/pdf-linear-gradient-brush.ts +0 -406
- package/dist/ts/implementation/graphics/brushes/pdf-radial-gradient-brush.ts +0 -290
- package/dist/ts/implementation/graphics/brushes/pdf-solid-brush.ts +0 -107
- package/dist/ts/implementation/graphics/brushes/pdf-tiling-brush.ts +0 -304
- package/dist/ts/implementation/graphics/constants.ts +0 -31
- package/dist/ts/implementation/graphics/enum.ts +0 -413
- package/dist/ts/implementation/graphics/figures/arc.ts +0 -133
- package/dist/ts/implementation/graphics/figures/base/draw-element.ts +0 -59
- package/dist/ts/implementation/graphics/figures/base/element-layouter.ts +0 -260
- package/dist/ts/implementation/graphics/figures/base/fill-element.ts +0 -72
- package/dist/ts/implementation/graphics/figures/base/graphics-element.ts +0 -34
- package/dist/ts/implementation/graphics/figures/base/pdf-shape-element.ts +0 -69
- package/dist/ts/implementation/graphics/figures/base/shape-layouter.ts +0 -276
- package/dist/ts/implementation/graphics/figures/base/text-layouter.ts +0 -205
- package/dist/ts/implementation/graphics/figures/ellipse-part.ts +0 -76
- package/dist/ts/implementation/graphics/figures/enum.ts +0 -80
- package/dist/ts/implementation/graphics/figures/layout-element.ts +0 -132
- package/dist/ts/implementation/graphics/figures/path.ts +0 -646
- package/dist/ts/implementation/graphics/figures/pdf-template.ts +0 -205
- package/dist/ts/implementation/graphics/figures/rectangle-area.ts +0 -108
- package/dist/ts/implementation/graphics/figures/text-element.ts +0 -445
- package/dist/ts/implementation/graphics/fonts/enum.ts +0 -385
- package/dist/ts/implementation/graphics/fonts/pdf-font-metrics.ts +0 -248
- package/dist/ts/implementation/graphics/fonts/pdf-font.ts +0 -316
- package/dist/ts/implementation/graphics/fonts/pdf-standard-font-metrics-factory.ts +0 -606
- package/dist/ts/implementation/graphics/fonts/pdf-standard-font.ts +0 -243
- package/dist/ts/implementation/graphics/fonts/pdf-string-format.ts +0 -474
- package/dist/ts/implementation/graphics/fonts/pdf-true-type-font.ts +0 -165
- package/dist/ts/implementation/graphics/fonts/rtl/rtl-bidirectional.ts +0 -958
- package/dist/ts/implementation/graphics/fonts/rtl/rtl-text-shape.ts +0 -374
- package/dist/ts/implementation/graphics/fonts/rtl-renderer.ts +0 -255
- package/dist/ts/implementation/graphics/fonts/string-layouter.ts +0 -617
- package/dist/ts/implementation/graphics/fonts/string-tokenizer.ts +0 -275
- package/dist/ts/implementation/graphics/fonts/ttf-OS2-Table.ts +0 -206
- package/dist/ts/implementation/graphics/fonts/ttf-apple-cmap-sub-table.ts +0 -18
- package/dist/ts/implementation/graphics/fonts/ttf-cmap-sub-table.ts +0 -18
- package/dist/ts/implementation/graphics/fonts/ttf-cmap-table.ts +0 -14
- package/dist/ts/implementation/graphics/fonts/ttf-glyph-header.ts +0 -26
- package/dist/ts/implementation/graphics/fonts/ttf-glyph-info.ts +0 -35
- package/dist/ts/implementation/graphics/fonts/ttf-head-table.ts +0 -94
- package/dist/ts/implementation/graphics/fonts/ttf-horizontal-header-table.ts +0 -56
- package/dist/ts/implementation/graphics/fonts/ttf-loca-table.ts +0 -10
- package/dist/ts/implementation/graphics/fonts/ttf-long-hor-metric.ts +0 -14
- package/dist/ts/implementation/graphics/fonts/ttf-metrics.ts +0 -106
- package/dist/ts/implementation/graphics/fonts/ttf-microsoft-cmap-sub-table.ts +0 -58
- package/dist/ts/implementation/graphics/fonts/ttf-name-record.ts +0 -33
- package/dist/ts/implementation/graphics/fonts/ttf-name-table.ts +0 -22
- package/dist/ts/implementation/graphics/fonts/ttf-post-table.ts +0 -42
- package/dist/ts/implementation/graphics/fonts/ttf-reader.ts +0 -1254
- package/dist/ts/implementation/graphics/fonts/ttf-table-info.ts +0 -26
- package/dist/ts/implementation/graphics/fonts/ttf-trimmed-cmap-sub-table.ts +0 -26
- package/dist/ts/implementation/graphics/fonts/unicode-true-type-font.ts +0 -577
- package/dist/ts/implementation/graphics/images/byte-array.ts +0 -137
- package/dist/ts/implementation/graphics/images/image-decoder.ts +0 -437
- package/dist/ts/implementation/graphics/images/pdf-bitmap.ts +0 -110
- package/dist/ts/implementation/graphics/images/pdf-image.ts +0 -132
- package/dist/ts/implementation/graphics/pdf-color.ts +0 -478
- package/dist/ts/implementation/graphics/pdf-graphics.ts +0 -2424
- package/dist/ts/implementation/graphics/pdf-margins.ts +0 -124
- package/dist/ts/implementation/graphics/pdf-pen.ts +0 -370
- package/dist/ts/implementation/graphics/pdf-resources.ts +0 -300
- package/dist/ts/implementation/graphics/pdf-transformation-matrix.ts +0 -246
- package/dist/ts/implementation/graphics/pdf-transparency.ts +0 -93
- package/dist/ts/implementation/graphics/unit-convertor.ts +0 -96
- package/dist/ts/implementation/input-output/big-endian-writer.ts +0 -121
- package/dist/ts/implementation/input-output/cross-table.ts +0 -21
- package/dist/ts/implementation/input-output/enum.ts +0 -16
- package/dist/ts/implementation/input-output/pdf-cross-table.ts +0 -524
- package/dist/ts/implementation/input-output/pdf-dictionary-properties.ts +0 -515
- package/dist/ts/implementation/input-output/pdf-main-object-collection.ts +0 -194
- package/dist/ts/implementation/input-output/pdf-operators.ts +0 -363
- package/dist/ts/implementation/input-output/pdf-stream-writer.ts +0 -681
- package/dist/ts/implementation/input-output/pdf-writer.ts +0 -88
- package/dist/ts/implementation/pages/enum.ts +0 -201
- package/dist/ts/implementation/pages/page-added-event-arguments.ts +0 -39
- package/dist/ts/implementation/pages/pdf-document-page-collection.ts +0 -180
- package/dist/ts/implementation/pages/pdf-page-base.ts +0 -181
- package/dist/ts/implementation/pages/pdf-page-layer-collection.ts +0 -348
- package/dist/ts/implementation/pages/pdf-page-layer.ts +0 -271
- package/dist/ts/implementation/pages/pdf-page-settings.ts +0 -192
- package/dist/ts/implementation/pages/pdf-page-size.ts +0 -162
- package/dist/ts/implementation/pages/pdf-page-template-element.ts +0 -659
- package/dist/ts/implementation/pages/pdf-page.ts +0 -235
- package/dist/ts/implementation/pages/pdf-section-collection.ts +0 -187
- package/dist/ts/implementation/pages/pdf-section-page-collection.ts +0 -61
- package/dist/ts/implementation/pages/pdf-section-templates.ts +0 -96
- package/dist/ts/implementation/pages/pdf-section.ts +0 -644
- package/dist/ts/implementation/primitives/pdf-array.ts +0 -386
- package/dist/ts/implementation/primitives/pdf-boolean.ts +0 -119
- package/dist/ts/implementation/primitives/pdf-dictionary.ts +0 -513
- package/dist/ts/implementation/primitives/pdf-name.ts +0 -218
- package/dist/ts/implementation/primitives/pdf-number.ts +0 -165
- package/dist/ts/implementation/primitives/pdf-reference.ts +0 -430
- package/dist/ts/implementation/primitives/pdf-stream.ts +0 -336
- package/dist/ts/implementation/primitives/pdf-string.ts +0 -397
- package/dist/ts/implementation/structured-elements/grid/layout/grid-layouter.ts +0 -2027
- package/dist/ts/implementation/structured-elements/grid/pdf-grid-cell.ts +0 -1189
- package/dist/ts/implementation/structured-elements/grid/pdf-grid-column.ts +0 -206
- package/dist/ts/implementation/structured-elements/grid/pdf-grid-row.ts +0 -470
- package/dist/ts/implementation/structured-elements/grid/pdf-grid.ts +0 -853
- package/dist/ts/implementation/structured-elements/grid/styles/pdf-borders.ts +0 -240
- package/dist/ts/implementation/structured-elements/grid/styles/style.ts +0 -424
- package/dist/ts/implementation/structured-elements/tables/light-tables/enum.ts +0 -16
- package/dist/ts/interfaces/i-pdf-cache.ts +0 -23
- package/dist/ts/interfaces/i-pdf-changable.ts +0 -17
- package/dist/ts/interfaces/i-pdf-clonable.ts +0 -12
- package/dist/ts/interfaces/i-pdf-primitives.ts +0 -45
- package/dist/ts/interfaces/i-pdf-true-type-font.ts +0 -48
- package/dist/ts/interfaces/i-pdf-wrapper.ts +0 -13
- package/dist/ts/interfaces/i-pdf-writer.ts +0 -29
|
@@ -1,166 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* PdfDocumentBase.ts class for EJ2-PDF
|
|
3
|
-
*/
|
|
4
|
-
import { PdfMainObjectCollection } from './../input-output/pdf-main-object-collection';
|
|
5
|
-
import { PdfCrossTable } from './../input-output/pdf-cross-table';
|
|
6
|
-
import { PdfCatalog } from './pdf-catalog';
|
|
7
|
-
import { StreamWriter } from '@syncfusion/ej2-file-utils';
|
|
8
|
-
import { Encoding } from '@syncfusion/ej2-file-utils';
|
|
9
|
-
import { PdfDocument } from './pdf-document';
|
|
10
|
-
import { PdfReference } from './../primitives/pdf-reference';
|
|
11
|
-
/**
|
|
12
|
-
* `PdfDocumentBase` class represent common properties of PdfDocument classes.
|
|
13
|
-
* @private
|
|
14
|
-
*/
|
|
15
|
-
export class PdfDocumentBase {
|
|
16
|
-
//Fields
|
|
17
|
-
/**
|
|
18
|
-
* Collection of the main `objects`.
|
|
19
|
-
* @private
|
|
20
|
-
*/
|
|
21
|
-
private objects : PdfMainObjectCollection;
|
|
22
|
-
/**
|
|
23
|
-
* The `cross table`.
|
|
24
|
-
* @private
|
|
25
|
-
*/
|
|
26
|
-
private pdfCrossTable : PdfCrossTable;
|
|
27
|
-
/**
|
|
28
|
-
* `Object` that is saving currently.
|
|
29
|
-
* @private
|
|
30
|
-
*/
|
|
31
|
-
private currentSavingObject : PdfReference;
|
|
32
|
-
/**
|
|
33
|
-
* Document `catlog`.
|
|
34
|
-
* @private
|
|
35
|
-
*/
|
|
36
|
-
private pdfCatalog : PdfCatalog;
|
|
37
|
-
/**
|
|
38
|
-
* If the stream is copied, then it specifies true.
|
|
39
|
-
* @private
|
|
40
|
-
*/
|
|
41
|
-
public isStreamCopied : boolean = false;
|
|
42
|
-
/**
|
|
43
|
-
* Instance of parent `document`.
|
|
44
|
-
* @private
|
|
45
|
-
*/
|
|
46
|
-
public document : PdfDocument;
|
|
47
|
-
//constructor
|
|
48
|
-
/**
|
|
49
|
-
* Initializes a new instance of the `PdfDocumentBase` class.
|
|
50
|
-
* @private
|
|
51
|
-
*/
|
|
52
|
-
public constructor()
|
|
53
|
-
/**
|
|
54
|
-
* Initializes a new instance of the `PdfDocumentBase` class with instance of PdfDocument as argument.
|
|
55
|
-
* @private
|
|
56
|
-
*/
|
|
57
|
-
public constructor(document : PdfDocument)
|
|
58
|
-
public constructor(document? : PdfDocument) {
|
|
59
|
-
if (document instanceof PdfDocument) {
|
|
60
|
-
this.document = document;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
//Prpperties
|
|
64
|
-
/**
|
|
65
|
-
* Gets the `PDF objects` collection, which stores all objects and references to it..
|
|
66
|
-
* @private
|
|
67
|
-
*/
|
|
68
|
-
public get pdfObjects() : PdfMainObjectCollection {
|
|
69
|
-
return this.objects;
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Gets the `cross-reference` table.
|
|
73
|
-
* @private
|
|
74
|
-
*/
|
|
75
|
-
public get crossTable() : PdfCrossTable {
|
|
76
|
-
return this.pdfCrossTable;
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* Gets or sets the current saving `object number`.
|
|
80
|
-
* @private
|
|
81
|
-
*/
|
|
82
|
-
public get currentSavingObj() : PdfReference {
|
|
83
|
-
return this.currentSavingObject;
|
|
84
|
-
}
|
|
85
|
-
public set currentSavingObj(value : PdfReference) {
|
|
86
|
-
this.currentSavingObject = value;
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* Gets the PDF document `catalog`.
|
|
90
|
-
* @private
|
|
91
|
-
*/
|
|
92
|
-
public get catalog() : PdfCatalog {
|
|
93
|
-
return this.pdfCatalog;
|
|
94
|
-
}
|
|
95
|
-
public set catalog(value : PdfCatalog) {
|
|
96
|
-
this.pdfCatalog = value;
|
|
97
|
-
}
|
|
98
|
-
//Public methods
|
|
99
|
-
/**
|
|
100
|
-
* Sets the `main object collection`.
|
|
101
|
-
* @private
|
|
102
|
-
*/
|
|
103
|
-
public setMainObjectCollection(mainObjectCollection : PdfMainObjectCollection) : void {
|
|
104
|
-
this.objects = mainObjectCollection;
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Sets the `cross table`.
|
|
108
|
-
* @private
|
|
109
|
-
*/
|
|
110
|
-
public setCrossTable(cTable : PdfCrossTable) : void {
|
|
111
|
-
this.pdfCrossTable = cTable;
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Sets the `catalog`.
|
|
115
|
-
* @private
|
|
116
|
-
*/
|
|
117
|
-
public setCatalog(catalog : PdfCatalog) : void {
|
|
118
|
-
this.pdfCatalog = catalog;
|
|
119
|
-
}
|
|
120
|
-
/**
|
|
121
|
-
* `Saves` the document to the specified filename.
|
|
122
|
-
* @private
|
|
123
|
-
*/
|
|
124
|
-
public save(): Promise<{blobData: Blob}>
|
|
125
|
-
/**
|
|
126
|
-
* `Saves` the document to the specified filename.
|
|
127
|
-
* @public
|
|
128
|
-
* ```typescript
|
|
129
|
-
* // create a new PDF document
|
|
130
|
-
* let document : PdfDocument = new PdfDocument();
|
|
131
|
-
* // add a pages to the document
|
|
132
|
-
* let page1 : PdfPage = document.pages.add();
|
|
133
|
-
* //
|
|
134
|
-
* // save the document
|
|
135
|
-
* document.save('output.pdf');
|
|
136
|
-
* //
|
|
137
|
-
* // destroy the document
|
|
138
|
-
* document.destroy();
|
|
139
|
-
* ```
|
|
140
|
-
* @param filename Specifies the file name to save the output pdf document.
|
|
141
|
-
*/
|
|
142
|
-
public save(filename : string) : void
|
|
143
|
-
public save(filename ?: string) : Promise<{blobData: Blob}> | void {
|
|
144
|
-
let encoding: Encoding = new Encoding(true);
|
|
145
|
-
let SW : StreamWriter = new StreamWriter(encoding);
|
|
146
|
-
if (typeof filename === 'undefined') {
|
|
147
|
-
let encoding: Encoding = new Encoding(true);
|
|
148
|
-
let SW: StreamWriter = new StreamWriter(encoding);
|
|
149
|
-
return new Promise((resolve: Function, reject: Function) => {
|
|
150
|
-
/* tslint:disable-next-line:no-any */
|
|
151
|
-
let obj: any = {};
|
|
152
|
-
obj.blobData = new Blob([this.document.docSave(SW, true)], {type : 'application/pdf'});
|
|
153
|
-
resolve(obj);
|
|
154
|
-
});
|
|
155
|
-
} else {
|
|
156
|
-
this.document.docSave(SW, filename, true);
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
/**
|
|
160
|
-
* `Clone` of parent object - PdfDocument.
|
|
161
|
-
* @private
|
|
162
|
-
*/
|
|
163
|
-
public clone() : PdfDocument {
|
|
164
|
-
return this.document;
|
|
165
|
-
}
|
|
166
|
-
}
|
|
@@ -1,310 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* PdfDocumentTemplate.ts class for EJ2-PDF
|
|
3
|
-
*/
|
|
4
|
-
import { PdfPage } from './../pages/pdf-page';
|
|
5
|
-
import { TemplateType } from './../pages/enum';
|
|
6
|
-
import { PdfDocumentPageCollection } from './../pages/pdf-document-page-collection';
|
|
7
|
-
import { PdfPageTemplateElement } from './../pages/pdf-page-template-element';
|
|
8
|
-
// import { PdfStampCollection } from `./../Pages/PdfStampCollection`;
|
|
9
|
-
/**
|
|
10
|
-
* `PdfDocumentTemplate` class encapsulates a page template for all the pages in the document.
|
|
11
|
-
* @private
|
|
12
|
-
*/
|
|
13
|
-
export class PdfDocumentTemplate {
|
|
14
|
-
// Fields
|
|
15
|
-
/**
|
|
16
|
-
* `Left` page template object.
|
|
17
|
-
* @private
|
|
18
|
-
*/
|
|
19
|
-
private leftTemplate : PdfPageTemplateElement;
|
|
20
|
-
/**
|
|
21
|
-
* `Top` page template object.
|
|
22
|
-
* @private
|
|
23
|
-
*/
|
|
24
|
-
private topTemplate : PdfPageTemplateElement;
|
|
25
|
-
/**
|
|
26
|
-
* `Right` page template object.
|
|
27
|
-
* @private
|
|
28
|
-
*/
|
|
29
|
-
private rightTemplate : PdfPageTemplateElement;
|
|
30
|
-
/**
|
|
31
|
-
* `Bottom` page template object.
|
|
32
|
-
* @private
|
|
33
|
-
*/
|
|
34
|
-
private bottomTemplate : PdfPageTemplateElement;
|
|
35
|
-
/**
|
|
36
|
-
* `EvenLeft` page template object.
|
|
37
|
-
* @private
|
|
38
|
-
*/
|
|
39
|
-
private evenLeft : PdfPageTemplateElement;
|
|
40
|
-
/**
|
|
41
|
-
* `EvenTop` page template object.
|
|
42
|
-
* @private
|
|
43
|
-
*/
|
|
44
|
-
private evenTop : PdfPageTemplateElement;
|
|
45
|
-
/**
|
|
46
|
-
* `EvenRight` page template object.
|
|
47
|
-
* @private
|
|
48
|
-
*/
|
|
49
|
-
private evenRight : PdfPageTemplateElement;
|
|
50
|
-
/**
|
|
51
|
-
* `EventBottom` page template object.
|
|
52
|
-
* @private
|
|
53
|
-
*/
|
|
54
|
-
private evenBottom : PdfPageTemplateElement;
|
|
55
|
-
/**
|
|
56
|
-
* `OddLeft` page template object.
|
|
57
|
-
* @private
|
|
58
|
-
*/
|
|
59
|
-
private oddLeft : PdfPageTemplateElement;
|
|
60
|
-
/**
|
|
61
|
-
* `OddTop` page template object.
|
|
62
|
-
* @private
|
|
63
|
-
*/
|
|
64
|
-
private oddTop : PdfPageTemplateElement;
|
|
65
|
-
/**
|
|
66
|
-
* `OddRight` page template object.
|
|
67
|
-
* @private
|
|
68
|
-
*/
|
|
69
|
-
private oddRight : PdfPageTemplateElement;
|
|
70
|
-
/**
|
|
71
|
-
* `OddBottom` page template object.
|
|
72
|
-
* @private
|
|
73
|
-
*/
|
|
74
|
-
private oddBottom : PdfPageTemplateElement;
|
|
75
|
-
// private m_stamps : PdfStampCollection;
|
|
76
|
-
// Properties
|
|
77
|
-
/**
|
|
78
|
-
* `Left` page template object.
|
|
79
|
-
* @public
|
|
80
|
-
*/
|
|
81
|
-
public get left() : PdfPageTemplateElement {
|
|
82
|
-
return this.leftTemplate;
|
|
83
|
-
}
|
|
84
|
-
public set left(value : PdfPageTemplateElement) {
|
|
85
|
-
this.leftTemplate = this.checkElement(value, TemplateType.Left);
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* `Top` page template object.
|
|
89
|
-
* @public
|
|
90
|
-
*/
|
|
91
|
-
public get top() : PdfPageTemplateElement {
|
|
92
|
-
return this.topTemplate;
|
|
93
|
-
}
|
|
94
|
-
public set top(value : PdfPageTemplateElement) {
|
|
95
|
-
this.topTemplate = this.checkElement(value, TemplateType.Top);
|
|
96
|
-
}
|
|
97
|
-
/**
|
|
98
|
-
* `Right` page template object.
|
|
99
|
-
* @public
|
|
100
|
-
*/
|
|
101
|
-
public get right() : PdfPageTemplateElement {
|
|
102
|
-
return this.rightTemplate;
|
|
103
|
-
}
|
|
104
|
-
public set right(value : PdfPageTemplateElement) {
|
|
105
|
-
this.rightTemplate = this.checkElement(value, TemplateType.Right);
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* `Bottom` page template object.
|
|
109
|
-
* @public
|
|
110
|
-
*/
|
|
111
|
-
public get bottom() : PdfPageTemplateElement {
|
|
112
|
-
return this.bottomTemplate;
|
|
113
|
-
}
|
|
114
|
-
public set bottom(value : PdfPageTemplateElement) {
|
|
115
|
-
this.bottomTemplate = this.checkElement(value, TemplateType.Bottom);
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* `EvenLeft` page template object.
|
|
119
|
-
* @public
|
|
120
|
-
*/
|
|
121
|
-
public get EvenLeft() : PdfPageTemplateElement {
|
|
122
|
-
return this.evenLeft;
|
|
123
|
-
}
|
|
124
|
-
public set EvenLeft(value : PdfPageTemplateElement) {
|
|
125
|
-
this.evenLeft = this.checkElement(value, TemplateType.Left);
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* `EvenTop` page template object.
|
|
129
|
-
* @public
|
|
130
|
-
*/
|
|
131
|
-
public get EvenTop() : PdfPageTemplateElement {
|
|
132
|
-
return this.evenTop;
|
|
133
|
-
}
|
|
134
|
-
public set EvenTop(value : PdfPageTemplateElement) {
|
|
135
|
-
this.evenTop = this.checkElement(value, TemplateType.Top);
|
|
136
|
-
}
|
|
137
|
-
/**
|
|
138
|
-
* `EvenRight` page template object.
|
|
139
|
-
* @public
|
|
140
|
-
*/
|
|
141
|
-
public get EvenRight() : PdfPageTemplateElement {
|
|
142
|
-
return this.evenRight;
|
|
143
|
-
}
|
|
144
|
-
public set EvenRight(value : PdfPageTemplateElement) {
|
|
145
|
-
this.evenRight = this.checkElement(value, TemplateType.Right);
|
|
146
|
-
}
|
|
147
|
-
/**
|
|
148
|
-
* `EvenBottom` page template object.
|
|
149
|
-
* @public
|
|
150
|
-
*/
|
|
151
|
-
public get EvenBottom() : PdfPageTemplateElement {
|
|
152
|
-
return this.evenBottom;
|
|
153
|
-
}
|
|
154
|
-
public set EvenBottom(value : PdfPageTemplateElement) {
|
|
155
|
-
this.evenBottom = this.checkElement(value, TemplateType.Bottom);
|
|
156
|
-
}
|
|
157
|
-
/**
|
|
158
|
-
* `OddLeft` page template object.
|
|
159
|
-
* @public
|
|
160
|
-
*/
|
|
161
|
-
public get OddLeft() : PdfPageTemplateElement {
|
|
162
|
-
return this.oddLeft;
|
|
163
|
-
}
|
|
164
|
-
public set OddLeft(value : PdfPageTemplateElement) {
|
|
165
|
-
this.oddLeft = this.checkElement(value, TemplateType.Left);
|
|
166
|
-
}
|
|
167
|
-
/**
|
|
168
|
-
* `OddTop` page template object.
|
|
169
|
-
* @public
|
|
170
|
-
*/
|
|
171
|
-
public get OddTop() : PdfPageTemplateElement {
|
|
172
|
-
return this.oddTop;
|
|
173
|
-
}
|
|
174
|
-
public set OddTop(value : PdfPageTemplateElement) {
|
|
175
|
-
this.oddTop = this.checkElement(value, TemplateType.Top);
|
|
176
|
-
}
|
|
177
|
-
/**
|
|
178
|
-
* `OddRight` page template object.
|
|
179
|
-
* @public
|
|
180
|
-
*/
|
|
181
|
-
public get OddRight() : PdfPageTemplateElement {
|
|
182
|
-
return this.oddRight;
|
|
183
|
-
}
|
|
184
|
-
public set OddRight(value : PdfPageTemplateElement) {
|
|
185
|
-
this.oddRight = this.checkElement(value, TemplateType.Right);
|
|
186
|
-
}
|
|
187
|
-
/**
|
|
188
|
-
* `OddBottom` page template object.
|
|
189
|
-
* @public
|
|
190
|
-
*/
|
|
191
|
-
public get OddBottom() : PdfPageTemplateElement {
|
|
192
|
-
return this.oddBottom;
|
|
193
|
-
}
|
|
194
|
-
public set OddBottom(value : PdfPageTemplateElement) {
|
|
195
|
-
this.oddBottom = this.checkElement(value, TemplateType.Bottom);
|
|
196
|
-
}
|
|
197
|
-
// Constructors
|
|
198
|
-
/**
|
|
199
|
-
* Initializes a new instance of the `PdfDocumentTemplate` class.
|
|
200
|
-
* @public
|
|
201
|
-
*/
|
|
202
|
-
public constructor() {
|
|
203
|
-
//
|
|
204
|
-
}
|
|
205
|
-
// Implementation
|
|
206
|
-
/**
|
|
207
|
-
* Returns `left` template.
|
|
208
|
-
* @public
|
|
209
|
-
*/
|
|
210
|
-
public getLeft(page : PdfPage) : PdfPageTemplateElement {
|
|
211
|
-
if (page == null) {
|
|
212
|
-
throw new Error('ArgumentNullException:page');
|
|
213
|
-
}
|
|
214
|
-
let template : PdfPageTemplateElement = null;
|
|
215
|
-
// if (page.Document.Pages != null) {
|
|
216
|
-
let even : boolean = this.isEven(page);
|
|
217
|
-
if (even) {
|
|
218
|
-
template = (this.EvenLeft != null) ? this.EvenLeft : this.left;
|
|
219
|
-
} else {
|
|
220
|
-
template = (this.OddLeft != null) ? this.OddLeft : this.left;
|
|
221
|
-
}
|
|
222
|
-
// }
|
|
223
|
-
return template;
|
|
224
|
-
}
|
|
225
|
-
/**
|
|
226
|
-
* Returns `top` template.
|
|
227
|
-
* @public
|
|
228
|
-
*/
|
|
229
|
-
public getTop(page : PdfPage) : PdfPageTemplateElement {
|
|
230
|
-
if (page == null) {
|
|
231
|
-
throw new Error('ArgumentNullException:page');
|
|
232
|
-
}
|
|
233
|
-
let template : PdfPageTemplateElement = null;
|
|
234
|
-
// if (page.Document.Pages != null) {
|
|
235
|
-
let even : boolean = this.isEven(page);
|
|
236
|
-
if (even) {
|
|
237
|
-
template = (this.EvenTop != null) ? this.EvenTop : this.top;
|
|
238
|
-
} else {
|
|
239
|
-
template = (this.OddTop != null) ? this.OddTop : this.top;
|
|
240
|
-
}
|
|
241
|
-
// }
|
|
242
|
-
return template;
|
|
243
|
-
}
|
|
244
|
-
/**
|
|
245
|
-
* Returns `right` template.
|
|
246
|
-
* @public
|
|
247
|
-
*/
|
|
248
|
-
public getRight(page : PdfPage) : PdfPageTemplateElement {
|
|
249
|
-
if (page == null) {
|
|
250
|
-
throw new Error('ArgumentNullException:page');
|
|
251
|
-
}
|
|
252
|
-
let template : PdfPageTemplateElement = null;
|
|
253
|
-
// if (page.Document.Pages != null) {
|
|
254
|
-
let even : boolean = this.isEven(page);
|
|
255
|
-
if (even) {
|
|
256
|
-
template = (this.EvenRight != null) ? this.EvenRight : this.right;
|
|
257
|
-
} else {
|
|
258
|
-
template = (this.OddRight != null) ? this.OddRight : this.right;
|
|
259
|
-
}
|
|
260
|
-
// }
|
|
261
|
-
return template;
|
|
262
|
-
}
|
|
263
|
-
/**
|
|
264
|
-
* Returns `bottom` template.
|
|
265
|
-
* @public
|
|
266
|
-
*/
|
|
267
|
-
public getBottom(page : PdfPage) : PdfPageTemplateElement {
|
|
268
|
-
if (page == null) {
|
|
269
|
-
throw new Error('ArgumentNullException:page');
|
|
270
|
-
}
|
|
271
|
-
let template : PdfPageTemplateElement = null;
|
|
272
|
-
// if (page.Document.Pages != null) {
|
|
273
|
-
let even : boolean = this.isEven(page);
|
|
274
|
-
if (even) {
|
|
275
|
-
template = (this.EvenBottom != null) ? this.EvenBottom : this.bottom;
|
|
276
|
-
} else {
|
|
277
|
-
template = (this.OddBottom != null) ? this.OddBottom : this.bottom;
|
|
278
|
-
}
|
|
279
|
-
// }
|
|
280
|
-
return template;
|
|
281
|
-
}
|
|
282
|
-
/**
|
|
283
|
-
* Checks whether the page `is even`.
|
|
284
|
-
* @private
|
|
285
|
-
*/
|
|
286
|
-
private isEven(page : PdfPage) : boolean {
|
|
287
|
-
let pages : PdfDocumentPageCollection = page.section.document.pages;
|
|
288
|
-
let index : number = 0;
|
|
289
|
-
if (pages.pageCollectionIndex.containsKey(page)) {
|
|
290
|
-
index = pages.pageCollectionIndex.getValue(page) + 1;
|
|
291
|
-
} else {
|
|
292
|
-
index = pages.indexOf(page) + 1;
|
|
293
|
-
}
|
|
294
|
-
let even : boolean = ((index % 2) === 0);
|
|
295
|
-
return even;
|
|
296
|
-
}
|
|
297
|
-
/**
|
|
298
|
-
* Checks a `template element`.
|
|
299
|
-
* @private
|
|
300
|
-
*/
|
|
301
|
-
private checkElement(templateElement : PdfPageTemplateElement, type : TemplateType) : PdfPageTemplateElement {
|
|
302
|
-
if (templateElement != null) {
|
|
303
|
-
if ((typeof templateElement.type !== 'undefined') && (templateElement.type !== TemplateType.None)) {
|
|
304
|
-
throw new Error('NotSupportedException:Can not reassign the template element. Please, create new one.');
|
|
305
|
-
}
|
|
306
|
-
templateElement.type = type;
|
|
307
|
-
}
|
|
308
|
-
return templateElement;
|
|
309
|
-
}
|
|
310
|
-
}
|