@syncfusion/ej2-pdf-export 24.1.41 → 24.1.47
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/CHANGELOG.md +8 -0
- package/dist/ej2-pdf-export.min.js +2 -2
- package/dist/ej2-pdf-export.umd.min.js +2 -2
- package/dist/ej2-pdf-export.umd.min.js.map +1 -1
- package/dist/es6/ej2-pdf-export.es2015.js +157 -28
- package/dist/es6/ej2-pdf-export.es2015.js.map +1 -1
- package/dist/es6/ej2-pdf-export.es5.js +157 -28
- package/dist/es6/ej2-pdf-export.es5.js.map +1 -1
- package/dist/global/ej2-pdf-export.min.js +2 -2
- package/dist/global/ej2-pdf-export.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +5 -5
- package/src/implementation/graphics/pdf-graphics.d.ts +35 -0
- package/src/implementation/graphics/pdf-graphics.js +157 -29
- 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 -65
- package/dist/ts/implementation/document/pdf-document-base.ts +0 -180
- 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/document/pdf-viewer-preferences.ts +0 -578
- 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 -63
- 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 -439
- 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 -2429
- 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 -571
- 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 -663
- 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 -306
- 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 -1193
- 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,385 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* public Enum for `PdfFontStyle`.
|
|
3
|
-
* @private
|
|
4
|
-
*/
|
|
5
|
-
export enum PdfFontStyle {
|
|
6
|
-
/**
|
|
7
|
-
* Specifies the type of `Regular`.
|
|
8
|
-
* @private
|
|
9
|
-
*/
|
|
10
|
-
Regular = 0,
|
|
11
|
-
/**
|
|
12
|
-
* Specifies the type of `Bold`.
|
|
13
|
-
* @private
|
|
14
|
-
*/
|
|
15
|
-
Bold = 1,
|
|
16
|
-
/**
|
|
17
|
-
* Specifies the type of `Italic`.
|
|
18
|
-
* @private
|
|
19
|
-
*/
|
|
20
|
-
Italic = 2,
|
|
21
|
-
/**
|
|
22
|
-
* Specifies the type of `Underline`.
|
|
23
|
-
* @private
|
|
24
|
-
*/
|
|
25
|
-
Underline = 4,
|
|
26
|
-
/**
|
|
27
|
-
* Specifies the type of `Strikeout`.
|
|
28
|
-
* @private
|
|
29
|
-
*/
|
|
30
|
-
Strikeout = 8
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Specifies the font family from the standard font.
|
|
34
|
-
* ```typescript
|
|
35
|
-
* // create a new PDF document
|
|
36
|
-
* let document : PdfDocument = new PdfDocument();
|
|
37
|
-
* // add a new page to the document
|
|
38
|
-
* let page1 : PdfPage = document.pages.add();
|
|
39
|
-
* // create new standard font
|
|
40
|
-
* let font : PdfStandardFont = new PdfStandardFont(PdfFontFamily.Helvetica, 20);
|
|
41
|
-
* // create black brush
|
|
42
|
-
* let blackBrush : PdfSolidBrush = new PdfSolidBrush(new PdfColor(0, 0, 0));
|
|
43
|
-
* // draw the text
|
|
44
|
-
* page1.graphics.drawString('Hello World', font, blackBrush, new PointF(0, 0));
|
|
45
|
-
* // save the document
|
|
46
|
-
* document.save('output.pdf');
|
|
47
|
-
* ```
|
|
48
|
-
*/
|
|
49
|
-
export enum PdfFontFamily {
|
|
50
|
-
/**
|
|
51
|
-
* Specifies the `Helvetica` font.
|
|
52
|
-
*/
|
|
53
|
-
Helvetica,
|
|
54
|
-
/**
|
|
55
|
-
* Specifies the `Courier` font.
|
|
56
|
-
*/
|
|
57
|
-
Courier,
|
|
58
|
-
/**
|
|
59
|
-
* Specifies the `TimesRoman` font.
|
|
60
|
-
*/
|
|
61
|
-
TimesRoman,
|
|
62
|
-
/**
|
|
63
|
-
* Specifies the `Symbol` font.
|
|
64
|
-
*/
|
|
65
|
-
Symbol,
|
|
66
|
-
/**
|
|
67
|
-
* Specifies the `ZapfDingbats` font.
|
|
68
|
-
*/
|
|
69
|
-
ZapfDingbats,
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* public Enum for `PdfFontType`.
|
|
73
|
-
* @private
|
|
74
|
-
*/
|
|
75
|
-
export enum PdfFontType {
|
|
76
|
-
/**
|
|
77
|
-
* Specifies the type of `Standard`.
|
|
78
|
-
* @private
|
|
79
|
-
*/
|
|
80
|
-
Standard,
|
|
81
|
-
/**
|
|
82
|
-
* Specifies the type of `TrueType`.
|
|
83
|
-
* @private
|
|
84
|
-
*/
|
|
85
|
-
TrueType,
|
|
86
|
-
/**
|
|
87
|
-
* Specifies the type of `TrueTypeEmbedded`.
|
|
88
|
-
* @private
|
|
89
|
-
*/
|
|
90
|
-
TrueTypeEmbedded
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* public Enum for `PdfWordWrapType`.
|
|
94
|
-
* @private
|
|
95
|
-
*/
|
|
96
|
-
export enum PdfWordWrapType {
|
|
97
|
-
/**
|
|
98
|
-
* Specifies the type of `None`.
|
|
99
|
-
* @private
|
|
100
|
-
*/
|
|
101
|
-
None,
|
|
102
|
-
/**
|
|
103
|
-
* Specifies the type of `Word`.
|
|
104
|
-
* @private
|
|
105
|
-
*/
|
|
106
|
-
Word,
|
|
107
|
-
/**
|
|
108
|
-
* Specifies the type of `WordOnly`.
|
|
109
|
-
* @private
|
|
110
|
-
*/
|
|
111
|
-
WordOnly,
|
|
112
|
-
/**
|
|
113
|
-
* Specifies the type of `Character`.
|
|
114
|
-
* @private
|
|
115
|
-
*/
|
|
116
|
-
Character
|
|
117
|
-
}
|
|
118
|
-
/**
|
|
119
|
-
* public Enum for `PdfSubSuperScript`.
|
|
120
|
-
* @private
|
|
121
|
-
*/
|
|
122
|
-
export enum PdfSubSuperScript {
|
|
123
|
-
/**
|
|
124
|
-
* Specifies the type of `None`.
|
|
125
|
-
* @private
|
|
126
|
-
*/
|
|
127
|
-
None = 0,
|
|
128
|
-
/**
|
|
129
|
-
* Specifies the type of `SuperScript`.
|
|
130
|
-
* @private
|
|
131
|
-
*/
|
|
132
|
-
SuperScript = 1,
|
|
133
|
-
/**
|
|
134
|
-
* Specifies the type of `SubScript`.
|
|
135
|
-
* @private
|
|
136
|
-
*/
|
|
137
|
-
SubScript = 2
|
|
138
|
-
}
|
|
139
|
-
/**
|
|
140
|
-
* public Enum for `FontEncoding`.
|
|
141
|
-
* @private
|
|
142
|
-
*/
|
|
143
|
-
export enum FontEncoding {
|
|
144
|
-
/**
|
|
145
|
-
* Specifies the type of `Unknown`.
|
|
146
|
-
* @private
|
|
147
|
-
*/
|
|
148
|
-
Unknown = 0,
|
|
149
|
-
/**
|
|
150
|
-
* Specifies the type of `StandardEncoding`.
|
|
151
|
-
* @private
|
|
152
|
-
*/
|
|
153
|
-
StandardEncoding,
|
|
154
|
-
/**
|
|
155
|
-
* Specifies the type of `MacRomanEncoding`.
|
|
156
|
-
* @private
|
|
157
|
-
*/
|
|
158
|
-
MacRomanEncoding,
|
|
159
|
-
/**
|
|
160
|
-
* Specifies the type of `MacExpertEncoding`.
|
|
161
|
-
* @private
|
|
162
|
-
*/
|
|
163
|
-
MacExpertEncoding,
|
|
164
|
-
/**
|
|
165
|
-
* Specifies the type of `WinAnsiEncoding`.
|
|
166
|
-
* @private
|
|
167
|
-
*/
|
|
168
|
-
WinAnsiEncoding,
|
|
169
|
-
/**
|
|
170
|
-
* Specifies the type of `PdfDocEncoding`.
|
|
171
|
-
* @private
|
|
172
|
-
*/
|
|
173
|
-
PdfDocEncoding,
|
|
174
|
-
/**
|
|
175
|
-
* Specifies the type of `IdentityH`.
|
|
176
|
-
* @private
|
|
177
|
-
*/
|
|
178
|
-
IdentityH
|
|
179
|
-
}
|
|
180
|
-
/**
|
|
181
|
-
* public Enum for `TtfCmapFormat`.
|
|
182
|
-
* @private
|
|
183
|
-
*/
|
|
184
|
-
export enum TtfCmapFormat {
|
|
185
|
-
/**
|
|
186
|
-
* This is the Apple standard character to glyph index mapping table.
|
|
187
|
-
* @private
|
|
188
|
-
*/
|
|
189
|
-
Apple = 0,
|
|
190
|
-
/**
|
|
191
|
-
* This is the Microsoft standard character to glyph index mapping table.
|
|
192
|
-
* @private
|
|
193
|
-
*/
|
|
194
|
-
Microsoft = 4,
|
|
195
|
-
/**
|
|
196
|
-
* Format 6: Trimmed table mapping.
|
|
197
|
-
* @private
|
|
198
|
-
*/
|
|
199
|
-
Trimmed = 6
|
|
200
|
-
}
|
|
201
|
-
/**
|
|
202
|
-
* Enumerator that implements CMAP encodings.
|
|
203
|
-
* @private
|
|
204
|
-
*/
|
|
205
|
-
export enum TtfCmapEncoding {
|
|
206
|
-
/**
|
|
207
|
-
* Unknown encoding.
|
|
208
|
-
* @private
|
|
209
|
-
*/
|
|
210
|
-
Unknown = 0,
|
|
211
|
-
/**
|
|
212
|
-
* When building a symbol font for Windows.
|
|
213
|
-
* @private
|
|
214
|
-
*/
|
|
215
|
-
Symbol = 1,
|
|
216
|
-
/**
|
|
217
|
-
* When building a Unicode font for Windows.
|
|
218
|
-
* @private
|
|
219
|
-
*/
|
|
220
|
-
Unicode = 2,
|
|
221
|
-
/**
|
|
222
|
-
* For font that will be used on a Macintosh.
|
|
223
|
-
* @private
|
|
224
|
-
*/
|
|
225
|
-
Macintosh = 3
|
|
226
|
-
}
|
|
227
|
-
/**
|
|
228
|
-
* Ttf platform ID.
|
|
229
|
-
* @private
|
|
230
|
-
*/
|
|
231
|
-
export enum TtfPlatformID {
|
|
232
|
-
/**
|
|
233
|
-
* Apple platform.
|
|
234
|
-
* @private
|
|
235
|
-
*/
|
|
236
|
-
AppleUnicode = 0,
|
|
237
|
-
/**
|
|
238
|
-
* Macintosh platform.
|
|
239
|
-
* @private
|
|
240
|
-
*/
|
|
241
|
-
Macintosh = 1,
|
|
242
|
-
/**
|
|
243
|
-
* Iso platform.
|
|
244
|
-
* @private
|
|
245
|
-
*/
|
|
246
|
-
Iso = 2,
|
|
247
|
-
/**
|
|
248
|
-
* Microsoft platform.
|
|
249
|
-
* @private
|
|
250
|
-
*/
|
|
251
|
-
Microsoft = 3
|
|
252
|
-
}
|
|
253
|
-
/**
|
|
254
|
-
* Microsoft encoding ID.
|
|
255
|
-
* @private
|
|
256
|
-
*/
|
|
257
|
-
export enum TtfMicrosoftEncodingID {
|
|
258
|
-
/**
|
|
259
|
-
* Undefined encoding.
|
|
260
|
-
* @private
|
|
261
|
-
*/
|
|
262
|
-
Undefined = 0,
|
|
263
|
-
/**
|
|
264
|
-
* Unicode encoding.
|
|
265
|
-
* @private
|
|
266
|
-
*/
|
|
267
|
-
Unicode = 1,
|
|
268
|
-
}
|
|
269
|
-
/**
|
|
270
|
-
* Macintosh encoding ID.
|
|
271
|
-
* @private
|
|
272
|
-
*/
|
|
273
|
-
export enum TtfMacintoshEncodingID {
|
|
274
|
-
/**
|
|
275
|
-
* Roman encoding.
|
|
276
|
-
* @private
|
|
277
|
-
*/
|
|
278
|
-
Roman = 0,
|
|
279
|
-
/**
|
|
280
|
-
* Japanese encoding.
|
|
281
|
-
* @private
|
|
282
|
-
*/
|
|
283
|
-
Japanese = 1,
|
|
284
|
-
/**
|
|
285
|
-
* Chinese encoding.
|
|
286
|
-
* @private
|
|
287
|
-
*/
|
|
288
|
-
Chinese = 2
|
|
289
|
-
}
|
|
290
|
-
/**
|
|
291
|
-
* Enumerator that implements font descriptor flags.
|
|
292
|
-
* @private
|
|
293
|
-
*/
|
|
294
|
-
export enum FontDescriptorFlags {
|
|
295
|
-
/**
|
|
296
|
-
* All glyphs have the same width (as opposed to proportional or variable-pitch fonts, which have different widths).
|
|
297
|
-
* @private
|
|
298
|
-
*/
|
|
299
|
-
FixedPitch = 1,
|
|
300
|
-
/**
|
|
301
|
-
* Glyphs have serifs, which are short strokes drawn at an angle on the top and
|
|
302
|
-
* bottom of glyph stems (as opposed to sans serif fonts, which do not).
|
|
303
|
-
* @private
|
|
304
|
-
*/
|
|
305
|
-
Serif = 2,
|
|
306
|
-
/**
|
|
307
|
-
* Font contains glyphs outside the Adobe standard Latin character set. The
|
|
308
|
-
* flag and the nonsymbolic flag cannot both be set or both be clear.
|
|
309
|
-
* @private
|
|
310
|
-
*/
|
|
311
|
-
Symbolic = 4,
|
|
312
|
-
/**
|
|
313
|
-
* Glyphs resemble cursive handwriting.
|
|
314
|
-
* @private
|
|
315
|
-
*/
|
|
316
|
-
Script = 8,
|
|
317
|
-
/**
|
|
318
|
-
* Font uses the Adobe standard Latin character set or a subset of it.
|
|
319
|
-
* @private
|
|
320
|
-
*/
|
|
321
|
-
Nonsymbolic = 32,
|
|
322
|
-
/**
|
|
323
|
-
* Glyphs have dominant vertical strokes that are slanted.
|
|
324
|
-
* @private
|
|
325
|
-
*/
|
|
326
|
-
Italic = 64,
|
|
327
|
-
/**
|
|
328
|
-
* Bold font.
|
|
329
|
-
* @private
|
|
330
|
-
*/
|
|
331
|
-
ForceBold = 0x40000,
|
|
332
|
-
}
|
|
333
|
-
/**
|
|
334
|
-
* true type font composite glyph flags.
|
|
335
|
-
* @private
|
|
336
|
-
*/
|
|
337
|
-
export enum TtfCompositeGlyphFlags {
|
|
338
|
-
/**
|
|
339
|
-
* The Arg1And2AreWords.
|
|
340
|
-
* @private
|
|
341
|
-
*/
|
|
342
|
-
Arg1And2AreWords = 0x0001,
|
|
343
|
-
/**
|
|
344
|
-
* The ArgsAreXyValues.
|
|
345
|
-
* @private
|
|
346
|
-
*/
|
|
347
|
-
ArgsAreXyValues = 0x0002,
|
|
348
|
-
/**
|
|
349
|
-
* The RoundXyToGrid.
|
|
350
|
-
* @private
|
|
351
|
-
*/
|
|
352
|
-
RoundXyToGrid = 0x0004,
|
|
353
|
-
/**
|
|
354
|
-
* The WeHaveScale.
|
|
355
|
-
* @private
|
|
356
|
-
*/
|
|
357
|
-
WeHaveScale = 0x0008,
|
|
358
|
-
/**
|
|
359
|
-
* The Reserved.
|
|
360
|
-
* @private
|
|
361
|
-
*/
|
|
362
|
-
Reserved = 0x0010,
|
|
363
|
-
/**
|
|
364
|
-
* The MoreComponents.
|
|
365
|
-
* @private
|
|
366
|
-
*/
|
|
367
|
-
MoreComponents = 0x0020,
|
|
368
|
-
/**
|
|
369
|
-
* The WeHaveAnXyScale.
|
|
370
|
-
* @private
|
|
371
|
-
*/
|
|
372
|
-
WeHaveAnXyScale = 0x0040,
|
|
373
|
-
/**
|
|
374
|
-
* The WeHaveTwoByTwo
|
|
375
|
-
*/
|
|
376
|
-
WeHaveTwoByTwo = 0x0080,
|
|
377
|
-
/**
|
|
378
|
-
* The WeHaveInstructions.
|
|
379
|
-
*/
|
|
380
|
-
WeHaveInstructions = 0x0100,
|
|
381
|
-
/**
|
|
382
|
-
* The UseMyMetrics.
|
|
383
|
-
*/
|
|
384
|
-
UseMyMetrics = 0x0200,
|
|
385
|
-
}
|
|
@@ -1,248 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* PdfFontMetrics.ts class for EJ2-PDF
|
|
3
|
-
*/
|
|
4
|
-
import { PdfStringFormat } from './pdf-string-format';
|
|
5
|
-
import { PdfFont } from './pdf-font';
|
|
6
|
-
import { PdfSubSuperScript } from './enum';
|
|
7
|
-
import { PdfArray } from './../../primitives/pdf-array';
|
|
8
|
-
/**
|
|
9
|
-
* `Metrics` of the font.
|
|
10
|
-
* @private
|
|
11
|
-
*/
|
|
12
|
-
export class PdfFontMetrics {
|
|
13
|
-
// Fields
|
|
14
|
-
/**
|
|
15
|
-
* Gets `ascent` of the font.
|
|
16
|
-
* @private
|
|
17
|
-
*/
|
|
18
|
-
public ascent : number;
|
|
19
|
-
/**
|
|
20
|
-
* Gets `descent` of the font.
|
|
21
|
-
* @private
|
|
22
|
-
*/
|
|
23
|
-
public descent : number;
|
|
24
|
-
/**
|
|
25
|
-
* `Name` of the font.
|
|
26
|
-
* @private
|
|
27
|
-
*/
|
|
28
|
-
public name : string;
|
|
29
|
-
/**
|
|
30
|
-
* Gets `PostScript` Name of the font.
|
|
31
|
-
* @private
|
|
32
|
-
*/
|
|
33
|
-
public postScriptName : string;
|
|
34
|
-
/**
|
|
35
|
-
* Gets `size` of the font.
|
|
36
|
-
* @private
|
|
37
|
-
*/
|
|
38
|
-
public size : number;
|
|
39
|
-
/**
|
|
40
|
-
* Gets `height` of the font.
|
|
41
|
-
* @private
|
|
42
|
-
*/
|
|
43
|
-
public height : number;
|
|
44
|
-
/**
|
|
45
|
-
* `First char` of the font.
|
|
46
|
-
* @private
|
|
47
|
-
*/
|
|
48
|
-
public firstChar : number;
|
|
49
|
-
/**
|
|
50
|
-
* `Last char` of the font.
|
|
51
|
-
* @private
|
|
52
|
-
*/
|
|
53
|
-
public lastChar : number;
|
|
54
|
-
/**
|
|
55
|
-
* `Line gap`.
|
|
56
|
-
* @private
|
|
57
|
-
*/
|
|
58
|
-
public lineGap : number = 0;
|
|
59
|
-
/**
|
|
60
|
-
* `Subscript` size factor.
|
|
61
|
-
* @private
|
|
62
|
-
*/
|
|
63
|
-
public subScriptSizeFactor : number;
|
|
64
|
-
/**
|
|
65
|
-
* `Superscript` size factor.
|
|
66
|
-
* @private
|
|
67
|
-
*/
|
|
68
|
-
public superscriptSizeFactor : number;
|
|
69
|
-
/**
|
|
70
|
-
* Gets `table` of glyphs` width.
|
|
71
|
-
* @private
|
|
72
|
-
*/
|
|
73
|
-
public internalWidthTable : WidthTable;
|
|
74
|
-
/**
|
|
75
|
-
* Checks whether is it `unicode font` or not.
|
|
76
|
-
* @private
|
|
77
|
-
*/
|
|
78
|
-
public isUnicodeFont : boolean;
|
|
79
|
-
/**
|
|
80
|
-
* Indicate whether the true type font reader font has bold style.
|
|
81
|
-
*/
|
|
82
|
-
public isBold : boolean;
|
|
83
|
-
// Public methods
|
|
84
|
-
/**
|
|
85
|
-
* Returns `ascent` taking into consideration font`s size.
|
|
86
|
-
* @private
|
|
87
|
-
*/
|
|
88
|
-
public getAscent(format : PdfStringFormat) : number {
|
|
89
|
-
let returnValue : number = this.ascent * PdfFont.charSizeMultiplier * this.getSize(format);
|
|
90
|
-
return returnValue;
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Returns `descent` taking into consideration font`s size.
|
|
94
|
-
* @private
|
|
95
|
-
*/
|
|
96
|
-
public getDescent(format : PdfStringFormat) : number {
|
|
97
|
-
let returnValue : number = this.descent * PdfFont.charSizeMultiplier * this.getSize(format);
|
|
98
|
-
return returnValue;
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Returns `Line gap` taking into consideration font`s size.
|
|
102
|
-
* @private
|
|
103
|
-
*/
|
|
104
|
-
public getLineGap(format : PdfStringFormat) : number {
|
|
105
|
-
let returnValue : number = this.lineGap * PdfFont.charSizeMultiplier * this.getSize(format);
|
|
106
|
-
return returnValue;
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* Returns `height` taking into consideration font`s size.
|
|
110
|
-
* @private
|
|
111
|
-
*/
|
|
112
|
-
public getHeight(format : PdfStringFormat) : number {
|
|
113
|
-
let height : number;
|
|
114
|
-
let clearTypeFonts : string[] = [ 'cambria', 'candara', 'constantia', 'corbel', 'cariadings' ];
|
|
115
|
-
let clearTypeFontCollection : string[] = [];
|
|
116
|
-
for (let index : number = 0; index < clearTypeFonts.length; index++) {
|
|
117
|
-
let font : string = clearTypeFonts[index];
|
|
118
|
-
clearTypeFontCollection.push(font);
|
|
119
|
-
}
|
|
120
|
-
if (this.getDescent(format) < 0) {
|
|
121
|
-
// if ((clearTypeFontCollection.indexOf(this.name.toLowerCase()) !== -1) && !this.isUnicodeFont) {
|
|
122
|
-
// height = (this.GetAscent(format) - this.GetDescent(format) - this.GetLineGap(format));
|
|
123
|
-
// } else {
|
|
124
|
-
height = (this.getAscent(format) - this.getDescent(format) + this.getLineGap(format));
|
|
125
|
-
// }
|
|
126
|
-
} else {
|
|
127
|
-
height = (this.getAscent(format) + this.getDescent(format) + this.getLineGap(format));
|
|
128
|
-
}
|
|
129
|
-
return height;
|
|
130
|
-
}
|
|
131
|
-
/**
|
|
132
|
-
* Calculates `size` of the font depending on the subscript/superscript value.
|
|
133
|
-
* @private
|
|
134
|
-
*/
|
|
135
|
-
public getSize(format : PdfStringFormat) : number {
|
|
136
|
-
let size : number = this.size;
|
|
137
|
-
if (format != null) {
|
|
138
|
-
switch (format.subSuperScript) {
|
|
139
|
-
case PdfSubSuperScript.SubScript:
|
|
140
|
-
size /= this.subScriptSizeFactor;
|
|
141
|
-
break;
|
|
142
|
-
|
|
143
|
-
case PdfSubSuperScript.SuperScript:
|
|
144
|
-
size /= this.superscriptSizeFactor;
|
|
145
|
-
break;
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
return size;
|
|
149
|
-
}
|
|
150
|
-
/**
|
|
151
|
-
* `Clones` the metrics.
|
|
152
|
-
* @private
|
|
153
|
-
*/
|
|
154
|
-
public clone() : PdfFontMetrics {
|
|
155
|
-
let metrics : PdfFontMetrics = this;
|
|
156
|
-
metrics.widthTable = WidthTable.clone() as WidthTable;
|
|
157
|
-
return metrics;
|
|
158
|
-
}
|
|
159
|
-
// Properies
|
|
160
|
-
/**
|
|
161
|
-
* Gets or sets the `width table`.
|
|
162
|
-
* @private
|
|
163
|
-
*/
|
|
164
|
-
public get widthTable() : WidthTable {
|
|
165
|
-
return this.internalWidthTable;
|
|
166
|
-
}
|
|
167
|
-
public set widthTable(value : WidthTable) {
|
|
168
|
-
this.internalWidthTable = value;
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
export abstract class WidthTable {
|
|
172
|
-
// // Properties
|
|
173
|
-
/**
|
|
174
|
-
* Returns the `width` of the specific index.
|
|
175
|
-
* @private
|
|
176
|
-
*/
|
|
177
|
-
public abstract items(index : number) : number;
|
|
178
|
-
// // ICloneable Members
|
|
179
|
-
/**
|
|
180
|
-
* `Clones` this instance of the WidthTable class.
|
|
181
|
-
* @private
|
|
182
|
-
*/
|
|
183
|
-
public abstract clone() : WidthTable;
|
|
184
|
-
/**
|
|
185
|
-
* Static `clones` this instance of the WidthTable class.
|
|
186
|
-
* @private
|
|
187
|
-
*/
|
|
188
|
-
public static clone() : WidthTable {
|
|
189
|
-
return null;
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
export class StandardWidthTable extends WidthTable {
|
|
193
|
-
// Fields
|
|
194
|
-
/**
|
|
195
|
-
* The `widths` of the supported characters.
|
|
196
|
-
* @private
|
|
197
|
-
*/
|
|
198
|
-
private widths : number[];
|
|
199
|
-
//Properties
|
|
200
|
-
/**
|
|
201
|
-
* Gets the `32 bit number` at the specified index.
|
|
202
|
-
* @private
|
|
203
|
-
*/
|
|
204
|
-
public items(index : number) : number {
|
|
205
|
-
if (index < 0 || index >= this.widths.length) {
|
|
206
|
-
throw new Error('ArgumentOutOfRangeException:index, The character is not supported by the font.');
|
|
207
|
-
}
|
|
208
|
-
let result : number = this.widths[index];
|
|
209
|
-
return result;
|
|
210
|
-
}
|
|
211
|
-
/**
|
|
212
|
-
* Gets the `length` of the internal array.
|
|
213
|
-
* @private
|
|
214
|
-
*/
|
|
215
|
-
public get length() : number {
|
|
216
|
-
return this.widths.length;
|
|
217
|
-
}
|
|
218
|
-
// Constructors
|
|
219
|
-
/**
|
|
220
|
-
* Initializes a new instance of the `StandardWidthTable` class.
|
|
221
|
-
* @private
|
|
222
|
-
*/
|
|
223
|
-
public constructor(widths : number[]) {
|
|
224
|
-
super();
|
|
225
|
-
if (widths == null) {
|
|
226
|
-
throw new Error('ArgumentNullException:widths');
|
|
227
|
-
}
|
|
228
|
-
this.widths = widths;
|
|
229
|
-
}
|
|
230
|
-
//Overrides
|
|
231
|
-
/**
|
|
232
|
-
* `Clones` this instance of the WidthTable class.
|
|
233
|
-
* @private
|
|
234
|
-
*/
|
|
235
|
-
public clone() : WidthTable {
|
|
236
|
-
let swt : StandardWidthTable = this;
|
|
237
|
-
swt.widths = this.widths;
|
|
238
|
-
return swt;
|
|
239
|
-
}
|
|
240
|
-
/**
|
|
241
|
-
* Converts width table to a `PDF array`.
|
|
242
|
-
* @private
|
|
243
|
-
*/
|
|
244
|
-
public toArray() : PdfArray {
|
|
245
|
-
let arr : PdfArray = new PdfArray(this.widths);
|
|
246
|
-
return arr;
|
|
247
|
-
}
|
|
248
|
-
}
|