@office-open/core 0.6.4 → 0.6.5
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/dist/chart/index.d.mts +1 -112
- package/dist/chart/index.mjs +1 -610
- package/dist/chart-Bd9E-YhB.mjs +611 -0
- package/dist/drawingml/index.d.mts +2 -3127
- package/dist/drawingml/index.mjs +1 -3877
- package/dist/drawingml-YMdpQfWs.mjs +4155 -0
- package/dist/{index-mjYQ4KiG.d.mts → index-B1wzvu1m.d.mts} +1 -1
- package/dist/{index-DigYTiB_.d.mts → index-CZxcE4Q6.d.mts} +1 -1
- package/dist/index-CuRO3Jmz.d.mts +3127 -0
- package/dist/index-DNLRdIqy.d.mts +127 -0
- package/dist/index-DZobntUT.d.mts +113 -0
- package/dist/index.d.mts +18 -17
- package/dist/index.mjs +15 -19
- package/dist/patch/index.d.mts +2 -0
- package/dist/patch/index.mjs +2 -0
- package/dist/patch-BdMU95aX.mjs +337 -0
- package/dist/smartart/index.d.mts +1 -1
- package/dist/values.d.mts +1 -1
- package/package.json +2 -6
- package/dist/archive.d.mts +0 -58
- package/dist/archive.mjs +0 -135
- package/dist/xsd-mappings-BiTj9yJn.mjs +0 -279
- /package/dist/{values-CIh0bdS1.d.mts → values-QyWq4U4A.d.mts} +0 -0
|
@@ -0,0 +1,3127 @@
|
|
|
1
|
+
import { C as XmlComponent, a as BuilderElement } from "./index-B1wzvu1m.mjs";
|
|
2
|
+
|
|
3
|
+
//#region src/drawingml/color/color-transform.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* Options for color transforms.
|
|
6
|
+
*
|
|
7
|
+
* All percentage values are in 1/1000th of a percent (e.g., 50000 = 50%).
|
|
8
|
+
* Angle values are in 60,000ths of a degree.
|
|
9
|
+
*
|
|
10
|
+
* Reference: ISO/IEC 29500-4, dml-main.xsd, EG_ColorTransform
|
|
11
|
+
*/
|
|
12
|
+
interface ColorTransformOptions {
|
|
13
|
+
/** Tint: moves color toward white (0-100000) */
|
|
14
|
+
readonly tint?: number;
|
|
15
|
+
/** Shade: moves color toward black (0-100000) */
|
|
16
|
+
readonly shade?: number;
|
|
17
|
+
/** Complement: inverts the color (no value) */
|
|
18
|
+
readonly comp?: boolean;
|
|
19
|
+
/** Inverse: inverts the color (no value) */
|
|
20
|
+
readonly inv?: boolean;
|
|
21
|
+
/** Grayscale: converts to grayscale (no value) */
|
|
22
|
+
readonly gray?: boolean;
|
|
23
|
+
/** Alpha: sets transparency (0-100000) */
|
|
24
|
+
readonly alpha?: number;
|
|
25
|
+
/** Alpha offset: adjusts alpha by fixed amount (-100000 to 100000) */
|
|
26
|
+
readonly alphaOff?: number;
|
|
27
|
+
/** Alpha modulation: scales alpha by percentage (0-100000) */
|
|
28
|
+
readonly alphaMod?: number;
|
|
29
|
+
/** Hue: sets hue angle (0-21600000) */
|
|
30
|
+
readonly hue?: number;
|
|
31
|
+
/** Hue offset: adjusts hue by angle (-5400000 to 5400000) */
|
|
32
|
+
readonly hueOff?: number;
|
|
33
|
+
/** Hue modulation: scales hue by percentage (0-100000) */
|
|
34
|
+
readonly hueMod?: number;
|
|
35
|
+
/** Saturation: sets saturation (-100000 to 100000) */
|
|
36
|
+
readonly sat?: number;
|
|
37
|
+
/** Saturation offset: adjusts saturation (-100000 to 100000) */
|
|
38
|
+
readonly satOff?: number;
|
|
39
|
+
/** Saturation modulation: scales saturation (0-100000) */
|
|
40
|
+
readonly satMod?: number;
|
|
41
|
+
/** Luminance: sets luminance (-100000 to 100000) */
|
|
42
|
+
readonly lum?: number;
|
|
43
|
+
/** Luminance offset: adjusts luminance (-100000 to 100000) */
|
|
44
|
+
readonly lumOff?: number;
|
|
45
|
+
/** Luminance modulation: scales luminance (0-100000) */
|
|
46
|
+
readonly lumMod?: number;
|
|
47
|
+
/** Red: sets red channel (-100000 to 100000) */
|
|
48
|
+
readonly red?: number;
|
|
49
|
+
/** Red offset: adjusts red channel (-100000 to 100000) */
|
|
50
|
+
readonly redOff?: number;
|
|
51
|
+
/** Red modulation: scales red channel (0-100000) */
|
|
52
|
+
readonly redMod?: number;
|
|
53
|
+
/** Green: sets green channel (-100000 to 100000) */
|
|
54
|
+
readonly green?: number;
|
|
55
|
+
/** Green offset: adjusts green channel (-100000 to 100000) */
|
|
56
|
+
readonly greenOff?: number;
|
|
57
|
+
/** Green modulation: scales green channel (0-100000) */
|
|
58
|
+
readonly greenMod?: number;
|
|
59
|
+
/** Blue: sets blue channel (-100000 to 100000) */
|
|
60
|
+
readonly blue?: number;
|
|
61
|
+
/** Blue offset: adjusts blue channel (-100000 to 100000) */
|
|
62
|
+
readonly blueOff?: number;
|
|
63
|
+
/** Blue modulation: scales blue channel (0-100000) */
|
|
64
|
+
readonly blueMod?: number;
|
|
65
|
+
/** Gamma correction (no value) */
|
|
66
|
+
readonly gamma?: boolean;
|
|
67
|
+
/** Inverse gamma correction (no value) */
|
|
68
|
+
readonly invGamma?: boolean;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Creates color transform child elements.
|
|
72
|
+
*
|
|
73
|
+
* These elements modify the parent color according to OOXML color transform rules.
|
|
74
|
+
* Multiple transforms can be applied in sequence.
|
|
75
|
+
*
|
|
76
|
+
* @example
|
|
77
|
+
* ```typescript
|
|
78
|
+
* // Lighten accent1 by 40%
|
|
79
|
+
* createColorTransforms({ tint: 40000 });
|
|
80
|
+
* // Semi-transparent red with 50% alpha
|
|
81
|
+
* createColorTransforms({ alpha: 50000 });
|
|
82
|
+
* ```
|
|
83
|
+
*/
|
|
84
|
+
declare const createColorTransforms: (options: ColorTransformOptions) => readonly XmlComponent[];
|
|
85
|
+
//#endregion
|
|
86
|
+
//#region src/drawingml/color/hsl-color.d.ts
|
|
87
|
+
/**
|
|
88
|
+
* Options for HSL color.
|
|
89
|
+
*/
|
|
90
|
+
interface HslColorOptions {
|
|
91
|
+
/** Hue angle in 60,000ths of a degree (0-21600000) */
|
|
92
|
+
readonly hue: number;
|
|
93
|
+
/** Saturation in 1/1000th of a percent (0-100000) */
|
|
94
|
+
readonly saturation: number;
|
|
95
|
+
/** Luminance in 1/1000th of a percent (0-100000) */
|
|
96
|
+
readonly luminance: number;
|
|
97
|
+
/** Optional color transforms */
|
|
98
|
+
readonly transforms?: ColorTransformOptions;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Creates an HSL color element.
|
|
102
|
+
*
|
|
103
|
+
* Specifies a color using Hue, Saturation, and Luminance values.
|
|
104
|
+
*
|
|
105
|
+
* ## XSD Schema
|
|
106
|
+
* ```xml
|
|
107
|
+
* <xsd:complexType name="CT_HslColor">
|
|
108
|
+
* <xsd:sequence>
|
|
109
|
+
* <xsd:group ref="EG_ColorTransform" minOccurs="0" maxOccurs="unbounded"/>
|
|
110
|
+
* </xsd:sequence>
|
|
111
|
+
* <xsd:attribute name="hue" type="ST_PositiveFixedAngle" use="required"/>
|
|
112
|
+
* <xsd:attribute name="sat" type="ST_Percentage" use="required"/>
|
|
113
|
+
* <xsd:attribute name="lum" type="ST_Percentage" use="required"/>
|
|
114
|
+
* </xsd:complexType>
|
|
115
|
+
* ```
|
|
116
|
+
*/
|
|
117
|
+
declare const createHslColor: (options: HslColorOptions) => XmlComponent;
|
|
118
|
+
//#endregion
|
|
119
|
+
//#region src/drawingml/color/preset-color.d.ts
|
|
120
|
+
/**
|
|
121
|
+
* Preset color values (CSS named colors).
|
|
122
|
+
*
|
|
123
|
+
* ## XSD Schema
|
|
124
|
+
* ```xml
|
|
125
|
+
* <xsd:simpleType name="ST_PresetColorVal">
|
|
126
|
+
* <xsd:restriction base="xsd:token">
|
|
127
|
+
* <xsd:enumeration value="aliceBlue"/>
|
|
128
|
+
* ...
|
|
129
|
+
* <xsd:enumeration value="yellowGreen"/>
|
|
130
|
+
* </xsd:restriction>
|
|
131
|
+
* </xsd:simpleType>
|
|
132
|
+
* ```
|
|
133
|
+
*/
|
|
134
|
+
declare const PresetColor: {
|
|
135
|
+
readonly ALICE_BLUE: "aliceBlue";
|
|
136
|
+
readonly ANTIQUE_WHITE: "antiqueWhite";
|
|
137
|
+
readonly AQUA: "aqua";
|
|
138
|
+
readonly AQUAMARINE: "aquamarine";
|
|
139
|
+
readonly AZURE: "azure";
|
|
140
|
+
readonly BEIGE: "beige";
|
|
141
|
+
readonly BISQUE: "bisque";
|
|
142
|
+
readonly BLACK: "black";
|
|
143
|
+
readonly BLANCHED_ALMOND: "blanchedAlmond";
|
|
144
|
+
readonly BLUE: "blue";
|
|
145
|
+
readonly BLUE_VIOLET: "blueViolet";
|
|
146
|
+
readonly BROWN: "brown";
|
|
147
|
+
readonly BURLY_WOOD: "burlyWood";
|
|
148
|
+
readonly CADET_BLUE: "cadetBlue";
|
|
149
|
+
readonly CHARTREUSE: "chartreuse";
|
|
150
|
+
readonly CHOCOLATE: "chocolate";
|
|
151
|
+
readonly CORAL: "coral";
|
|
152
|
+
readonly CORNFLOWER_BLUE: "cornflowerBlue";
|
|
153
|
+
readonly CORNSILK: "cornsilk";
|
|
154
|
+
readonly CRIMSON: "crimson";
|
|
155
|
+
readonly CYAN: "cyan";
|
|
156
|
+
readonly DARK_BLUE: "darkBlue";
|
|
157
|
+
readonly DARK_CYAN: "darkCyan";
|
|
158
|
+
readonly DARK_GOLDENROD: "darkGoldenrod";
|
|
159
|
+
readonly DARK_GRAY: "darkGray";
|
|
160
|
+
readonly DARK_GREY: "darkGrey";
|
|
161
|
+
readonly DARK_GREEN: "darkGreen";
|
|
162
|
+
readonly DARK_KHAKI: "darkKhaki";
|
|
163
|
+
readonly DARK_MAGENTA: "darkMagenta";
|
|
164
|
+
readonly DARK_OLIVE_GREEN: "darkOliveGreen";
|
|
165
|
+
readonly DARK_ORANGE: "darkOrange";
|
|
166
|
+
readonly DARK_ORCHID: "darkOrchid";
|
|
167
|
+
readonly DARK_RED: "darkRed";
|
|
168
|
+
readonly DARK_SALMON: "darkSalmon";
|
|
169
|
+
readonly DARK_SEA_GREEN: "darkSeaGreen";
|
|
170
|
+
readonly DARK_SLATE_BLUE: "darkSlateBlue";
|
|
171
|
+
readonly DARK_SLATE_GRAY: "darkSlateGray";
|
|
172
|
+
readonly DARK_SLATE_GREY: "darkSlateGrey";
|
|
173
|
+
readonly DARK_TURQUOISE: "darkTurquoise";
|
|
174
|
+
readonly DARK_VIOLET: "darkViolet";
|
|
175
|
+
readonly DEEP_PINK: "deepPink";
|
|
176
|
+
readonly DEEP_SKY_BLUE: "deepSkyBlue";
|
|
177
|
+
readonly DIM_GRAY: "dimGray";
|
|
178
|
+
readonly DIM_GREY: "dimGrey";
|
|
179
|
+
readonly DODGER_BLUE: "dodgerBlue";
|
|
180
|
+
readonly FIREBRICK: "firebrick";
|
|
181
|
+
readonly FLORAL_WHITE: "floralWhite";
|
|
182
|
+
readonly FOREST_GREEN: "forestGreen";
|
|
183
|
+
readonly FUCHSIA: "fuchsia";
|
|
184
|
+
readonly GAINSBORO: "gainsboro";
|
|
185
|
+
readonly GHOST_WHITE: "ghostWhite";
|
|
186
|
+
readonly GOLD: "gold";
|
|
187
|
+
readonly GOLDENROD: "goldenrod";
|
|
188
|
+
readonly GRAY: "gray";
|
|
189
|
+
readonly GREY: "grey";
|
|
190
|
+
readonly GREEN: "green";
|
|
191
|
+
readonly GREEN_YELLOW: "greenYellow";
|
|
192
|
+
readonly HONEYDEW: "honeydew";
|
|
193
|
+
readonly HOT_PINK: "hotPink";
|
|
194
|
+
readonly INDIAN_RED: "indianRed";
|
|
195
|
+
readonly INDIGO: "indigo";
|
|
196
|
+
readonly IVORY: "ivory";
|
|
197
|
+
readonly KHAKI: "khaki";
|
|
198
|
+
readonly LAVENDER: "lavender";
|
|
199
|
+
readonly LAVENDER_BLUSH: "lavenderBlush";
|
|
200
|
+
readonly LAWN_GREEN: "lawnGreen";
|
|
201
|
+
readonly LEMON_CHIFFON: "lemonChiffon";
|
|
202
|
+
readonly LIGHT_BLUE: "lightBlue";
|
|
203
|
+
readonly LIGHT_CORAL: "lightCoral";
|
|
204
|
+
readonly LIGHT_CYAN: "lightCyan";
|
|
205
|
+
readonly LIGHT_GOLDENROD_YELLOW: "lightGoldenrodYellow";
|
|
206
|
+
readonly LIGHT_GRAY: "lightGray";
|
|
207
|
+
readonly LIGHT_GREY: "lightGrey";
|
|
208
|
+
readonly LIGHT_GREEN: "lightGreen";
|
|
209
|
+
readonly LIGHT_PINK: "lightPink";
|
|
210
|
+
readonly LIGHT_SALMON: "lightSalmon";
|
|
211
|
+
readonly LIGHT_SEA_GREEN: "lightSeaGreen";
|
|
212
|
+
readonly LIGHT_SKY_BLUE: "lightSkyBlue";
|
|
213
|
+
readonly LIGHT_SLATE_GRAY: "lightSlateGray";
|
|
214
|
+
readonly LIGHT_SLATE_GREY: "lightSlateGrey";
|
|
215
|
+
readonly LIGHT_STEEL_BLUE: "lightSteelBlue";
|
|
216
|
+
readonly LIGHT_YELLOW: "lightYellow";
|
|
217
|
+
readonly LIME: "lime";
|
|
218
|
+
readonly LIME_GREEN: "limeGreen";
|
|
219
|
+
readonly LINEN: "linen";
|
|
220
|
+
readonly MAGENTA: "magenta";
|
|
221
|
+
readonly MAROON: "maroon";
|
|
222
|
+
readonly MEDIUM_AQUAMARINE: "mediumAquamarine";
|
|
223
|
+
readonly MEDIUM_BLUE: "mediumBlue";
|
|
224
|
+
readonly MEDIUM_ORCHID: "mediumOrchid";
|
|
225
|
+
readonly MEDIUM_PURPLE: "mediumPurple";
|
|
226
|
+
readonly MEDIUM_SEA_GREEN: "mediumSeaGreen";
|
|
227
|
+
readonly MEDIUM_SLATE_BLUE: "mediumSlateBlue";
|
|
228
|
+
readonly MEDIUM_SPRING_GREEN: "mediumSpringGreen";
|
|
229
|
+
readonly MEDIUM_TURQUOISE: "mediumTurquoise";
|
|
230
|
+
readonly MEDIUM_VIOLET_RED: "mediumVioletRed";
|
|
231
|
+
readonly MIDNIGHT_BLUE: "midnightBlue";
|
|
232
|
+
readonly MINT_CREAM: "mintCream";
|
|
233
|
+
readonly MISTY_ROSE: "mistyRose";
|
|
234
|
+
readonly MOCCASIN: "moccasin";
|
|
235
|
+
readonly NAVAJO_WHITE: "navajoWhite";
|
|
236
|
+
readonly NAVY: "navy";
|
|
237
|
+
readonly OLD_LACE: "oldLace";
|
|
238
|
+
readonly OLIVE: "olive";
|
|
239
|
+
readonly OLIVE_DRAB: "oliveDrab";
|
|
240
|
+
readonly ORANGE: "orange";
|
|
241
|
+
readonly ORANGE_RED: "orangeRed";
|
|
242
|
+
readonly ORCHID: "orchid";
|
|
243
|
+
readonly PALE_GOLDENROD: "paleGoldenrod";
|
|
244
|
+
readonly PALE_GREEN: "paleGreen";
|
|
245
|
+
readonly PALE_TURQUOISE: "paleTurquoise";
|
|
246
|
+
readonly PALE_VIOLET_RED: "paleVioletRed";
|
|
247
|
+
readonly PAPAYA_WHIP: "papayaWhip";
|
|
248
|
+
readonly PEACH_PUFF: "peachPuff";
|
|
249
|
+
readonly PERU: "peru";
|
|
250
|
+
readonly PINK: "pink";
|
|
251
|
+
readonly PLUM: "plum";
|
|
252
|
+
readonly POWDER_BLUE: "powderBlue";
|
|
253
|
+
readonly PURPLE: "purple";
|
|
254
|
+
readonly RED: "red";
|
|
255
|
+
readonly ROSY_BROWN: "rosyBrown";
|
|
256
|
+
readonly ROYAL_BLUE: "royalBlue";
|
|
257
|
+
readonly SADDLE_BROWN: "saddleBrown";
|
|
258
|
+
readonly SALMON: "salmon";
|
|
259
|
+
readonly SANDY_BROWN: "sandyBrown";
|
|
260
|
+
readonly SEA_GREEN: "seaGreen";
|
|
261
|
+
readonly SEA_SHELL: "seaShell";
|
|
262
|
+
readonly SIENNA: "sienna";
|
|
263
|
+
readonly SILVER: "silver";
|
|
264
|
+
readonly SKY_BLUE: "skyBlue";
|
|
265
|
+
readonly SLATE_BLUE: "slateBlue";
|
|
266
|
+
readonly SLATE_GRAY: "slateGray";
|
|
267
|
+
readonly SLATE_GREY: "slateGrey";
|
|
268
|
+
readonly SNOW: "snow";
|
|
269
|
+
readonly SPRING_GREEN: "springGreen";
|
|
270
|
+
readonly STEEL_BLUE: "steelBlue";
|
|
271
|
+
readonly TAN: "tan";
|
|
272
|
+
readonly TEAL: "teal";
|
|
273
|
+
readonly THISTLE: "thistle";
|
|
274
|
+
readonly TOMATO: "tomato";
|
|
275
|
+
readonly TURQUOISE: "turquoise";
|
|
276
|
+
readonly VIOLET: "violet";
|
|
277
|
+
readonly WHEAT: "wheat";
|
|
278
|
+
readonly WHITE: "white";
|
|
279
|
+
readonly WHITE_SMOKE: "whiteSmoke";
|
|
280
|
+
readonly YELLOW: "yellow";
|
|
281
|
+
readonly YELLOW_GREEN: "yellowGreen";
|
|
282
|
+
};
|
|
283
|
+
/**
|
|
284
|
+
* Options for preset color.
|
|
285
|
+
*/
|
|
286
|
+
interface PresetColorOptions {
|
|
287
|
+
/** Preset color value */
|
|
288
|
+
readonly value: (typeof PresetColor)[keyof typeof PresetColor];
|
|
289
|
+
/** Optional color transforms */
|
|
290
|
+
readonly transforms?: ColorTransformOptions;
|
|
291
|
+
}
|
|
292
|
+
/**
|
|
293
|
+
* Creates a preset color element.
|
|
294
|
+
*
|
|
295
|
+
* Specifies a color using a named preset (CSS named color).
|
|
296
|
+
*
|
|
297
|
+
* ## XSD Schema
|
|
298
|
+
* ```xml
|
|
299
|
+
* <xsd:complexType name="CT_PresetColor">
|
|
300
|
+
* <xsd:sequence>
|
|
301
|
+
* <xsd:group ref="EG_ColorTransform" minOccurs="0" maxOccurs="unbounded"/>
|
|
302
|
+
* </xsd:sequence>
|
|
303
|
+
* <xsd:attribute name="val" type="ST_PresetColorVal" use="required"/>
|
|
304
|
+
* </xsd:complexType>
|
|
305
|
+
* ```
|
|
306
|
+
*/
|
|
307
|
+
declare const createPresetColor: (options: PresetColorOptions) => XmlComponent;
|
|
308
|
+
//#endregion
|
|
309
|
+
//#region src/drawingml/color/rgb-color.d.ts
|
|
310
|
+
/**
|
|
311
|
+
* Options for RGB color.
|
|
312
|
+
*/
|
|
313
|
+
interface RgbColorOptions {
|
|
314
|
+
/** Hex color value (e.g., "FF0000" for red) */
|
|
315
|
+
readonly value: string;
|
|
316
|
+
/** Optional color transforms */
|
|
317
|
+
readonly transforms?: ColorTransformOptions;
|
|
318
|
+
}
|
|
319
|
+
/**
|
|
320
|
+
* Creates an sRGB color element.
|
|
321
|
+
*
|
|
322
|
+
* Specifies a color using RGB hex values.
|
|
323
|
+
*
|
|
324
|
+
* ## XSD Schema
|
|
325
|
+
* ```xml
|
|
326
|
+
* <xsd:complexType name="CT_SRgbColor">
|
|
327
|
+
* <xsd:sequence>
|
|
328
|
+
* <xsd:group ref="EG_ColorTransform" minOccurs="0" maxOccurs="unbounded"/>
|
|
329
|
+
* </xsd:sequence>
|
|
330
|
+
* <xsd:attribute name="val" type="s:ST_HexColorRGB" use="required"/>
|
|
331
|
+
* </xsd:complexType>
|
|
332
|
+
* ```
|
|
333
|
+
*
|
|
334
|
+
* @example
|
|
335
|
+
* ```typescript
|
|
336
|
+
* const redColor = createRgbColor({ value: "FF0000" });
|
|
337
|
+
* // With alpha transform
|
|
338
|
+
* const semiRed = createRgbColor({ value: "FF0000", transforms: { alpha: 50000 } });
|
|
339
|
+
* ```
|
|
340
|
+
*/
|
|
341
|
+
declare const createRgbColor: (options: RgbColorOptions) => XmlComponent;
|
|
342
|
+
//#endregion
|
|
343
|
+
//#region src/drawingml/color/sc-rgb-color.d.ts
|
|
344
|
+
/**
|
|
345
|
+
* Options for scRGB color.
|
|
346
|
+
*/
|
|
347
|
+
interface ScRgbColorOptions {
|
|
348
|
+
/** Red percentage (e.g., "50%" or "100%") */
|
|
349
|
+
readonly r: string;
|
|
350
|
+
/** Green percentage (e.g., "50%" or "100%") */
|
|
351
|
+
readonly g: string;
|
|
352
|
+
/** Blue percentage (e.g., "50%" or "100%") */
|
|
353
|
+
readonly b: string;
|
|
354
|
+
/** Optional color transforms */
|
|
355
|
+
readonly transforms?: ColorTransformOptions;
|
|
356
|
+
}
|
|
357
|
+
/**
|
|
358
|
+
* Creates an scRGB color element.
|
|
359
|
+
*
|
|
360
|
+
* Specifies a color using percentage-based RGB values.
|
|
361
|
+
*
|
|
362
|
+
* ## XSD Schema
|
|
363
|
+
* ```xml
|
|
364
|
+
* <xsd:complexType name="CT_ScRgbColor">
|
|
365
|
+
* <xsd:sequence>
|
|
366
|
+
* <xsd:group ref="EG_ColorTransform" minOccurs="0" maxOccurs="unbounded"/>
|
|
367
|
+
* </xsd:sequence>
|
|
368
|
+
* <xsd:attribute name="r" type="ST_Percentage" use="required"/>
|
|
369
|
+
* <xsd:attribute name="g" type="ST_Percentage" use="required"/>
|
|
370
|
+
* <xsd:attribute name="b" type="ST_Percentage" use="required"/>
|
|
371
|
+
* </xsd:complexType>
|
|
372
|
+
* ```
|
|
373
|
+
*
|
|
374
|
+
* @example
|
|
375
|
+
* ```typescript
|
|
376
|
+
* const redColor = createScRgbColor({ r: "100%", g: "0%", b: "0%" });
|
|
377
|
+
* // With alpha transform
|
|
378
|
+
* const semiRed = createScRgbColor({ r: "100%", g: "0%", b: "0%", transforms: { alpha: 50000 } });
|
|
379
|
+
* ```
|
|
380
|
+
*/
|
|
381
|
+
declare const createScRgbColor: (options: ScRgbColorOptions) => XmlComponent;
|
|
382
|
+
//#endregion
|
|
383
|
+
//#region src/drawingml/color/scheme-color.d.ts
|
|
384
|
+
/**
|
|
385
|
+
* Options for scheme color.
|
|
386
|
+
*/
|
|
387
|
+
interface SchemeColorOptions {
|
|
388
|
+
/** Scheme color value */
|
|
389
|
+
readonly value: (typeof SchemeColor)[keyof typeof SchemeColor];
|
|
390
|
+
/** Optional color transforms */
|
|
391
|
+
readonly transforms?: ColorTransformOptions;
|
|
392
|
+
}
|
|
393
|
+
/**
|
|
394
|
+
* Scheme color values for theme-based colors.
|
|
395
|
+
*
|
|
396
|
+
* These values reference colors defined in the document's color scheme/theme.
|
|
397
|
+
*/
|
|
398
|
+
declare const SchemeColor: {
|
|
399
|
+
/** Background color 1 */readonly BG1: "bg1"; /** Text color 1 */
|
|
400
|
+
readonly TX1: "tx1"; /** Background color 2 */
|
|
401
|
+
readonly BG2: "bg2"; /** Text color 2 */
|
|
402
|
+
readonly TX2: "tx2"; /** Accent color 1 */
|
|
403
|
+
readonly ACCENT1: "accent1"; /** Accent color 2 */
|
|
404
|
+
readonly ACCENT2: "accent2"; /** Accent color 3 */
|
|
405
|
+
readonly ACCENT3: "accent3"; /** Accent color 4 */
|
|
406
|
+
readonly ACCENT4: "accent4"; /** Accent color 5 */
|
|
407
|
+
readonly ACCENT5: "accent5"; /** Accent color 6 */
|
|
408
|
+
readonly ACCENT6: "accent6"; /** Hyperlink color */
|
|
409
|
+
readonly HLINK: "hlink"; /** Followed hyperlink color */
|
|
410
|
+
readonly FOLHLINK: "folHlink"; /** Dark color 1 */
|
|
411
|
+
readonly DK1: "dk1"; /** Light color 1 */
|
|
412
|
+
readonly LT1: "lt1"; /** Dark color 2 */
|
|
413
|
+
readonly DK2: "dk2"; /** Light color 2 */
|
|
414
|
+
readonly LT2: "lt2"; /** Placeholder color */
|
|
415
|
+
readonly PHCLR: "phClr";
|
|
416
|
+
};
|
|
417
|
+
/**
|
|
418
|
+
* Creates a scheme color element.
|
|
419
|
+
*
|
|
420
|
+
* Specifies a color using a theme color scheme reference.
|
|
421
|
+
*
|
|
422
|
+
* ## XSD Schema
|
|
423
|
+
* ```xml
|
|
424
|
+
* <xsd:complexType name="CT_SchemeColor">
|
|
425
|
+
* <xsd:sequence>
|
|
426
|
+
* <xsd:group ref="EG_ColorTransform" minOccurs="0" maxOccurs="unbounded"/>
|
|
427
|
+
* </xsd:sequence>
|
|
428
|
+
* <xsd:attribute name="val" type="ST_SchemeColorVal" use="required"/>
|
|
429
|
+
* </xsd:complexType>
|
|
430
|
+
* ```
|
|
431
|
+
*
|
|
432
|
+
* @example
|
|
433
|
+
* ```typescript
|
|
434
|
+
* const accentColor = createSchemeColor({ value: SchemeColor.ACCENT1 });
|
|
435
|
+
* // With tint transform
|
|
436
|
+
* const lightAccent = createSchemeColor({
|
|
437
|
+
* value: SchemeColor.ACCENT1,
|
|
438
|
+
* transforms: { tint: 40000 },
|
|
439
|
+
* });
|
|
440
|
+
* ```
|
|
441
|
+
*/
|
|
442
|
+
declare const createSchemeColor: (options: SchemeColorOptions) => XmlComponent;
|
|
443
|
+
//#endregion
|
|
444
|
+
//#region src/drawingml/color/system-color.d.ts
|
|
445
|
+
/**
|
|
446
|
+
* System color values referencing OS UI colors.
|
|
447
|
+
*
|
|
448
|
+
* ## XSD Schema
|
|
449
|
+
* ```xml
|
|
450
|
+
* <xsd:simpleType name="ST_SystemColorVal">
|
|
451
|
+
* <xsd:restriction base="xsd:token">
|
|
452
|
+
* <xsd:enumeration value="scrollBar"/>
|
|
453
|
+
* <xsd:enumeration value="background"/>
|
|
454
|
+
* ...
|
|
455
|
+
* <xsd:enumeration value="menuBar"/>
|
|
456
|
+
* </xsd:restriction>
|
|
457
|
+
* </xsd:simpleType>
|
|
458
|
+
* ```
|
|
459
|
+
*/
|
|
460
|
+
declare const SystemColor: {
|
|
461
|
+
readonly SCROLL_BAR: "scrollBar";
|
|
462
|
+
readonly BACKGROUND: "background";
|
|
463
|
+
readonly ACTIVE_CAPTION: "activeCaption";
|
|
464
|
+
readonly INACTIVE_CAPTION: "inactiveCaption";
|
|
465
|
+
readonly MENU: "menu";
|
|
466
|
+
readonly WINDOW: "window";
|
|
467
|
+
readonly WINDOW_FRAME: "windowFrame";
|
|
468
|
+
readonly MENU_TEXT: "menuText";
|
|
469
|
+
readonly WINDOW_TEXT: "windowText";
|
|
470
|
+
readonly CAPTION_TEXT: "captionText";
|
|
471
|
+
readonly ACTIVE_BORDER: "activeBorder";
|
|
472
|
+
readonly INACTIVE_BORDER: "inactiveBorder";
|
|
473
|
+
readonly APP_WORKSPACE: "appWorkspace";
|
|
474
|
+
readonly HIGHLIGHT: "highlight";
|
|
475
|
+
readonly HIGHLIGHT_TEXT: "highlightText";
|
|
476
|
+
readonly BTN_FACE: "btnFace";
|
|
477
|
+
readonly BTN_SHADOW: "btnShadow";
|
|
478
|
+
readonly GRAY_TEXT: "grayText";
|
|
479
|
+
readonly BTN_TEXT: "btnText";
|
|
480
|
+
readonly INACTIVE_CAPTION_TEXT: "inactiveCaptionText";
|
|
481
|
+
readonly BTN_HIGHLIGHT: "btnHighlight";
|
|
482
|
+
readonly THREE_D_DK_SHADOW: "3dDkShadow";
|
|
483
|
+
readonly THREE_D_LIGHT: "3dLight";
|
|
484
|
+
readonly INFO_TEXT: "infoText";
|
|
485
|
+
readonly INFO_BK: "infoBk";
|
|
486
|
+
readonly HOT_LIGHT: "hotLight";
|
|
487
|
+
readonly GRADIENT_ACTIVE_CAPTION: "gradientActiveCaption";
|
|
488
|
+
readonly GRADIENT_INACTIVE_CAPTION: "gradientInactiveCaption";
|
|
489
|
+
readonly MENU_HIGHLIGHT: "menuHighlight";
|
|
490
|
+
readonly MENU_BAR: "menuBar";
|
|
491
|
+
};
|
|
492
|
+
/**
|
|
493
|
+
* Options for system color.
|
|
494
|
+
*/
|
|
495
|
+
interface SystemColorOptions {
|
|
496
|
+
/** System color value */
|
|
497
|
+
readonly value: (typeof SystemColor)[keyof typeof SystemColor];
|
|
498
|
+
/** Last known RGB color value (optional fallback) */
|
|
499
|
+
readonly lastClr?: string;
|
|
500
|
+
/** Optional color transforms */
|
|
501
|
+
readonly transforms?: ColorTransformOptions;
|
|
502
|
+
}
|
|
503
|
+
/**
|
|
504
|
+
* Creates a system color element.
|
|
505
|
+
*
|
|
506
|
+
* References a system-defined UI color (e.g., window background, button face).
|
|
507
|
+
*
|
|
508
|
+
* ## XSD Schema
|
|
509
|
+
* ```xml
|
|
510
|
+
* <xsd:complexType name="CT_SystemColor">
|
|
511
|
+
* <xsd:sequence>
|
|
512
|
+
* <xsd:group ref="EG_ColorTransform" minOccurs="0" maxOccurs="unbounded"/>
|
|
513
|
+
* </xsd:sequence>
|
|
514
|
+
* <xsd:attribute name="val" type="ST_SystemColorVal" use="required"/>
|
|
515
|
+
* <xsd:attribute name="lastClr" type="s:ST_HexColorRGB" use="optional"/>
|
|
516
|
+
* </xsd:complexType>
|
|
517
|
+
* ```
|
|
518
|
+
*/
|
|
519
|
+
declare const createSystemColor: (options: SystemColorOptions) => XmlComponent;
|
|
520
|
+
//#endregion
|
|
521
|
+
//#region src/drawingml/color/solid-fill.d.ts
|
|
522
|
+
/**
|
|
523
|
+
* Union type for all color options supported by solid fill.
|
|
524
|
+
*
|
|
525
|
+
* Extends the original pattern with additional color types:
|
|
526
|
+
* RGB, scheme, HSL, system, and preset colors.
|
|
527
|
+
*/
|
|
528
|
+
type SolidFillOptions = ScRgbColorOptions | RgbColorOptions | SchemeColorOptions | HslColorOptions | SystemColorOptions | PresetColorOptions;
|
|
529
|
+
declare const createColorElement: (color: SolidFillOptions) => XmlComponent;
|
|
530
|
+
/**
|
|
531
|
+
* Creates a solid fill element.
|
|
532
|
+
*
|
|
533
|
+
* Specifies a solid color fill using any supported color type.
|
|
534
|
+
*
|
|
535
|
+
* ## XSD Schema
|
|
536
|
+
* ```xml
|
|
537
|
+
* <xsd:complexType name="CT_SolidColorFillProperties">
|
|
538
|
+
* <xsd:sequence>
|
|
539
|
+
* <xsd:group ref="EG_ColorChoice" minOccurs="0"/>
|
|
540
|
+
* <xsd:group ref="EG_EffectProperties" minOccurs="0"/>
|
|
541
|
+
* </xsd:sequence>
|
|
542
|
+
* </xsd:complexType>
|
|
543
|
+
* ```
|
|
544
|
+
*
|
|
545
|
+
* @example
|
|
546
|
+
* ```typescript
|
|
547
|
+
* // RGB solid fill
|
|
548
|
+
* const fill = createSolidFill({ value: "FF0000" });
|
|
549
|
+
* // Scheme solid fill with tint
|
|
550
|
+
* const schemeFill = createSolidFill({
|
|
551
|
+
* value: SchemeColor.ACCENT1, transforms: { tint: 40000 },
|
|
552
|
+
* });
|
|
553
|
+
* // HSL solid fill
|
|
554
|
+
* const hslFill = createSolidFill({ hue: 120000, saturation: 100000, luminance: 50000 });
|
|
555
|
+
* ```
|
|
556
|
+
*/
|
|
557
|
+
declare const createSolidFill: (options: SolidFillOptions) => XmlComponent;
|
|
558
|
+
//#endregion
|
|
559
|
+
//#region src/drawingml/blip/blip-effects.d.ts
|
|
560
|
+
/**
|
|
561
|
+
* Options for luminance (brightness/contrast) effect.
|
|
562
|
+
*
|
|
563
|
+
* ## XSD: CT_LuminanceEffect
|
|
564
|
+
* ```xml
|
|
565
|
+
* <xsd:attribute name="bright" type="ST_FixedPercentage" default="0%"/>
|
|
566
|
+
* <xsd:attribute name="contrast" type="ST_FixedPercentage" default="0%"/>
|
|
567
|
+
* ```
|
|
568
|
+
*/
|
|
569
|
+
interface LuminanceEffectOptions$1 {
|
|
570
|
+
/** Brightness adjustment in percentage points (-100 to 100). Default 0. */
|
|
571
|
+
readonly bright?: number;
|
|
572
|
+
/** Contrast adjustment in percentage points (-100 to 100). Default 0. */
|
|
573
|
+
readonly contrast?: number;
|
|
574
|
+
}
|
|
575
|
+
/**
|
|
576
|
+
* Options for HSL effect.
|
|
577
|
+
*
|
|
578
|
+
* ## XSD: CT_HSLEffect
|
|
579
|
+
* ```xml
|
|
580
|
+
* <xsd:attribute name="hue" type="ST_PositiveFixedAngle" default="0"/>
|
|
581
|
+
* <xsd:attribute name="sat" type="ST_FixedPercentage" default="0%"/>
|
|
582
|
+
* <xsd:attribute name="lum" type="ST_FixedPercentage" default="0%"/>
|
|
583
|
+
* ```
|
|
584
|
+
*/
|
|
585
|
+
interface HSLEffectOptions$1 {
|
|
586
|
+
/** Hue rotation in 60000ths of a degree. Default 0. */
|
|
587
|
+
readonly hue?: number;
|
|
588
|
+
/** Saturation adjustment in percentage points (-100 to 100). Default 0. */
|
|
589
|
+
readonly saturation?: number;
|
|
590
|
+
/** Luminance adjustment in percentage points (-100 to 100). Default 0. */
|
|
591
|
+
readonly luminance?: number;
|
|
592
|
+
}
|
|
593
|
+
/**
|
|
594
|
+
* Options for tint effect.
|
|
595
|
+
*
|
|
596
|
+
* ## XSD: CT_TintEffect
|
|
597
|
+
* ```xml
|
|
598
|
+
* <xsd:attribute name="hue" type="ST_PositiveFixedAngle" default="0"/>
|
|
599
|
+
* <xsd:attribute name="amt" type="ST_FixedPercentage" default="0%"/>
|
|
600
|
+
* ```
|
|
601
|
+
*/
|
|
602
|
+
interface TintEffectOptions$1 {
|
|
603
|
+
/** Hue in 60000ths of a degree. Default 0. */
|
|
604
|
+
readonly hue?: number;
|
|
605
|
+
/** Amount in percentage points (0 to 100). Default 0. */
|
|
606
|
+
readonly amount?: number;
|
|
607
|
+
}
|
|
608
|
+
/**
|
|
609
|
+
* Options for duotone effect.
|
|
610
|
+
*
|
|
611
|
+
* ## XSD: CT_DuotoneEffect
|
|
612
|
+
* ```xml
|
|
613
|
+
* <xsd:group ref="EG_ColorChoice" minOccurs="2" maxOccurs="2"/>
|
|
614
|
+
* ```
|
|
615
|
+
*/
|
|
616
|
+
interface DuotoneEffectOptions$1 {
|
|
617
|
+
/** First color (dark). */
|
|
618
|
+
readonly color1: SolidFillOptions;
|
|
619
|
+
/** Second color (light). */
|
|
620
|
+
readonly color2: SolidFillOptions;
|
|
621
|
+
}
|
|
622
|
+
/**
|
|
623
|
+
* Options for biLevel (black & white threshold) effect.
|
|
624
|
+
*
|
|
625
|
+
* ## XSD: CT_BiLevelEffect
|
|
626
|
+
* ```xml
|
|
627
|
+
* <xsd:attribute name="thresh" type="ST_PositiveFixedPercentage" use="required"/>
|
|
628
|
+
* ```
|
|
629
|
+
*/
|
|
630
|
+
interface BiLevelEffectOptions {
|
|
631
|
+
/** Threshold percentage (0 to 100). Pixels above are white, below are black. */
|
|
632
|
+
readonly threshold: number;
|
|
633
|
+
}
|
|
634
|
+
/**
|
|
635
|
+
* Options for alpha replace effect.
|
|
636
|
+
*
|
|
637
|
+
* ## XSD: CT_AlphaReplaceEffect
|
|
638
|
+
* ```xml
|
|
639
|
+
* <xsd:attribute name="a" type="ST_PositiveFixedPercentage" use="required"/>
|
|
640
|
+
* ```
|
|
641
|
+
*/
|
|
642
|
+
interface AlphaReplaceEffectOptions$1 {
|
|
643
|
+
/** Alpha percentage (0 = fully transparent, 100 = fully opaque). */
|
|
644
|
+
readonly amount: number;
|
|
645
|
+
}
|
|
646
|
+
/**
|
|
647
|
+
* Options for alpha bi-level effect.
|
|
648
|
+
*
|
|
649
|
+
* ## XSD: CT_AlphaBiLevelEffect
|
|
650
|
+
* ```xml
|
|
651
|
+
* <xsd:attribute name="thresh" type="ST_PositiveFixedPercentage" use="required"/>
|
|
652
|
+
* ```
|
|
653
|
+
*/
|
|
654
|
+
interface AlphaBiLevelEffectOptions$1 {
|
|
655
|
+
/** Threshold percentage (0 to 100). Alpha above is fully opaque, below is fully transparent. */
|
|
656
|
+
readonly threshold: number;
|
|
657
|
+
}
|
|
658
|
+
/**
|
|
659
|
+
* Options for alpha modulate fixed effect.
|
|
660
|
+
*
|
|
661
|
+
* ## XSD: CT_AlphaModulateFixedEffect
|
|
662
|
+
* ```xml
|
|
663
|
+
* <xsd:attribute name="amt" type="ST_PositivePercentage" default="100%"/>
|
|
664
|
+
* ```
|
|
665
|
+
*/
|
|
666
|
+
interface AlphaModulateFixedEffectOptions$1 {
|
|
667
|
+
/** Alpha amount in percentage (0 to 100). Default 100. */
|
|
668
|
+
readonly amount?: number;
|
|
669
|
+
}
|
|
670
|
+
/**
|
|
671
|
+
* Options for color change effect.
|
|
672
|
+
*
|
|
673
|
+
* ## XSD: CT_ColorChangeEffect
|
|
674
|
+
* ```xml
|
|
675
|
+
* <xsd:element name="clrFrom" type="CT_Color"/>
|
|
676
|
+
* <xsd:element name="clrTo" type="CT_Color"/>
|
|
677
|
+
* <xsd:attribute name="useA" type="xsd:boolean" default="true"/>
|
|
678
|
+
* ```
|
|
679
|
+
*/
|
|
680
|
+
interface ColorChangeEffectOptions$1 {
|
|
681
|
+
/** Source color to change from. */
|
|
682
|
+
readonly from: SolidFillOptions;
|
|
683
|
+
/** Target color to change to. */
|
|
684
|
+
readonly to: SolidFillOptions;
|
|
685
|
+
/** Whether to use alpha channel. Default true. */
|
|
686
|
+
readonly useAlpha?: boolean;
|
|
687
|
+
}
|
|
688
|
+
/**
|
|
689
|
+
* Options for color replace effect.
|
|
690
|
+
*
|
|
691
|
+
* ## XSD: CT_ColorReplaceEffect
|
|
692
|
+
* ```xml
|
|
693
|
+
* <xsd:group ref="EG_ColorChoice" minOccurs="1" maxOccurs="1"/>
|
|
694
|
+
* ```
|
|
695
|
+
*/
|
|
696
|
+
interface ColorReplaceEffectOptions {
|
|
697
|
+
/** Replacement color. */
|
|
698
|
+
readonly color: SolidFillOptions;
|
|
699
|
+
}
|
|
700
|
+
/**
|
|
701
|
+
* Options for blur effect on blip.
|
|
702
|
+
*
|
|
703
|
+
* ## XSD: CT_BlurEffect
|
|
704
|
+
* ```xml
|
|
705
|
+
* <xsd:attribute name="rad" type="ST_PositiveCoordinate" default="0"/>
|
|
706
|
+
* <xsd:attribute name="grow" type="xsd:boolean" default="true"/>
|
|
707
|
+
* ```
|
|
708
|
+
*/
|
|
709
|
+
interface BlipBlurEffectOptions {
|
|
710
|
+
/** Blur radius in EMUs. Default 0. */
|
|
711
|
+
readonly radius?: number;
|
|
712
|
+
/** Whether to grow the blur boundary. Default true. */
|
|
713
|
+
readonly grow?: boolean;
|
|
714
|
+
}
|
|
715
|
+
/**
|
|
716
|
+
* All blip image adjustment effects.
|
|
717
|
+
*/
|
|
718
|
+
interface BlipEffectsOptions {
|
|
719
|
+
/** Grayscale effect (no options needed). */
|
|
720
|
+
readonly grayscale?: boolean;
|
|
721
|
+
/** Luminance (brightness/contrast) effect. */
|
|
722
|
+
readonly luminance?: LuminanceEffectOptions$1;
|
|
723
|
+
/** HSL adjustment effect. */
|
|
724
|
+
readonly hsl?: HSLEffectOptions$1;
|
|
725
|
+
/** Tint effect. */
|
|
726
|
+
readonly tint?: TintEffectOptions$1;
|
|
727
|
+
/** Duotone effect (two-color mapping). */
|
|
728
|
+
readonly duotone?: DuotoneEffectOptions$1;
|
|
729
|
+
/** Black & white threshold effect. */
|
|
730
|
+
readonly biLevel?: BiLevelEffectOptions;
|
|
731
|
+
/** Alpha ceiling effect (no options needed). */
|
|
732
|
+
readonly alphaCeiling?: boolean;
|
|
733
|
+
/** Alpha floor effect (no options needed). */
|
|
734
|
+
readonly alphaFloor?: boolean;
|
|
735
|
+
/** Alpha inverse effect (with optional color). */
|
|
736
|
+
readonly alphaInverse?: SolidFillOptions;
|
|
737
|
+
/** Alpha modulate fixed effect. */
|
|
738
|
+
readonly alphaModFix?: AlphaModulateFixedEffectOptions$1;
|
|
739
|
+
/** Alpha replace effect. */
|
|
740
|
+
readonly alphaRepl?: AlphaReplaceEffectOptions$1;
|
|
741
|
+
/** Alpha bi-level effect. */
|
|
742
|
+
readonly alphaBiLevel?: AlphaBiLevelEffectOptions$1;
|
|
743
|
+
/** Color change effect. */
|
|
744
|
+
readonly colorChange?: ColorChangeEffectOptions$1;
|
|
745
|
+
/** Color replace effect. */
|
|
746
|
+
readonly colorRepl?: ColorReplaceEffectOptions;
|
|
747
|
+
/** Blur effect on blip. */
|
|
748
|
+
readonly blur?: BlipBlurEffectOptions;
|
|
749
|
+
}
|
|
750
|
+
/**
|
|
751
|
+
* Creates blip effect elements from BlipEffectsOptions.
|
|
752
|
+
*
|
|
753
|
+
* @returns Array of XML components representing blip effects
|
|
754
|
+
*/
|
|
755
|
+
declare const createBlipEffects: (options: BlipEffectsOptions) => XmlComponent[];
|
|
756
|
+
//#endregion
|
|
757
|
+
//#region src/drawingml/blip/source-rectangle.d.ts
|
|
758
|
+
/**
|
|
759
|
+
* Options for source rectangle cropping.
|
|
760
|
+
*
|
|
761
|
+
* Each value is a percentage (0-100000) of the image dimension to crop.
|
|
762
|
+
* The values represent the inset from each edge.
|
|
763
|
+
*/
|
|
764
|
+
interface SourceRectangleOptions {
|
|
765
|
+
/** Left inset percentage (0-100000) */
|
|
766
|
+
readonly left?: number;
|
|
767
|
+
/** Top inset percentage (0-100000) */
|
|
768
|
+
readonly top?: number;
|
|
769
|
+
/** Right inset percentage (0-100000) */
|
|
770
|
+
readonly right?: number;
|
|
771
|
+
/** Bottom inset percentage (0-100000) */
|
|
772
|
+
readonly bottom?: number;
|
|
773
|
+
}
|
|
774
|
+
/**
|
|
775
|
+
* Creates a source rectangle element for blip fill cropping.
|
|
776
|
+
*
|
|
777
|
+
* This element specifies a portion of the blip (image) to use as the fill.
|
|
778
|
+
* When no options are provided, the entire blip is used.
|
|
779
|
+
*
|
|
780
|
+
* Reference: ISO/IEC 29500-4, dml-main.xsd, CT_RelativeRect
|
|
781
|
+
*
|
|
782
|
+
* ## XSD Schema
|
|
783
|
+
* ```xml
|
|
784
|
+
* <xsd:complexType name="CT_RelativeRect">
|
|
785
|
+
* <xsd:attribute name="l" type="ST_Percentage" use="optional" default="0"/>
|
|
786
|
+
* <xsd:attribute name="t" type="ST_Percentage" use="optional" default="0"/>
|
|
787
|
+
* <xsd:attribute name="r" type="ST_Percentage" use="optional" default="0"/>
|
|
788
|
+
* <xsd:attribute name="b" type="ST_Percentage" use="optional" default="0"/>
|
|
789
|
+
* </xsd:complexType>
|
|
790
|
+
* ```
|
|
791
|
+
*
|
|
792
|
+
* @example
|
|
793
|
+
* ```typescript
|
|
794
|
+
* // Crop 10% from left and right
|
|
795
|
+
* createSourceRectangle({ left: 10000, right: 10000 });
|
|
796
|
+
* ```
|
|
797
|
+
*/
|
|
798
|
+
declare const createSourceRectangle: (options?: SourceRectangleOptions) => BuilderElement<{}>;
|
|
799
|
+
//#endregion
|
|
800
|
+
//#region src/drawingml/blip/tile.d.ts
|
|
801
|
+
/**
|
|
802
|
+
* Tile flip mode for tiling images.
|
|
803
|
+
*
|
|
804
|
+
* Specifies whether the image is flipped along the x-axis, y-axis,
|
|
805
|
+
* both axes, or not at all when tiling.
|
|
806
|
+
*/
|
|
807
|
+
declare const TileFlipMode$1: {
|
|
808
|
+
/** No flipping */readonly NONE: "none"; /** Flip along x-axis */
|
|
809
|
+
readonly X: "x"; /** Flip along y-axis */
|
|
810
|
+
readonly Y: "y"; /** Flip along both axes */
|
|
811
|
+
readonly XY: "xy";
|
|
812
|
+
};
|
|
813
|
+
/**
|
|
814
|
+
* Tile alignment within the shape.
|
|
815
|
+
*
|
|
816
|
+
* Specifies the anchor position of the first tile relative to the shape.
|
|
817
|
+
*/
|
|
818
|
+
declare const TileAlignment: {
|
|
819
|
+
/** Top-left corner */readonly TOP_LEFT: "topLeft"; /** Top center */
|
|
820
|
+
readonly TOP: "top"; /** Top-right corner */
|
|
821
|
+
readonly TOP_RIGHT: "topRight"; /** Middle-left */
|
|
822
|
+
readonly LEFT: "left"; /** Center */
|
|
823
|
+
readonly CENTER: "center"; /** Middle-right */
|
|
824
|
+
readonly RIGHT: "right"; /** Bottom-left corner */
|
|
825
|
+
readonly BOTTOM_LEFT: "bottomLeft"; /** Bottom center */
|
|
826
|
+
readonly BOTTOM: "bottom"; /** Bottom-right corner */
|
|
827
|
+
readonly BOTTOM_RIGHT: "bottomRight";
|
|
828
|
+
};
|
|
829
|
+
/**
|
|
830
|
+
* Options for tile fill mode.
|
|
831
|
+
*
|
|
832
|
+
* Configures how an image is tiled (repeated) to fill a shape.
|
|
833
|
+
*/
|
|
834
|
+
interface TileOptions {
|
|
835
|
+
/** Horizontal offset for the tile origin (in EMUs) */
|
|
836
|
+
readonly tx?: number;
|
|
837
|
+
/** Vertical offset for the tile origin (in EMUs) */
|
|
838
|
+
readonly ty?: number;
|
|
839
|
+
/** Horizontal scale factor as percentage (e.g., 50 = 50%) */
|
|
840
|
+
readonly sx?: number;
|
|
841
|
+
/** Vertical scale factor as percentage (e.g., 50 = 50%) */
|
|
842
|
+
readonly sy?: number;
|
|
843
|
+
/** Flip mode for alternating tiles */
|
|
844
|
+
readonly flip?: (typeof TileFlipMode$1)[keyof typeof TileFlipMode$1];
|
|
845
|
+
/** Alignment of the first tile within the shape */
|
|
846
|
+
readonly align?: (typeof TileAlignment)[keyof typeof TileAlignment];
|
|
847
|
+
}
|
|
848
|
+
/**
|
|
849
|
+
* Creates a tile fill mode element for blip fills.
|
|
850
|
+
*
|
|
851
|
+
* When a blip fill uses tile mode, the image is repeated (tiled) to fill
|
|
852
|
+
* the shape instead of being stretched. This element controls the tiling
|
|
853
|
+
* parameters such as offset, scale, flip, and alignment.
|
|
854
|
+
*
|
|
855
|
+
* Reference: ISO/IEC 29500-4, dml-main.xsd, CT_TileInfoProperties
|
|
856
|
+
*
|
|
857
|
+
* ## XSD Schema
|
|
858
|
+
* ```xml
|
|
859
|
+
* <xsd:complexType name="CT_TileInfoProperties">
|
|
860
|
+
* <xsd:attribute name="tx" type="ST_Coordinate" use="optional"/>
|
|
861
|
+
* <xsd:attribute name="ty" type="ST_Coordinate" use="optional"/>
|
|
862
|
+
* <xsd:attribute name="sx" type="ST_Percentage" use="optional"/>
|
|
863
|
+
* <xsd:attribute name="sy" type="ST_Percentage" use="optional"/>
|
|
864
|
+
* <xsd:attribute name="flip" type="ST_TileFlipMode" default="none"/>
|
|
865
|
+
* <xsd:attribute name="algn" type="ST_RectAlignment" use="optional"/>
|
|
866
|
+
* </xsd:complexType>
|
|
867
|
+
* ```
|
|
868
|
+
*
|
|
869
|
+
* @example
|
|
870
|
+
* ```typescript
|
|
871
|
+
* // Tile with 50% scale
|
|
872
|
+
* createTileInfo({ sx: 50, sy: 50 });
|
|
873
|
+
* // Tile with flip and alignment
|
|
874
|
+
* createTileInfo({ flip: "XY", align: "CENTER" });
|
|
875
|
+
* ```
|
|
876
|
+
*/
|
|
877
|
+
declare const createTileInfo: (options?: TileOptions) => BuilderElement<{}>;
|
|
878
|
+
//#endregion
|
|
879
|
+
//#region src/drawingml/fill/gradient-fill.d.ts
|
|
880
|
+
/**
|
|
881
|
+
* Gradient stop position (0-100000, representing 0%-100%).
|
|
882
|
+
*/
|
|
883
|
+
interface GradientStop {
|
|
884
|
+
/** Position of the color stop (0-100000) */
|
|
885
|
+
readonly position: number;
|
|
886
|
+
/** Color at this stop */
|
|
887
|
+
readonly color: SolidFillOptions;
|
|
888
|
+
}
|
|
889
|
+
/**
|
|
890
|
+
* Path shade type for radial gradients.
|
|
891
|
+
*/
|
|
892
|
+
declare const PathShadeType: {
|
|
893
|
+
/** Follow shape path */readonly SHAPE: "shape"; /** Circular gradient */
|
|
894
|
+
readonly CIRCLE: "circle"; /** Rectangular gradient */
|
|
895
|
+
readonly RECT: "rect";
|
|
896
|
+
};
|
|
897
|
+
/**
|
|
898
|
+
* Tile flip mode for gradient fill.
|
|
899
|
+
*
|
|
900
|
+
* ## XSD Schema
|
|
901
|
+
* ```xml
|
|
902
|
+
* <xsd:simpleType name="ST_TileFlipMode">
|
|
903
|
+
* <xsd:restriction base="xsd:string">
|
|
904
|
+
* <xsd:enumeration value="none"/>
|
|
905
|
+
* <xsd:enumeration value="x"/>
|
|
906
|
+
* <xsd:enumeration value="y"/>
|
|
907
|
+
* <xsd:enumeration value="xy"/>
|
|
908
|
+
* </xsd:restriction>
|
|
909
|
+
* </xsd:simpleType>
|
|
910
|
+
* ```
|
|
911
|
+
*/
|
|
912
|
+
declare const TileFlipMode: {
|
|
913
|
+
/** No flip */readonly NONE: "none"; /** Flip horizontally */
|
|
914
|
+
readonly X: "x"; /** Flip vertically */
|
|
915
|
+
readonly Y: "y"; /** Flip both horizontally and vertically */
|
|
916
|
+
readonly XY: "xy";
|
|
917
|
+
};
|
|
918
|
+
/**
|
|
919
|
+
* Options for linear gradient shading.
|
|
920
|
+
*/
|
|
921
|
+
interface LinearShadeOptions {
|
|
922
|
+
/** Angle in 60,000ths of a degree (e.g., 5400000 = 90°) */
|
|
923
|
+
readonly angle?: number;
|
|
924
|
+
/** Whether the angle scales with the shape */
|
|
925
|
+
readonly scaled?: boolean;
|
|
926
|
+
}
|
|
927
|
+
/**
|
|
928
|
+
* Relative rectangle (CT_RelativeRect) with percentage offsets.
|
|
929
|
+
*
|
|
930
|
+
* ## XSD Schema
|
|
931
|
+
* ```xml
|
|
932
|
+
* <xsd:complexType name="CT_RelativeRect">
|
|
933
|
+
* <xsd:attribute name="l" type="ST_Percentage" default="0%"/>
|
|
934
|
+
* <xsd:attribute name="t" type="ST_Percentage" default="0%"/>
|
|
935
|
+
* <xsd:attribute name="r" type="ST_Percentage" default="0%"/>
|
|
936
|
+
* <xsd:attribute name="b" type="ST_Percentage" default="0%"/>
|
|
937
|
+
* </xsd:complexType>
|
|
938
|
+
* ```
|
|
939
|
+
*/
|
|
940
|
+
interface RelativeRect {
|
|
941
|
+
/** Left offset percentage (e.g., "0%") */
|
|
942
|
+
readonly left?: string;
|
|
943
|
+
/** Top offset percentage (e.g., "0%") */
|
|
944
|
+
readonly top?: string;
|
|
945
|
+
/** Right offset percentage (e.g., "0%") */
|
|
946
|
+
readonly right?: string;
|
|
947
|
+
/** Bottom offset percentage (e.g., "0%") */
|
|
948
|
+
readonly bottom?: string;
|
|
949
|
+
}
|
|
950
|
+
/**
|
|
951
|
+
* Options for path (radial) gradient shading.
|
|
952
|
+
*/
|
|
953
|
+
interface PathShadeOptions {
|
|
954
|
+
/** Path type */
|
|
955
|
+
readonly path?: (typeof PathShadeType)[keyof typeof PathShadeType];
|
|
956
|
+
/**
|
|
957
|
+
* Fill-to rectangle for path gradient.
|
|
958
|
+
*
|
|
959
|
+
* Defines the rectangle to which the gradient fills.
|
|
960
|
+
*/
|
|
961
|
+
readonly fillToRect?: RelativeRect;
|
|
962
|
+
}
|
|
963
|
+
/**
|
|
964
|
+
* Gradient shade options (linear or path).
|
|
965
|
+
*/
|
|
966
|
+
type GradientShadeOptions = LinearShadeOptions | PathShadeOptions;
|
|
967
|
+
/**
|
|
968
|
+
* Options for gradient fill.
|
|
969
|
+
*
|
|
970
|
+
* ## XSD Schema
|
|
971
|
+
* ```xml
|
|
972
|
+
* <xsd:complexType name="CT_GradientFillProperties">
|
|
973
|
+
* <xsd:sequence>
|
|
974
|
+
* <xsd:element name="gsLst" type="CT_GradientStopList" minOccurs="0"/>
|
|
975
|
+
* <xsd:group ref="EG_ShadeProperties" minOccurs="0"/>
|
|
976
|
+
* <xsd:element name="tileRect" type="CT_RelativeRect" minOccurs="0"/>
|
|
977
|
+
* </xsd:sequence>
|
|
978
|
+
* <xsd:attribute name="flip" type="ST_TileFlipMode" use="optional"/>
|
|
979
|
+
* <xsd:attribute name="rotWithShape" type="xsd:boolean" use="optional"/>
|
|
980
|
+
* </xsd:complexType>
|
|
981
|
+
* ```
|
|
982
|
+
*/
|
|
983
|
+
interface GradientFillOptions {
|
|
984
|
+
/** Gradient color stops (minimum 2) */
|
|
985
|
+
readonly stops: readonly GradientStop[];
|
|
986
|
+
/** Shade type (linear or path) */
|
|
987
|
+
readonly shade?: GradientShadeOptions;
|
|
988
|
+
/**
|
|
989
|
+
* Tile flip mode.
|
|
990
|
+
*
|
|
991
|
+
* Controls how the gradient is flipped when tiled.
|
|
992
|
+
*/
|
|
993
|
+
readonly flip?: (typeof TileFlipMode)[keyof typeof TileFlipMode];
|
|
994
|
+
/**
|
|
995
|
+
* Tile rectangle for gradient tiling.
|
|
996
|
+
*
|
|
997
|
+
* Defines the rectangle used for gradient tiling.
|
|
998
|
+
*/
|
|
999
|
+
readonly tileRect?: RelativeRect;
|
|
1000
|
+
/** Whether gradient rotates with the shape */
|
|
1001
|
+
readonly rotateWithShape?: boolean;
|
|
1002
|
+
}
|
|
1003
|
+
/**
|
|
1004
|
+
* Creates a gradient stop element (a:gs).
|
|
1005
|
+
*
|
|
1006
|
+
* @example
|
|
1007
|
+
* ```typescript
|
|
1008
|
+
* createGradientStop({ position: 0, color: { value: "FF0000" } });
|
|
1009
|
+
* createGradientStop({ position: 100000, color: { value: "0000FF" } });
|
|
1010
|
+
* ```
|
|
1011
|
+
*/
|
|
1012
|
+
declare const createGradientStop: (stop: GradientStop) => XmlComponent;
|
|
1013
|
+
/**
|
|
1014
|
+
* Creates a gradient fill element.
|
|
1015
|
+
*
|
|
1016
|
+
* ## XSD Schema
|
|
1017
|
+
* ```xml
|
|
1018
|
+
* <xsd:complexType name="CT_GradientFillProperties">
|
|
1019
|
+
* <xsd:sequence>
|
|
1020
|
+
* <xsd:element name="gsLst" type="CT_GradientStopList" minOccurs="0"/>
|
|
1021
|
+
* <xsd:group ref="EG_ShadeProperties" minOccurs="0"/>
|
|
1022
|
+
* </xsd:sequence>
|
|
1023
|
+
* <xsd:attribute name="rotWithShape" type="xsd:boolean" use="optional"/>
|
|
1024
|
+
* </xsd:complexType>
|
|
1025
|
+
* ```
|
|
1026
|
+
*
|
|
1027
|
+
* @example
|
|
1028
|
+
* ```typescript
|
|
1029
|
+
* // Linear gradient from red to blue
|
|
1030
|
+
* createGradientFill({
|
|
1031
|
+
* stops: [
|
|
1032
|
+
* { position: 0, color: { value: "FF0000" } },
|
|
1033
|
+
* { position: 100000, color: { value: "0000FF" } },
|
|
1034
|
+
* ],
|
|
1035
|
+
* shade: { angle: 5400000 },
|
|
1036
|
+
* });
|
|
1037
|
+
* ```
|
|
1038
|
+
*/
|
|
1039
|
+
declare const createGradientFill: (options: GradientFillOptions) => XmlComponent;
|
|
1040
|
+
//#endregion
|
|
1041
|
+
//#region src/drawingml/fill/fill-options.d.ts
|
|
1042
|
+
/**
|
|
1043
|
+
* Gradient stop options (simplified API).
|
|
1044
|
+
* Position is 0-100 (percentage), color is a hex string or SolidFillOptions.
|
|
1045
|
+
*/
|
|
1046
|
+
interface GradientStopOptions {
|
|
1047
|
+
readonly position: number;
|
|
1048
|
+
readonly color: string | SolidFillOptions;
|
|
1049
|
+
}
|
|
1050
|
+
/**
|
|
1051
|
+
* Blip fill options (image fill) for DrawingML shapes.
|
|
1052
|
+
*/
|
|
1053
|
+
interface BlipFillConfigOptions {
|
|
1054
|
+
/** Image data (raw bytes) */
|
|
1055
|
+
readonly data: Uint8Array | ArrayBuffer | Buffer;
|
|
1056
|
+
/** Image type */
|
|
1057
|
+
readonly imageType: "png" | "jpg" | "gif" | "bmp" | "tif" | "ico" | "emf" | "wmf";
|
|
1058
|
+
/** DPI of the image */
|
|
1059
|
+
readonly dpi?: number;
|
|
1060
|
+
/** Whether the fill rotates with the shape */
|
|
1061
|
+
readonly rotWithShape?: boolean;
|
|
1062
|
+
/** Image adjustment effects (brightness, contrast, grayscale, etc.) */
|
|
1063
|
+
readonly blipEffects?: BlipEffectsOptions;
|
|
1064
|
+
/** Source rectangle for cropping */
|
|
1065
|
+
readonly srcRect?: SourceRectangleOptions;
|
|
1066
|
+
/** Tile fill mode (if omitted, defaults to stretch) */
|
|
1067
|
+
readonly tile?: TileOptions;
|
|
1068
|
+
}
|
|
1069
|
+
/**
|
|
1070
|
+
* Media data extracted from a blip fill, for registration with the document's media store.
|
|
1071
|
+
*/
|
|
1072
|
+
interface BlipFillMediaData {
|
|
1073
|
+
readonly fileName: string;
|
|
1074
|
+
readonly data: Uint8Array;
|
|
1075
|
+
readonly type: string;
|
|
1076
|
+
}
|
|
1077
|
+
/**
|
|
1078
|
+
* Fill options — discriminated union for DrawingML EG_FillProperties.
|
|
1079
|
+
*
|
|
1080
|
+
* Supports string shorthand for solid fill (most common case).
|
|
1081
|
+
* Color fields accept hex strings or advanced SolidFillOptions
|
|
1082
|
+
* (scheme color, HSL, etc.).
|
|
1083
|
+
*
|
|
1084
|
+
* @example
|
|
1085
|
+
* // Solid fill (shorthand)
|
|
1086
|
+
* fill: "4472C4"
|
|
1087
|
+
* // Solid fill with scheme color
|
|
1088
|
+
* fill: { type: "solid", color: { value: "accent1" } }
|
|
1089
|
+
* // No fill
|
|
1090
|
+
* fill: { type: "none" }
|
|
1091
|
+
* // Gradient fill — linear
|
|
1092
|
+
* fill: { type: "gradient", angle: 90, stops: [{ position: 0, color: "4472C4" }, { position: 100, color: "ED7D31" }] }
|
|
1093
|
+
* // Gradient fill — path (radial)
|
|
1094
|
+
* fill: { type: "gradient", path: "circle", stops: [{ position: 0, color: "FFFFFF" }, { position: 100, color: "4472C4" }] }
|
|
1095
|
+
* // Gradient fill (core API for advanced options)
|
|
1096
|
+
* fill: { type: "gradient", options: { stops: [...], shade: { angle: 5400000 } } }
|
|
1097
|
+
* // Blip fill (image)
|
|
1098
|
+
* fill: { type: "blip", data: imageBuffer, imageType: "png" }
|
|
1099
|
+
* // Pattern fill
|
|
1100
|
+
* fill: { type: "pattern", pattern: "cross", foregroundColor: "FF0000" }
|
|
1101
|
+
* // Group fill
|
|
1102
|
+
* fill: { type: "group" }
|
|
1103
|
+
*/
|
|
1104
|
+
type FillOptions = string | {
|
|
1105
|
+
readonly type: "solid";
|
|
1106
|
+
readonly color: string | SolidFillOptions;
|
|
1107
|
+
} | {
|
|
1108
|
+
readonly type: "none";
|
|
1109
|
+
} | {
|
|
1110
|
+
readonly type: "gradient";
|
|
1111
|
+
readonly angle?: number;
|
|
1112
|
+
readonly scaled?: boolean;
|
|
1113
|
+
readonly path?: "shape" | "circle" | "rect";
|
|
1114
|
+
readonly stops: readonly GradientStopOptions[];
|
|
1115
|
+
} | {
|
|
1116
|
+
readonly type: "gradient";
|
|
1117
|
+
readonly options: GradientFillOptions;
|
|
1118
|
+
} | ({
|
|
1119
|
+
readonly type: "blip";
|
|
1120
|
+
} & BlipFillConfigOptions) | {
|
|
1121
|
+
readonly type: "pattern";
|
|
1122
|
+
readonly pattern: string;
|
|
1123
|
+
readonly foregroundColor?: string | SolidFillOptions;
|
|
1124
|
+
readonly backgroundColor?: string | SolidFillOptions;
|
|
1125
|
+
} | {
|
|
1126
|
+
readonly type: "group";
|
|
1127
|
+
};
|
|
1128
|
+
/**
|
|
1129
|
+
* Extracts media data from a blip fill option, if present.
|
|
1130
|
+
* Returns undefined for non-blip fills.
|
|
1131
|
+
*
|
|
1132
|
+
* The returned data should be registered with the document's media store
|
|
1133
|
+
* during `prepForXml` so the packer can resolve the `{fileName}` placeholder.
|
|
1134
|
+
*/
|
|
1135
|
+
declare const extractBlipFillMedia: (fill: FillOptions) => BlipFillMediaData | undefined;
|
|
1136
|
+
/**
|
|
1137
|
+
* Builds a DrawingML fill XmlComponent from a FillOptions config.
|
|
1138
|
+
*/
|
|
1139
|
+
declare const buildFill: (options: FillOptions) => XmlComponent;
|
|
1140
|
+
//#endregion
|
|
1141
|
+
//#region src/drawingml/fill/no-fill.d.ts
|
|
1142
|
+
/**
|
|
1143
|
+
* Creates a no-fill element.
|
|
1144
|
+
*
|
|
1145
|
+
* Specifies that the outline or shape should have no fill applied.
|
|
1146
|
+
*
|
|
1147
|
+
* ## XSD Schema
|
|
1148
|
+
* ```xml
|
|
1149
|
+
* <xsd:element name="noFill" type="CT_Empty"/>
|
|
1150
|
+
* ```
|
|
1151
|
+
*
|
|
1152
|
+
* @example
|
|
1153
|
+
* ```typescript
|
|
1154
|
+
* const noFill = createNoFill();
|
|
1155
|
+
* ```
|
|
1156
|
+
*/
|
|
1157
|
+
declare const createNoFill: () => XmlComponent;
|
|
1158
|
+
//#endregion
|
|
1159
|
+
//#region src/drawingml/fill/pattern-fill.d.ts
|
|
1160
|
+
/**
|
|
1161
|
+
* Preset pattern values for pattern fill.
|
|
1162
|
+
*
|
|
1163
|
+
* ## XSD Schema
|
|
1164
|
+
* ```xml
|
|
1165
|
+
* <xsd:simpleType name="ST_PresetPatternVal">
|
|
1166
|
+
* <xsd:restriction base="xsd:token">
|
|
1167
|
+
* <xsd:enumeration value="pct5"/> ... <xsd:enumeration value="zigZag"/>
|
|
1168
|
+
* </xsd:restriction>
|
|
1169
|
+
* </xsd:simpleType>
|
|
1170
|
+
* ```
|
|
1171
|
+
*
|
|
1172
|
+
* @publicApi
|
|
1173
|
+
*/
|
|
1174
|
+
declare const PresetPattern: {
|
|
1175
|
+
/** 5% pattern */readonly PCT5: "percent5"; /** 10% pattern */
|
|
1176
|
+
readonly PCT10: "percent10"; /** 20% pattern */
|
|
1177
|
+
readonly PCT20: "percent20"; /** 25% pattern */
|
|
1178
|
+
readonly PCT25: "percent25"; /** 30% pattern */
|
|
1179
|
+
readonly PCT30: "percent30"; /** 40% pattern */
|
|
1180
|
+
readonly PCT40: "percent40"; /** 50% pattern */
|
|
1181
|
+
readonly PCT50: "percent50"; /** 60% pattern */
|
|
1182
|
+
readonly PCT60: "percent60"; /** 70% pattern */
|
|
1183
|
+
readonly PCT70: "percent70"; /** 75% pattern */
|
|
1184
|
+
readonly PCT75: "percent75"; /** 80% pattern */
|
|
1185
|
+
readonly PCT80: "percent80"; /** 90% pattern */
|
|
1186
|
+
readonly PCT90: "percent90"; /** Horizontal lines */
|
|
1187
|
+
readonly HORZ: "horizontal"; /** Vertical lines */
|
|
1188
|
+
readonly VERT: "vertical"; /** Light horizontal lines */
|
|
1189
|
+
readonly LT_HORZ: "lightHorizontal"; /** Light vertical lines */
|
|
1190
|
+
readonly LT_VERT: "lightVertical"; /** Dark horizontal lines */
|
|
1191
|
+
readonly DK_HORZ: "darkHorizontal"; /** Dark vertical lines */
|
|
1192
|
+
readonly DK_VERT: "darkVertical"; /** Narrow horizontal lines */
|
|
1193
|
+
readonly NAR_HORZ: "narrowHorizontal"; /** Narrow vertical lines */
|
|
1194
|
+
readonly NAR_VERT: "narrowVertical"; /** Dashed horizontal lines */
|
|
1195
|
+
readonly DASH_HORZ: "dashedHorizontal"; /** Dashed vertical lines */
|
|
1196
|
+
readonly DASH_VERT: "dashedVertical"; /** Cross pattern (+) */
|
|
1197
|
+
readonly CROSS: "cross"; /** Downward diagonal lines (\) */
|
|
1198
|
+
readonly DN_DIAG: "downDiagonal"; /** Upward diagonal lines (/) */
|
|
1199
|
+
readonly UP_DIAG: "upDiagonal"; /** Light downward diagonal lines */
|
|
1200
|
+
readonly LT_DN_DIAG: "lightDownDiagonal"; /** Light upward diagonal lines */
|
|
1201
|
+
readonly LT_UP_DIAG: "lightUpDiagonal"; /** Dark downward diagonal lines */
|
|
1202
|
+
readonly DK_DN_DIAG: "darkDownDiagonal"; /** Dark upward diagonal lines */
|
|
1203
|
+
readonly DK_UP_DIAG: "darkUpDiagonal"; /** Wide downward diagonal lines */
|
|
1204
|
+
readonly WD_DN_DIAG: "wideDownDiagonal"; /** Wide upward diagonal lines */
|
|
1205
|
+
readonly WD_UP_DIAG: "wideUpDiagonal"; /** Dashed downward diagonal lines */
|
|
1206
|
+
readonly DASH_DN_DIAG: "dashedDownDiagonal"; /** Dashed upward diagonal lines */
|
|
1207
|
+
readonly DASH_UP_DIAG: "dashedUpDiagonal"; /** Diagonal cross pattern (X) */
|
|
1208
|
+
readonly DIAG_CROSS: "diagonalCross"; /** Small checkerboard */
|
|
1209
|
+
readonly SM_CHECK: "smallChecker"; /** Large checkerboard */
|
|
1210
|
+
readonly LG_CHECK: "largeChecker"; /** Small grid */
|
|
1211
|
+
readonly SM_GRID: "smallGrid"; /** Large grid */
|
|
1212
|
+
readonly LG_GRID: "largeGrid"; /** Dot grid */
|
|
1213
|
+
readonly DOT_GRID: "dotGrid"; /** Small confetti */
|
|
1214
|
+
readonly SM_CONFETTI: "smallConfetti"; /** Large confetti */
|
|
1215
|
+
readonly LG_CONFETTI: "largeConfetti"; /** Horizontal brick pattern */
|
|
1216
|
+
readonly HORZ_BRICK: "horizontalBrick"; /** Diagonal brick pattern */
|
|
1217
|
+
readonly DIAG_BRICK: "diagonalBrick"; /** Solid diamond */
|
|
1218
|
+
readonly SOLID_DMND: "solidDiamond"; /** Open diamond */
|
|
1219
|
+
readonly OPEN_DMND: "openDiamond"; /** Dotted diamond */
|
|
1220
|
+
readonly DOT_DMND: "dottedDiamond"; /** Plaid pattern */
|
|
1221
|
+
readonly PLAID: "plaid"; /** Sphere pattern */
|
|
1222
|
+
readonly SPHERE: "sphere"; /** Weave pattern */
|
|
1223
|
+
readonly WEAVE: "weave"; /** Divot pattern */
|
|
1224
|
+
readonly DIVOT: "divot"; /** Shingle pattern */
|
|
1225
|
+
readonly SHINGLE: "shingle"; /** Wave pattern */
|
|
1226
|
+
readonly WAVE: "wave"; /** Trellis pattern */
|
|
1227
|
+
readonly TRELLIS: "trellis"; /** Zigzag pattern */
|
|
1228
|
+
readonly ZIG_ZAG: "zigZag";
|
|
1229
|
+
};
|
|
1230
|
+
/**
|
|
1231
|
+
* Options for pattern fill.
|
|
1232
|
+
*
|
|
1233
|
+
* ## XSD Schema
|
|
1234
|
+
* ```xml
|
|
1235
|
+
* <xsd:complexType name="CT_PatternFillProperties">
|
|
1236
|
+
* <xsd:sequence>
|
|
1237
|
+
* <xsd:element name="fgClr" type="CT_Color" minOccurs="0"/>
|
|
1238
|
+
* <xsd:element name="bgClr" type="CT_Color" minOccurs="0"/>
|
|
1239
|
+
* </xsd:sequence>
|
|
1240
|
+
* <xsd:attribute name="prst" type="ST_PresetPatternVal" use="optional"/>
|
|
1241
|
+
* </xsd:complexType>
|
|
1242
|
+
* ```
|
|
1243
|
+
*/
|
|
1244
|
+
interface PatternFillOptions {
|
|
1245
|
+
/** Preset pattern type */
|
|
1246
|
+
readonly pattern: (typeof PresetPattern)[keyof typeof PresetPattern];
|
|
1247
|
+
/** Foreground color */
|
|
1248
|
+
readonly foregroundColor?: SolidFillOptions;
|
|
1249
|
+
/** Background color */
|
|
1250
|
+
readonly backgroundColor?: SolidFillOptions;
|
|
1251
|
+
}
|
|
1252
|
+
/**
|
|
1253
|
+
* Creates a pattern fill element (a:pattFill).
|
|
1254
|
+
*
|
|
1255
|
+
* Specifies a pattern fill using preset patterns with optional
|
|
1256
|
+
* foreground and background colors.
|
|
1257
|
+
*
|
|
1258
|
+
* ## XSD Schema
|
|
1259
|
+
* ```xml
|
|
1260
|
+
* <xsd:complexType name="CT_PatternFillProperties">
|
|
1261
|
+
* <xsd:sequence>
|
|
1262
|
+
* <xsd:element name="fgClr" type="CT_Color" minOccurs="0"/>
|
|
1263
|
+
* <xsd:element name="bgClr" type="CT_Color" minOccurs="0"/>
|
|
1264
|
+
* </xsd:sequence>
|
|
1265
|
+
* <xsd:attribute name="prst" type="ST_PresetPatternVal" use="optional"/>
|
|
1266
|
+
* </xsd:complexType>
|
|
1267
|
+
* ```
|
|
1268
|
+
*
|
|
1269
|
+
* @example
|
|
1270
|
+
* ```typescript
|
|
1271
|
+
* // Simple crosshatch pattern
|
|
1272
|
+
* createPatternFill({ pattern: PresetPattern.CROSS });
|
|
1273
|
+
* // Pattern with foreground color
|
|
1274
|
+
* createPatternFill({
|
|
1275
|
+
* pattern: PresetPattern.DIAG_CROSS,
|
|
1276
|
+
* foregroundColor: { value: "FF0000" },
|
|
1277
|
+
* });
|
|
1278
|
+
* // Pattern with foreground and background colors
|
|
1279
|
+
* createPatternFill({
|
|
1280
|
+
* pattern: PresetPattern.HORZ,
|
|
1281
|
+
* foregroundColor: { value: "0000FF" },
|
|
1282
|
+
* backgroundColor: { value: "FFFF00" },
|
|
1283
|
+
* });
|
|
1284
|
+
* ```
|
|
1285
|
+
*/
|
|
1286
|
+
declare const createPatternFill: (options: PatternFillOptions) => XmlComponent;
|
|
1287
|
+
//#endregion
|
|
1288
|
+
//#region src/drawingml/fill/group-fill.d.ts
|
|
1289
|
+
/**
|
|
1290
|
+
* Creates a group fill element (a:grpFill).
|
|
1291
|
+
*
|
|
1292
|
+
* This element specifies that the shape should inherit its fill
|
|
1293
|
+
* from the parent group shape. This is useful when shapes are
|
|
1294
|
+
* grouped together and should share the same fill.
|
|
1295
|
+
*
|
|
1296
|
+
* ## XSD Schema
|
|
1297
|
+
* ```xml
|
|
1298
|
+
* <xsd:complexType name="CT_GroupFillProperties"/>
|
|
1299
|
+
* ```
|
|
1300
|
+
*
|
|
1301
|
+
* @example
|
|
1302
|
+
* ```typescript
|
|
1303
|
+
* // Shape inherits fill from parent group
|
|
1304
|
+
* createGroupFill();
|
|
1305
|
+
* ```
|
|
1306
|
+
*/
|
|
1307
|
+
declare const createGroupFill: () => XmlComponent;
|
|
1308
|
+
//#endregion
|
|
1309
|
+
//#region src/drawingml/outline/custom-dash.d.ts
|
|
1310
|
+
/**
|
|
1311
|
+
* A single dash stop in a custom dash pattern.
|
|
1312
|
+
*
|
|
1313
|
+
* ## XSD Schema
|
|
1314
|
+
* ```xml
|
|
1315
|
+
* <xsd:complexType name="CT_DashStop">
|
|
1316
|
+
* <xsd:attribute name="d" type="ST_PositivePercentage" use="required"/>
|
|
1317
|
+
* <xsd:attribute name="sp" type="ST_PositivePercentage" use="required"/>
|
|
1318
|
+
* </xsd:complexType>
|
|
1319
|
+
* ```
|
|
1320
|
+
*
|
|
1321
|
+
* `ST_PositivePercentage` is a string matching `[0-9]+(\.[0-9]+)?%`
|
|
1322
|
+
* (e.g., `"100%"`, `"500%"`, `"50.5%"`).
|
|
1323
|
+
*
|
|
1324
|
+
* @example
|
|
1325
|
+
* ```typescript
|
|
1326
|
+
* // A dash stop with 500% dash length and 200% space length
|
|
1327
|
+
* { d: "500%", sp: "200%" }
|
|
1328
|
+
* ```
|
|
1329
|
+
*/
|
|
1330
|
+
interface DashStop {
|
|
1331
|
+
/** Dash length as a percentage of line width (e.g., "500%") */
|
|
1332
|
+
readonly d: string;
|
|
1333
|
+
/** Space length as a percentage of line width (e.g., "200%") */
|
|
1334
|
+
readonly sp: string;
|
|
1335
|
+
}
|
|
1336
|
+
/**
|
|
1337
|
+
* Creates a custom dash element (a:custDash) for outlines.
|
|
1338
|
+
*
|
|
1339
|
+
* The custom dash element specifies a repeating pattern of dash and space
|
|
1340
|
+
* segments. Each segment is defined by a `DashStop` with dash (`d`) and
|
|
1341
|
+
* space (`sp`) lengths as positive percentages of the line width.
|
|
1342
|
+
*
|
|
1343
|
+
* ## XSD Schema
|
|
1344
|
+
* ```xml
|
|
1345
|
+
* <xsd:complexType name="CT_DashStopList">
|
|
1346
|
+
* <xsd:sequence>
|
|
1347
|
+
* <xsd:element name="ds" type="CT_DashStop" minOccurs="0" maxOccurs="unbounded"/>
|
|
1348
|
+
* </xsd:sequence>
|
|
1349
|
+
* </xsd:complexType>
|
|
1350
|
+
* ```
|
|
1351
|
+
*
|
|
1352
|
+
* @example
|
|
1353
|
+
* ```typescript
|
|
1354
|
+
* // Simple dash pattern
|
|
1355
|
+
* createCustomDash([
|
|
1356
|
+
* { d: "500%", sp: "200%" },
|
|
1357
|
+
* ]);
|
|
1358
|
+
*
|
|
1359
|
+
* // Complex alternating pattern
|
|
1360
|
+
* createCustomDash([
|
|
1361
|
+
* { d: "500%", sp: "200%" },
|
|
1362
|
+
* { d: "100%", sp: "200%" },
|
|
1363
|
+
* ]);
|
|
1364
|
+
* ```
|
|
1365
|
+
*/
|
|
1366
|
+
declare const createCustomDash: (stops: readonly DashStop[]) => XmlComponent;
|
|
1367
|
+
//#endregion
|
|
1368
|
+
//#region src/drawingml/outline/line-end.d.ts
|
|
1369
|
+
/**
|
|
1370
|
+
* Line end types (arrow head styles).
|
|
1371
|
+
*
|
|
1372
|
+
* ## XSD Schema
|
|
1373
|
+
* ```xml
|
|
1374
|
+
* <xsd:simpleType name="ST_LineEndType">
|
|
1375
|
+
* <xsd:restriction base="xsd:token">
|
|
1376
|
+
* <xsd:enumeration value="none"/>
|
|
1377
|
+
* <xsd:enumeration value="triangle"/>
|
|
1378
|
+
* <xsd:enumeration value="stealth"/>
|
|
1379
|
+
* <xsd:enumeration value="diamond"/>
|
|
1380
|
+
* <xsd:enumeration value="oval"/>
|
|
1381
|
+
* <xsd:enumeration value="arrow"/>
|
|
1382
|
+
* </xsd:restriction>
|
|
1383
|
+
* </xsd:simpleType>
|
|
1384
|
+
* ```
|
|
1385
|
+
*
|
|
1386
|
+
* @publicApi
|
|
1387
|
+
*/
|
|
1388
|
+
declare const LineEndType: {
|
|
1389
|
+
/** No line end */readonly NONE: "none"; /** Triangle arrow */
|
|
1390
|
+
readonly TRIANGLE: "triangle"; /** Stealth arrow (filled triangle) */
|
|
1391
|
+
readonly STEALTH: "stealth"; /** Diamond shape */
|
|
1392
|
+
readonly DIAMOND: "diamond"; /** Oval shape */
|
|
1393
|
+
readonly OVAL: "oval"; /** Simple arrow */
|
|
1394
|
+
readonly ARROW: "arrow";
|
|
1395
|
+
};
|
|
1396
|
+
/**
|
|
1397
|
+
* Line end width options.
|
|
1398
|
+
*
|
|
1399
|
+
* ## XSD Schema
|
|
1400
|
+
* ```xml
|
|
1401
|
+
* <xsd:simpleType name="ST_LineEndWidth">
|
|
1402
|
+
* <xsd:restriction base="xsd:token">
|
|
1403
|
+
* <xsd:enumeration value="sm"/>
|
|
1404
|
+
* <xsd:enumeration value="med"/>
|
|
1405
|
+
* <xsd:enumeration value="lg"/>
|
|
1406
|
+
* </xsd:restriction>
|
|
1407
|
+
* </xsd:simpleType>
|
|
1408
|
+
* ```
|
|
1409
|
+
*
|
|
1410
|
+
* @publicApi
|
|
1411
|
+
*/
|
|
1412
|
+
declare const LineEndWidth: {
|
|
1413
|
+
/** Small width */readonly SMALL: "small"; /** Medium width */
|
|
1414
|
+
readonly MEDIUM: "medium"; /** Large width */
|
|
1415
|
+
readonly LARGE: "large";
|
|
1416
|
+
};
|
|
1417
|
+
/**
|
|
1418
|
+
* Line end length options.
|
|
1419
|
+
*
|
|
1420
|
+
* ## XSD Schema
|
|
1421
|
+
* ```xml
|
|
1422
|
+
* <xsd:simpleType name="ST_LineEndLength">
|
|
1423
|
+
* <xsd:restriction base="xsd:token">
|
|
1424
|
+
* <xsd:enumeration value="sm"/>
|
|
1425
|
+
* <xsd:enumeration value="med"/>
|
|
1426
|
+
* <xsd:enumeration value="lg"/>
|
|
1427
|
+
* </xsd:restriction>
|
|
1428
|
+
* </xsd:simpleType>
|
|
1429
|
+
* ```
|
|
1430
|
+
*
|
|
1431
|
+
* @publicApi
|
|
1432
|
+
*/
|
|
1433
|
+
declare const LineEndLength: {
|
|
1434
|
+
/** Small length */readonly SMALL: "small"; /** Medium length */
|
|
1435
|
+
readonly MEDIUM: "medium"; /** Large length */
|
|
1436
|
+
readonly LARGE: "large";
|
|
1437
|
+
};
|
|
1438
|
+
/**
|
|
1439
|
+
* Options for line end (arrow) properties.
|
|
1440
|
+
*
|
|
1441
|
+
* ## XSD Schema
|
|
1442
|
+
* ```xml
|
|
1443
|
+
* <xsd:complexType name="CT_LineEndProperties">
|
|
1444
|
+
* <xsd:attribute name="type" type="ST_LineEndType" use="optional" default="none"/>
|
|
1445
|
+
* <xsd:attribute name="w" type="ST_LineEndWidth" use="optional"/>
|
|
1446
|
+
* <xsd:attribute name="len" type="ST_LineEndLength" use="optional"/>
|
|
1447
|
+
* </xsd:complexType>
|
|
1448
|
+
* ```
|
|
1449
|
+
*/
|
|
1450
|
+
interface LineEndOptions {
|
|
1451
|
+
/** Arrow/head type */
|
|
1452
|
+
readonly type: (typeof LineEndType)[keyof typeof LineEndType];
|
|
1453
|
+
/** Arrow width */
|
|
1454
|
+
readonly width?: (typeof LineEndWidth)[keyof typeof LineEndWidth];
|
|
1455
|
+
/** Arrow length */
|
|
1456
|
+
readonly length?: (typeof LineEndLength)[keyof typeof LineEndLength];
|
|
1457
|
+
}
|
|
1458
|
+
/**
|
|
1459
|
+
* Creates a line end element (a:headEnd or a:tailEnd).
|
|
1460
|
+
*
|
|
1461
|
+
* @example
|
|
1462
|
+
* ```typescript
|
|
1463
|
+
* // Stealth arrow at start, medium size
|
|
1464
|
+
* createLineEnd("a:headEnd", { type: "STEALTH", width: "MEDIUM", length: "MEDIUM" });
|
|
1465
|
+
* // Triangle arrow at end
|
|
1466
|
+
* createLineEnd("a:tailEnd", { type: "TRIANGLE" });
|
|
1467
|
+
* ```
|
|
1468
|
+
*/
|
|
1469
|
+
declare const createLineEnd: (name: string, options: LineEndOptions) => XmlComponent;
|
|
1470
|
+
//#endregion
|
|
1471
|
+
//#region src/drawingml/outline/outline.d.ts
|
|
1472
|
+
/**
|
|
1473
|
+
* Line cap styles for outline endpoints.
|
|
1474
|
+
*
|
|
1475
|
+
* Defines how the ends of a line are rendered.
|
|
1476
|
+
*/
|
|
1477
|
+
declare const LineCap: {
|
|
1478
|
+
/** Round cap style */readonly ROUND: "round"; /** Square cap style */
|
|
1479
|
+
readonly SQUARE: "square"; /** Flat cap style */
|
|
1480
|
+
readonly FLAT: "flat";
|
|
1481
|
+
};
|
|
1482
|
+
/**
|
|
1483
|
+
* Compound line types for outlines.
|
|
1484
|
+
*
|
|
1485
|
+
* Defines the structure of compound lines (single, double, etc.).
|
|
1486
|
+
*/
|
|
1487
|
+
declare const CompoundLine: {
|
|
1488
|
+
/** Single line */readonly SINGLE: "single"; /** Double line */
|
|
1489
|
+
readonly DOUBLE: "double"; /** Thick-thin double line */
|
|
1490
|
+
readonly THICK_THIN: "thickThin"; /** Thin-thick double line */
|
|
1491
|
+
readonly THIN_THICK: "thinThick"; /** Triple line */
|
|
1492
|
+
readonly TRI: "triple";
|
|
1493
|
+
};
|
|
1494
|
+
/**
|
|
1495
|
+
* Pen alignment options for outline positioning.
|
|
1496
|
+
*
|
|
1497
|
+
* Defines how the outline is aligned relative to the shape edge.
|
|
1498
|
+
*/
|
|
1499
|
+
declare const PenAlignment: {
|
|
1500
|
+
/** Center alignment */readonly CENTER: "center"; /** Inset alignment */
|
|
1501
|
+
readonly INSET: "inside";
|
|
1502
|
+
};
|
|
1503
|
+
/**
|
|
1504
|
+
* Preset dash styles for outlines.
|
|
1505
|
+
*
|
|
1506
|
+
* ## XSD Schema
|
|
1507
|
+
* ```xml
|
|
1508
|
+
* <xsd:simpleType name="ST_PresetLineDashVal">
|
|
1509
|
+
* <xsd:restriction base="xsd:token">
|
|
1510
|
+
* <xsd:enumeration value="solid"/>
|
|
1511
|
+
* <xsd:enumeration value="dot"/>
|
|
1512
|
+
* <xsd:enumeration value="dash"/>
|
|
1513
|
+
* <xsd:enumeration value="lgDash"/>
|
|
1514
|
+
* <xsd:enumeration value="dashDot"/>
|
|
1515
|
+
* <xsd:enumeration value="lgDashDot"/>
|
|
1516
|
+
* <xsd:enumeration value="lgDashDotDot"/>
|
|
1517
|
+
* <xsd:enumeration value="sysDash"/>
|
|
1518
|
+
* <xsd:enumeration value="sysDot"/>
|
|
1519
|
+
* <xsd:enumeration value="sysDashDot"/>
|
|
1520
|
+
* <xsd:enumeration value="sysDashDotDot"/>
|
|
1521
|
+
* </xsd:restriction>
|
|
1522
|
+
* </xsd:simpleType>
|
|
1523
|
+
* ```
|
|
1524
|
+
*/
|
|
1525
|
+
declare const PresetDash: {
|
|
1526
|
+
readonly SOLID: "solid";
|
|
1527
|
+
readonly DOT: "dot";
|
|
1528
|
+
readonly DASH: "dash";
|
|
1529
|
+
readonly LG_DASH: "lgDash";
|
|
1530
|
+
readonly DASH_DOT: "dashDot";
|
|
1531
|
+
readonly LG_DASH_DOT: "lgDashDot";
|
|
1532
|
+
readonly LG_DASH_DOT_DOT: "lgDashDotDot";
|
|
1533
|
+
readonly SYS_DASH: "sysDash";
|
|
1534
|
+
readonly SYS_DOT: "sysDot";
|
|
1535
|
+
readonly SYS_DASH_DOT: "sysDashDot";
|
|
1536
|
+
readonly SYS_DASH_DOT_DOT: "sysDashDotDot";
|
|
1537
|
+
};
|
|
1538
|
+
/**
|
|
1539
|
+
* Line join styles.
|
|
1540
|
+
*/
|
|
1541
|
+
declare const LineJoin: {
|
|
1542
|
+
readonly ROUND: "round";
|
|
1543
|
+
readonly BEVEL: "bevel";
|
|
1544
|
+
readonly MITER: "miter";
|
|
1545
|
+
};
|
|
1546
|
+
/**
|
|
1547
|
+
* Attributes for configuring outline properties.
|
|
1548
|
+
*/
|
|
1549
|
+
interface OutlineAttributes {
|
|
1550
|
+
/** Line width in EMUs (English Metric Units) */
|
|
1551
|
+
readonly width?: number;
|
|
1552
|
+
/** Line cap style */
|
|
1553
|
+
readonly cap?: (typeof LineCap)[keyof typeof LineCap];
|
|
1554
|
+
/** Compound line type */
|
|
1555
|
+
readonly compoundLine?: (typeof CompoundLine)[keyof typeof CompoundLine];
|
|
1556
|
+
/** Pen alignment */
|
|
1557
|
+
readonly align?: (typeof PenAlignment)[keyof typeof PenAlignment];
|
|
1558
|
+
/**
|
|
1559
|
+
* Preset dash style.
|
|
1560
|
+
*
|
|
1561
|
+
* Mutually exclusive with `customDash` — only one can be specified.
|
|
1562
|
+
*/
|
|
1563
|
+
readonly dash?: (typeof PresetDash)[keyof typeof PresetDash];
|
|
1564
|
+
/**
|
|
1565
|
+
* Custom dash pattern (list of dash/space stops).
|
|
1566
|
+
*
|
|
1567
|
+
* Mutually exclusive with `dash` — only one can be specified.
|
|
1568
|
+
*/
|
|
1569
|
+
readonly customDash?: readonly DashStop[];
|
|
1570
|
+
/** Line join style */
|
|
1571
|
+
readonly join?: (typeof LineJoin)[keyof typeof LineJoin];
|
|
1572
|
+
/** Miter limit (only when join is MITER) */
|
|
1573
|
+
readonly miterLimit?: number;
|
|
1574
|
+
/** Line start arrow/head */
|
|
1575
|
+
readonly headEnd?: LineEndOptions;
|
|
1576
|
+
/** Line end arrow/tail */
|
|
1577
|
+
readonly tailEnd?: LineEndOptions;
|
|
1578
|
+
}
|
|
1579
|
+
/**
|
|
1580
|
+
* Fill properties for outline (EG_LineFillProperties).
|
|
1581
|
+
*
|
|
1582
|
+
* Supports noFill, solidFill, gradFill, and pattFill per XSD.
|
|
1583
|
+
* blipFill and grpFill are not applicable to lines.
|
|
1584
|
+
*/
|
|
1585
|
+
interface OutlineFillProperties {
|
|
1586
|
+
/** Fill type */
|
|
1587
|
+
readonly type?: "noFill" | "solidFill" | "gradFill" | "pattFill";
|
|
1588
|
+
/** Color definition (required when type is "solidFill") */
|
|
1589
|
+
readonly color?: SolidFillOptions;
|
|
1590
|
+
/** Gradient fill options (required when type is "gradFill") */
|
|
1591
|
+
readonly gradientFill?: GradientFillOptions;
|
|
1592
|
+
/** Pattern fill options (required when type is "pattFill") */
|
|
1593
|
+
readonly patternFill?: PatternFillOptions;
|
|
1594
|
+
}
|
|
1595
|
+
/**
|
|
1596
|
+
* Complete outline configuration options.
|
|
1597
|
+
*
|
|
1598
|
+
* Combines outline attributes with fill properties.
|
|
1599
|
+
*/
|
|
1600
|
+
type OutlineOptions = OutlineAttributes & OutlineFillProperties;
|
|
1601
|
+
/**
|
|
1602
|
+
* Creates an outline element for DrawingML shapes.
|
|
1603
|
+
*
|
|
1604
|
+
* The outline element specifies the line properties for the shape border,
|
|
1605
|
+
* including width, cap style, compound line type, alignment, dash, join, and fill.
|
|
1606
|
+
*
|
|
1607
|
+
* ## XSD Schema
|
|
1608
|
+
* ```xml
|
|
1609
|
+
* <xsd:complexType name="CT_LineProperties">
|
|
1610
|
+
* <xsd:sequence>
|
|
1611
|
+
* <xsd:group ref="EG_FillProperties" minOccurs="0"/>
|
|
1612
|
+
* <xsd:group ref="EG_LineDashProperties" minOccurs="0"/>
|
|
1613
|
+
* <xsd:group ref="EG_LineJoinProperties" minOccurs="0"/>
|
|
1614
|
+
* </xsd:sequence>
|
|
1615
|
+
* <xsd:attribute name="w" use="optional" type="a:ST_LineWidth"/>
|
|
1616
|
+
* <xsd:attribute name="cap" use="optional" type="ST_LineCap"/>
|
|
1617
|
+
* <xsd:attribute name="cmpd" use="optional" type="ST_CompoundLine"/>
|
|
1618
|
+
* <xsd:attribute name="algn" use="optional" type="ST_PenAlignment"/>
|
|
1619
|
+
* </xsd:complexType>
|
|
1620
|
+
* ```
|
|
1621
|
+
*
|
|
1622
|
+
* @example
|
|
1623
|
+
* ```typescript
|
|
1624
|
+
* // Outline with RGB color and dash
|
|
1625
|
+
* const outline = createOutline({
|
|
1626
|
+
* width: 9525,
|
|
1627
|
+
* type: "solidFill",
|
|
1628
|
+
* color: { value: "FF0000" },
|
|
1629
|
+
* dash: "DASH",
|
|
1630
|
+
* });
|
|
1631
|
+
* ```
|
|
1632
|
+
*/
|
|
1633
|
+
declare const createOutline: (options: OutlineOptions) => XmlComponent;
|
|
1634
|
+
//#endregion
|
|
1635
|
+
//#region src/drawingml/effects/fill-overlay.d.ts
|
|
1636
|
+
/**
|
|
1637
|
+
* Blend modes for fill overlay effect.
|
|
1638
|
+
*
|
|
1639
|
+
* ## XSD Schema
|
|
1640
|
+
* ```xml
|
|
1641
|
+
* <xsd:simpleType name="ST_BlendMode">
|
|
1642
|
+
* <xsd:restriction base="xsd:token">
|
|
1643
|
+
* <xsd:enumeration value="over"/>
|
|
1644
|
+
* <xsd:enumeration value="mult"/>
|
|
1645
|
+
* <xsd:enumeration value="screen"/>
|
|
1646
|
+
* <xsd:enumeration value="darken"/>
|
|
1647
|
+
* <xsd:enumeration value="lighten"/>
|
|
1648
|
+
* </xsd:restriction>
|
|
1649
|
+
* </xsd:simpleType>
|
|
1650
|
+
* ```
|
|
1651
|
+
*/
|
|
1652
|
+
declare const BlendMode: {
|
|
1653
|
+
/** Over blend mode */readonly OVER: "over"; /** Multiply blend mode */
|
|
1654
|
+
readonly MULTIPLY: "multiply"; /** Screen blend mode */
|
|
1655
|
+
readonly SCREEN: "screen"; /** Darken blend mode */
|
|
1656
|
+
readonly DARKEN: "darken"; /** Lighten blend mode */
|
|
1657
|
+
readonly LIGHTEN: "lighten";
|
|
1658
|
+
};
|
|
1659
|
+
/**
|
|
1660
|
+
* Options for fill overlay effect.
|
|
1661
|
+
*/
|
|
1662
|
+
interface FillOverlayEffectOptions {
|
|
1663
|
+
/** Blend mode (required) */
|
|
1664
|
+
readonly blend: (typeof BlendMode)[keyof typeof BlendMode];
|
|
1665
|
+
/** Solid fill color */
|
|
1666
|
+
readonly solidFill?: SolidFillOptions;
|
|
1667
|
+
/** Gradient fill */
|
|
1668
|
+
readonly gradientFill?: GradientFillOptions;
|
|
1669
|
+
/** Pattern fill */
|
|
1670
|
+
readonly patternFill?: PatternFillOptions;
|
|
1671
|
+
/** Group fill (inherit from parent) */
|
|
1672
|
+
readonly groupFill?: boolean;
|
|
1673
|
+
/** No fill */
|
|
1674
|
+
readonly noFill?: boolean;
|
|
1675
|
+
}
|
|
1676
|
+
/**
|
|
1677
|
+
* Creates a fill overlay effect element.
|
|
1678
|
+
*
|
|
1679
|
+
* ## XSD Schema
|
|
1680
|
+
* ```xml
|
|
1681
|
+
* <xsd:complexType name="CT_FillOverlayEffect">
|
|
1682
|
+
* <xsd:sequence>
|
|
1683
|
+
* <xsd:group ref="EG_FillProperties" minOccurs="1" maxOccurs="1"/>
|
|
1684
|
+
* </xsd:sequence>
|
|
1685
|
+
* <xsd:attribute name="blend" type="ST_BlendMode" use="required"/>
|
|
1686
|
+
* </xsd:complexType>
|
|
1687
|
+
* ```
|
|
1688
|
+
*
|
|
1689
|
+
* @example
|
|
1690
|
+
* ```typescript
|
|
1691
|
+
* // Solid fill overlay
|
|
1692
|
+
* const fillOverlay = createFillOverlayEffect({
|
|
1693
|
+
* blend: BlendMode.MULTIPLY,
|
|
1694
|
+
* solidFill: { value: "FF0000" },
|
|
1695
|
+
* });
|
|
1696
|
+
*
|
|
1697
|
+
* // Gradient fill overlay
|
|
1698
|
+
* const fillOverlay = createFillOverlayEffect({
|
|
1699
|
+
* blend: BlendMode.SCREEN,
|
|
1700
|
+
* gradientFill: { type: "linear", stops: [...] },
|
|
1701
|
+
* });
|
|
1702
|
+
* ```
|
|
1703
|
+
*/
|
|
1704
|
+
declare const createFillOverlayEffect: (options: FillOverlayEffectOptions) => XmlComponent;
|
|
1705
|
+
//#endregion
|
|
1706
|
+
//#region src/drawingml/effects/glow.d.ts
|
|
1707
|
+
/**
|
|
1708
|
+
* Options for glow effect.
|
|
1709
|
+
*/
|
|
1710
|
+
interface GlowEffectOptions {
|
|
1711
|
+
/** Glow radius in EMUs */
|
|
1712
|
+
readonly radius?: number;
|
|
1713
|
+
/** Glow color */
|
|
1714
|
+
readonly color: SolidFillOptions;
|
|
1715
|
+
}
|
|
1716
|
+
/**
|
|
1717
|
+
* Creates a glow effect element.
|
|
1718
|
+
*
|
|
1719
|
+
* ## XSD Schema
|
|
1720
|
+
* ```xml
|
|
1721
|
+
* <xsd:complexType name="CT_GlowEffect">
|
|
1722
|
+
* <xsd:sequence>
|
|
1723
|
+
* <xsd:group ref="EG_ColorChoice" minOccurs="1" maxOccurs="1"/>
|
|
1724
|
+
* </xsd:sequence>
|
|
1725
|
+
* <xsd:attribute name="rad" type="ST_PositiveCoordinate" use="optional" default="0"/>
|
|
1726
|
+
* </xsd:complexType>
|
|
1727
|
+
* ```
|
|
1728
|
+
*/
|
|
1729
|
+
declare const createGlowEffect: (options: GlowEffectOptions) => XmlComponent;
|
|
1730
|
+
//#endregion
|
|
1731
|
+
//#region src/drawingml/effects/inner-shadow.d.ts
|
|
1732
|
+
/**
|
|
1733
|
+
* Options for inner shadow effect.
|
|
1734
|
+
*/
|
|
1735
|
+
interface InnerShadowEffectOptions {
|
|
1736
|
+
/** Blur radius in EMUs */
|
|
1737
|
+
readonly blurRadius?: number;
|
|
1738
|
+
/** Distance from shape edge in EMUs */
|
|
1739
|
+
readonly distance?: number;
|
|
1740
|
+
/** Direction angle in 60,000ths of a degree */
|
|
1741
|
+
readonly direction?: number;
|
|
1742
|
+
/** Shadow color */
|
|
1743
|
+
readonly color: SolidFillOptions;
|
|
1744
|
+
}
|
|
1745
|
+
/**
|
|
1746
|
+
* Creates an inner shadow effect element.
|
|
1747
|
+
*
|
|
1748
|
+
* ## XSD Schema
|
|
1749
|
+
* ```xml
|
|
1750
|
+
* <xsd:complexType name="CT_InnerShadowEffect">
|
|
1751
|
+
* <xsd:sequence>
|
|
1752
|
+
* <xsd:group ref="EG_ColorChoice" minOccurs="1" maxOccurs="1"/>
|
|
1753
|
+
* </xsd:sequence>
|
|
1754
|
+
* <xsd:attribute name="blurRad" type="ST_PositiveCoordinate" default="0"/>
|
|
1755
|
+
* <xsd:attribute name="dist" type="ST_PositiveCoordinate" default="0"/>
|
|
1756
|
+
* <xsd:attribute name="dir" type="ST_PositiveFixedAngle" default="0"/>
|
|
1757
|
+
* </xsd:complexType>
|
|
1758
|
+
* ```
|
|
1759
|
+
*/
|
|
1760
|
+
declare const createInnerShadowEffect: (options: InnerShadowEffectOptions) => XmlComponent;
|
|
1761
|
+
//#endregion
|
|
1762
|
+
//#region src/drawingml/effects/outer-shadow.d.ts
|
|
1763
|
+
/**
|
|
1764
|
+
* Rectangle alignment for shadow positioning.
|
|
1765
|
+
*/
|
|
1766
|
+
declare const RectAlignment: {
|
|
1767
|
+
readonly TOP_LEFT: "topLeft";
|
|
1768
|
+
readonly TOP: "top";
|
|
1769
|
+
readonly TOP_RIGHT: "topRight";
|
|
1770
|
+
readonly LEFT: "left";
|
|
1771
|
+
readonly CENTER: "center";
|
|
1772
|
+
readonly RIGHT: "right";
|
|
1773
|
+
readonly BOTTOM_LEFT: "bottomLeft";
|
|
1774
|
+
readonly BOTTOM: "bottom";
|
|
1775
|
+
readonly BOTTOM_RIGHT: "bottomRight";
|
|
1776
|
+
};
|
|
1777
|
+
/**
|
|
1778
|
+
* Options for outer shadow effect.
|
|
1779
|
+
*/
|
|
1780
|
+
interface OuterShadowEffectOptions {
|
|
1781
|
+
/** Blur radius in EMUs */
|
|
1782
|
+
readonly blurRadius?: number;
|
|
1783
|
+
/** Distance from shape in EMUs */
|
|
1784
|
+
readonly distance?: number;
|
|
1785
|
+
/** Direction angle in 60,000ths of a degree */
|
|
1786
|
+
readonly direction?: number;
|
|
1787
|
+
/** Horizontal scale percentage (e.g., 100000 = 100%) */
|
|
1788
|
+
readonly scaleX?: number;
|
|
1789
|
+
/** Vertical scale percentage */
|
|
1790
|
+
readonly scaleY?: number;
|
|
1791
|
+
/** Horizontal skew angle in 60,000ths of a degree */
|
|
1792
|
+
readonly skewX?: number;
|
|
1793
|
+
/** Vertical skew angle */
|
|
1794
|
+
readonly skewY?: number;
|
|
1795
|
+
/** Shadow alignment */
|
|
1796
|
+
readonly alignment?: (typeof RectAlignment)[keyof typeof RectAlignment];
|
|
1797
|
+
/** Whether shadow rotates with shape */
|
|
1798
|
+
readonly rotWithShape?: boolean;
|
|
1799
|
+
/** Shadow color */
|
|
1800
|
+
readonly color: SolidFillOptions;
|
|
1801
|
+
}
|
|
1802
|
+
/**
|
|
1803
|
+
* Creates an outer shadow effect element.
|
|
1804
|
+
*
|
|
1805
|
+
* ## XSD Schema
|
|
1806
|
+
* ```xml
|
|
1807
|
+
* <xsd:complexType name="CT_OuterShadowEffect">
|
|
1808
|
+
* <xsd:sequence>
|
|
1809
|
+
* <xsd:group ref="EG_ColorChoice" minOccurs="1" maxOccurs="1"/>
|
|
1810
|
+
* </xsd:sequence>
|
|
1811
|
+
* <xsd:attribute name="blurRad" type="ST_PositiveCoordinate" default="0"/>
|
|
1812
|
+
* <xsd:attribute name="dist" type="ST_PositiveCoordinate" default="0"/>
|
|
1813
|
+
* <xsd:attribute name="dir" type="ST_PositiveFixedAngle" default="0"/>
|
|
1814
|
+
* <xsd:attribute name="sx" type="ST_Percentage" default="100%"/>
|
|
1815
|
+
* <xsd:attribute name="sy" type="ST_Percentage" default="100%"/>
|
|
1816
|
+
* <xsd:attribute name="kx" type="ST_FixedAngle" default="0"/>
|
|
1817
|
+
* <xsd:attribute name="ky" type="ST_FixedAngle" default="0"/>
|
|
1818
|
+
* <xsd:attribute name="algn" type="ST_RectAlignment" default="b"/>
|
|
1819
|
+
* <xsd:attribute name="rotWithShape" type="xsd:boolean" default="true"/>
|
|
1820
|
+
* </xsd:complexType>
|
|
1821
|
+
* ```
|
|
1822
|
+
*/
|
|
1823
|
+
declare const createOuterShadowEffect: (options: OuterShadowEffectOptions) => XmlComponent;
|
|
1824
|
+
//#endregion
|
|
1825
|
+
//#region src/drawingml/effects/preset-shadow.d.ts
|
|
1826
|
+
/**
|
|
1827
|
+
* Preset shadow types (20 variations).
|
|
1828
|
+
*
|
|
1829
|
+
* Reference: ISO/IEC 29500-4, dml-main.xsd, ST_PresetShadowVal
|
|
1830
|
+
*/
|
|
1831
|
+
declare const PresetShadowVal: {
|
|
1832
|
+
readonly SHDW1: "shadow1";
|
|
1833
|
+
readonly SHDW2: "shadow2";
|
|
1834
|
+
readonly SHDW3: "shadow3";
|
|
1835
|
+
readonly SHDW4: "shadow4";
|
|
1836
|
+
readonly SHDW5: "shadow5";
|
|
1837
|
+
readonly SHDW6: "shadow6";
|
|
1838
|
+
readonly SHDW7: "shadow7";
|
|
1839
|
+
readonly SHDW8: "shadow8";
|
|
1840
|
+
readonly SHDW9: "shadow9";
|
|
1841
|
+
readonly SHDW10: "shadow10";
|
|
1842
|
+
readonly SHDW11: "shadow11";
|
|
1843
|
+
readonly SHDW12: "shadow12";
|
|
1844
|
+
readonly SHDW13: "shadow13";
|
|
1845
|
+
readonly SHDW14: "shadow14";
|
|
1846
|
+
readonly SHDW15: "shadow15";
|
|
1847
|
+
readonly SHDW16: "shadow16";
|
|
1848
|
+
readonly SHDW17: "shadow17";
|
|
1849
|
+
readonly SHDW18: "shadow18";
|
|
1850
|
+
readonly SHDW19: "shadow19";
|
|
1851
|
+
readonly SHDW20: "shadow20";
|
|
1852
|
+
};
|
|
1853
|
+
/**
|
|
1854
|
+
* Options for preset shadow effect.
|
|
1855
|
+
*/
|
|
1856
|
+
interface PresetShadowEffectOptions {
|
|
1857
|
+
/** Preset shadow type (required) */
|
|
1858
|
+
readonly preset: (typeof PresetShadowVal)[keyof typeof PresetShadowVal];
|
|
1859
|
+
/** Distance from shape in EMUs */
|
|
1860
|
+
readonly distance?: number;
|
|
1861
|
+
/** Direction angle in 60,000ths of a degree */
|
|
1862
|
+
readonly direction?: number;
|
|
1863
|
+
/** Shadow color */
|
|
1864
|
+
readonly color: SolidFillOptions;
|
|
1865
|
+
}
|
|
1866
|
+
/**
|
|
1867
|
+
* Creates a preset shadow effect element.
|
|
1868
|
+
*
|
|
1869
|
+
* ## XSD Schema
|
|
1870
|
+
* ```xml
|
|
1871
|
+
* <xsd:complexType name="CT_PresetShadowEffect">
|
|
1872
|
+
* <xsd:sequence>
|
|
1873
|
+
* <xsd:group ref="EG_ColorChoice" minOccurs="1" maxOccurs="1"/>
|
|
1874
|
+
* </xsd:sequence>
|
|
1875
|
+
* <xsd:attribute name="prst" type="ST_PresetShadowVal" use="required"/>
|
|
1876
|
+
* <xsd:attribute name="dist" type="ST_PositiveCoordinate" default="0"/>
|
|
1877
|
+
* <xsd:attribute name="dir" type="ST_PositiveFixedAngle" default="0"/>
|
|
1878
|
+
* </xsd:complexType>
|
|
1879
|
+
* ```
|
|
1880
|
+
*/
|
|
1881
|
+
declare const createPresetShadowEffect: (options: PresetShadowEffectOptions) => XmlComponent;
|
|
1882
|
+
//#endregion
|
|
1883
|
+
//#region src/drawingml/effects/reflection.d.ts
|
|
1884
|
+
/**
|
|
1885
|
+
* Options for reflection effect.
|
|
1886
|
+
*
|
|
1887
|
+
* All properties are optional with XSD defaults.
|
|
1888
|
+
*/
|
|
1889
|
+
interface ReflectionEffectOptions {
|
|
1890
|
+
/** Blur radius in EMUs */
|
|
1891
|
+
readonly blurRadius?: number;
|
|
1892
|
+
/** Start opacity (fixed percentage, e.g., 100000 = 100%) */
|
|
1893
|
+
readonly startAlpha?: number;
|
|
1894
|
+
/** Start position (fixed percentage) */
|
|
1895
|
+
readonly startPosition?: number;
|
|
1896
|
+
/** End opacity (fixed percentage) */
|
|
1897
|
+
readonly endAlpha?: number;
|
|
1898
|
+
/** End position (fixed percentage) */
|
|
1899
|
+
readonly endPosition?: number;
|
|
1900
|
+
/** Distance from shape in EMUs */
|
|
1901
|
+
readonly distance?: number;
|
|
1902
|
+
/** Direction angle in 60,000ths of a degree */
|
|
1903
|
+
readonly direction?: number;
|
|
1904
|
+
/** Fade direction angle in 60,000ths of a degree */
|
|
1905
|
+
readonly fadeDirection?: number;
|
|
1906
|
+
/** Horizontal scale percentage */
|
|
1907
|
+
readonly scaleX?: number;
|
|
1908
|
+
/** Vertical scale percentage */
|
|
1909
|
+
readonly scaleY?: number;
|
|
1910
|
+
/** Horizontal skew angle */
|
|
1911
|
+
readonly skewX?: number;
|
|
1912
|
+
/** Vertical skew angle */
|
|
1913
|
+
readonly skewY?: number;
|
|
1914
|
+
/** Alignment */
|
|
1915
|
+
readonly alignment?: string;
|
|
1916
|
+
/** Whether reflection rotates with shape */
|
|
1917
|
+
readonly rotWithShape?: boolean;
|
|
1918
|
+
}
|
|
1919
|
+
/**
|
|
1920
|
+
* Creates a reflection effect element.
|
|
1921
|
+
*
|
|
1922
|
+
* ## XSD Schema
|
|
1923
|
+
* ```xml
|
|
1924
|
+
* <xsd:complexType name="CT_ReflectionEffect">
|
|
1925
|
+
* <xsd:attribute name="blurRad" type="ST_PositiveCoordinate" default="0"/>
|
|
1926
|
+
* <xsd:attribute name="stA" type="ST_PositiveFixedPercentage" default="100%"/>
|
|
1927
|
+
* <xsd:attribute name="stPos" type="ST_PositiveFixedPercentage" default="0%"/>
|
|
1928
|
+
* <xsd:attribute name="endA" type="ST_PositiveFixedPercentage" default="0%"/>
|
|
1929
|
+
* <xsd:attribute name="endPos" type="ST_PositiveFixedPercentage" default="100%"/>
|
|
1930
|
+
* <xsd:attribute name="dist" type="ST_PositiveCoordinate" default="0"/>
|
|
1931
|
+
* <xsd:attribute name="dir" type="ST_PositiveFixedAngle" default="0"/>
|
|
1932
|
+
* <xsd:attribute name="fadeDir" type="ST_PositiveFixedAngle" default="5400000"/>
|
|
1933
|
+
* <xsd:attribute name="sx" type="ST_Percentage" default="100%"/>
|
|
1934
|
+
* <xsd:attribute name="sy" type="ST_Percentage" default="100%"/>
|
|
1935
|
+
* <xsd:attribute name="kx" type="ST_FixedAngle" default="0"/>
|
|
1936
|
+
* <xsd:attribute name="ky" type="ST_FixedAngle" default="0"/>
|
|
1937
|
+
* <xsd:attribute name="algn" type="ST_RectAlignment" default="b"/>
|
|
1938
|
+
* <xsd:attribute name="rotWithShape" type="xsd:boolean" default="true"/>
|
|
1939
|
+
* </xsd:complexType>
|
|
1940
|
+
* ```
|
|
1941
|
+
*/
|
|
1942
|
+
declare const createReflectionEffect: (options?: ReflectionEffectOptions) => BuilderElement<{}>;
|
|
1943
|
+
//#endregion
|
|
1944
|
+
//#region src/drawingml/effects/effect-list.d.ts
|
|
1945
|
+
/**
|
|
1946
|
+
* Blur effect options.
|
|
1947
|
+
*/
|
|
1948
|
+
interface BlurEffectOptions {
|
|
1949
|
+
/** Blur radius in EMUs */
|
|
1950
|
+
readonly radius?: number;
|
|
1951
|
+
/** Whether to grow the shape boundary */
|
|
1952
|
+
readonly grow?: boolean;
|
|
1953
|
+
}
|
|
1954
|
+
/**
|
|
1955
|
+
* Options for the effect list container.
|
|
1956
|
+
*
|
|
1957
|
+
* Each property corresponds to an optional child effect element.
|
|
1958
|
+
* Only specified effects will be included in the output.
|
|
1959
|
+
*/
|
|
1960
|
+
interface EffectListOptions {
|
|
1961
|
+
/** Blur effect */
|
|
1962
|
+
readonly blur?: BlurEffectOptions;
|
|
1963
|
+
/** Fill overlay effect */
|
|
1964
|
+
readonly fillOverlay?: FillOverlayEffectOptions;
|
|
1965
|
+
/** Glow effect */
|
|
1966
|
+
readonly glow?: GlowEffectOptions;
|
|
1967
|
+
/** Inner shadow effect */
|
|
1968
|
+
readonly innerShadow?: InnerShadowEffectOptions;
|
|
1969
|
+
/** Outer shadow effect */
|
|
1970
|
+
readonly outerShadow?: OuterShadowEffectOptions;
|
|
1971
|
+
/** Preset shadow effect */
|
|
1972
|
+
readonly presetShadow?: PresetShadowEffectOptions;
|
|
1973
|
+
/** Reflection effect (pass object for attributes, or true for defaults) */
|
|
1974
|
+
readonly reflection?: ReflectionEffectOptions | true;
|
|
1975
|
+
/** Soft edge radius in EMUs */
|
|
1976
|
+
readonly softEdge?: number;
|
|
1977
|
+
}
|
|
1978
|
+
/**
|
|
1979
|
+
* Creates an effect list element (a:effectLst).
|
|
1980
|
+
*
|
|
1981
|
+
* This is the EG_EffectProperties choice for a flat list of effects.
|
|
1982
|
+
* Effects are emitted in XSD order: blur, glow, innerShdw, outerShdw, prstShdw, reflection, softEdge.
|
|
1983
|
+
*
|
|
1984
|
+
* ## XSD Schema
|
|
1985
|
+
* ```xml
|
|
1986
|
+
* <xsd:complexType name="CT_EffectList">
|
|
1987
|
+
* <xsd:sequence>
|
|
1988
|
+
* <xsd:element name="blur" type="CT_BlurEffect" minOccurs="0"/>
|
|
1989
|
+
* <xsd:element name="fillOverlay" type="CT_FillOverlayEffect" minOccurs="0"/>
|
|
1990
|
+
* <xsd:element name="glow" type="CT_GlowEffect" minOccurs="0"/>
|
|
1991
|
+
* <xsd:element name="innerShdw" type="CT_InnerShadowEffect" minOccurs="0"/>
|
|
1992
|
+
* <xsd:element name="outerShdw" type="CT_OuterShadowEffect" minOccurs="0"/>
|
|
1993
|
+
* <xsd:element name="prstShdw" type="CT_PresetShadowEffect" minOccurs="0"/>
|
|
1994
|
+
* <xsd:element name="reflection" type="CT_ReflectionEffect" minOccurs="0"/>
|
|
1995
|
+
* <xsd:element name="softEdge" type="CT_SoftEdgesEffect" minOccurs="0"/>
|
|
1996
|
+
* </xsd:sequence>
|
|
1997
|
+
* </xsd:complexType>
|
|
1998
|
+
* ```
|
|
1999
|
+
*/
|
|
2000
|
+
declare const createEffectList: (options: EffectListOptions) => XmlComponent;
|
|
2001
|
+
//#endregion
|
|
2002
|
+
//#region src/drawingml/effects/effect-dag.d.ts
|
|
2003
|
+
/**
|
|
2004
|
+
* Effect container type (ST_EffectContainerType).
|
|
2005
|
+
*
|
|
2006
|
+
* Controls how child effects are combined:
|
|
2007
|
+
* - `sib`: sibling effects are applied in parallel
|
|
2008
|
+
* - `tree`: effects are applied sequentially in tree order
|
|
2009
|
+
*
|
|
2010
|
+
* ## XSD Schema
|
|
2011
|
+
* ```xml
|
|
2012
|
+
* <xsd:simpleType name="ST_EffectContainerType">
|
|
2013
|
+
* <xsd:restriction base="xsd:token">
|
|
2014
|
+
* <xsd:enumeration value="sib"/>
|
|
2015
|
+
* <xsd:enumeration value="tree"/>
|
|
2016
|
+
* </xsd:restriction>
|
|
2017
|
+
* </xsd:simpleType>
|
|
2018
|
+
* ```
|
|
2019
|
+
*/
|
|
2020
|
+
declare const EffectContainerType: {
|
|
2021
|
+
readonly SIB: "sibling";
|
|
2022
|
+
readonly TREE: "tree";
|
|
2023
|
+
};
|
|
2024
|
+
/** Alpha bi-level effect — clips alpha to threshold (CT_AlphaBiLevelEffect). */
|
|
2025
|
+
interface AlphaBiLevelEffectOptions {
|
|
2026
|
+
/** Alpha threshold (fixed percentage, required) */
|
|
2027
|
+
readonly threshold: number;
|
|
2028
|
+
}
|
|
2029
|
+
/** Alpha inverse effect — inverts alpha, optionally with color (CT_AlphaInverseEffect). */
|
|
2030
|
+
interface AlphaInverseEffectOptions {
|
|
2031
|
+
/** Optional color to apply inverse to */
|
|
2032
|
+
readonly color?: SolidFillOptions;
|
|
2033
|
+
}
|
|
2034
|
+
/** Alpha modulate fixed effect (CT_AlphaModulateFixedEffect). */
|
|
2035
|
+
interface AlphaModulateFixedEffectOptions {
|
|
2036
|
+
/** Amount percentage (default 100%) */
|
|
2037
|
+
readonly amount?: number;
|
|
2038
|
+
}
|
|
2039
|
+
/** Alpha outset effect (CT_AlphaOutsetEffect). */
|
|
2040
|
+
interface AlphaOutsetEffectOptions {
|
|
2041
|
+
/** Outset radius */
|
|
2042
|
+
readonly radius?: number;
|
|
2043
|
+
}
|
|
2044
|
+
/** Alpha replace effect — replaces alpha value (CT_AlphaReplaceEffect). */
|
|
2045
|
+
interface AlphaReplaceEffectOptions {
|
|
2046
|
+
/** New alpha value (fixed percentage, required) */
|
|
2047
|
+
readonly alpha: number;
|
|
2048
|
+
}
|
|
2049
|
+
/** Blend effect — blends with nested container (CT_BlendEffect). */
|
|
2050
|
+
interface BlendEffectOptions {
|
|
2051
|
+
/** Blend mode (required) */
|
|
2052
|
+
readonly blend: (typeof BlendMode)[keyof typeof BlendMode];
|
|
2053
|
+
/** Nested effect container */
|
|
2054
|
+
readonly container: EffectDagOptions;
|
|
2055
|
+
}
|
|
2056
|
+
/** Color change effect — maps one color to another (CT_ColorChangeEffect). */
|
|
2057
|
+
interface ColorChangeEffectOptions {
|
|
2058
|
+
/** Source color to replace */
|
|
2059
|
+
readonly from: SolidFillOptions;
|
|
2060
|
+
/** Target color */
|
|
2061
|
+
readonly to: SolidFillOptions;
|
|
2062
|
+
/** Whether to use alpha channel (default true) */
|
|
2063
|
+
readonly useA?: boolean;
|
|
2064
|
+
}
|
|
2065
|
+
/** Duotone effect — two-color tone mapping (CT_DuotoneEffect). */
|
|
2066
|
+
interface DuotoneEffectOptions {
|
|
2067
|
+
/** First color */
|
|
2068
|
+
readonly color1: SolidFillOptions;
|
|
2069
|
+
/** Second color */
|
|
2070
|
+
readonly color2: SolidFillOptions;
|
|
2071
|
+
}
|
|
2072
|
+
/** Fill effect — applies a fill as an effect (CT_FillEffect). */
|
|
2073
|
+
interface FillEffectOptions {
|
|
2074
|
+
/** Solid fill */
|
|
2075
|
+
readonly solidFill?: SolidFillOptions;
|
|
2076
|
+
/** Gradient fill */
|
|
2077
|
+
readonly gradientFill?: GradientFillOptions;
|
|
2078
|
+
/** Pattern fill */
|
|
2079
|
+
readonly patternFill?: PatternFillOptions;
|
|
2080
|
+
/** Group fill (inherit from parent) */
|
|
2081
|
+
readonly groupFill?: boolean;
|
|
2082
|
+
/** No fill */
|
|
2083
|
+
readonly noFill?: boolean;
|
|
2084
|
+
}
|
|
2085
|
+
/** HSL effect — adjusts hue, saturation, luminance (CT_HSLEffect). */
|
|
2086
|
+
interface HSLEffectOptions {
|
|
2087
|
+
/** Hue angle in 60,000ths of a degree (default 0) */
|
|
2088
|
+
readonly hue?: number;
|
|
2089
|
+
/** Saturation percentage (default 0%) */
|
|
2090
|
+
readonly saturation?: number;
|
|
2091
|
+
/** Luminance percentage (default 0%) */
|
|
2092
|
+
readonly luminance?: number;
|
|
2093
|
+
}
|
|
2094
|
+
/** Luminance effect — adjusts brightness and contrast (CT_LuminanceEffect). */
|
|
2095
|
+
interface LuminanceEffectOptions {
|
|
2096
|
+
/** Brightness percentage (default 0%) */
|
|
2097
|
+
readonly bright?: number;
|
|
2098
|
+
/** Contrast percentage (default 0%) */
|
|
2099
|
+
readonly contrast?: number;
|
|
2100
|
+
}
|
|
2101
|
+
/** Tint effect — applies tint with hue and amount (CT_TintEffect). */
|
|
2102
|
+
interface TintEffectOptions {
|
|
2103
|
+
/** Hue angle in 60,000ths of a degree (default 0) */
|
|
2104
|
+
readonly hue?: number;
|
|
2105
|
+
/** Tint amount percentage (default 0%) */
|
|
2106
|
+
readonly amount?: number;
|
|
2107
|
+
}
|
|
2108
|
+
/** Relative offset effect (CT_RelativeOffsetEffect). */
|
|
2109
|
+
interface RelativeOffsetEffectOptions {
|
|
2110
|
+
/** Horizontal offset percentage (default 0%) */
|
|
2111
|
+
readonly translateX?: number;
|
|
2112
|
+
/** Vertical offset percentage (default 0%) */
|
|
2113
|
+
readonly translateY?: number;
|
|
2114
|
+
}
|
|
2115
|
+
/** Transform effect — scale, skew, translate (CT_TransformEffect). */
|
|
2116
|
+
interface TransformEffectOptions {
|
|
2117
|
+
/** Horizontal scale percentage (default 100%) */
|
|
2118
|
+
readonly scaleX?: number;
|
|
2119
|
+
/** Vertical scale percentage (default 100%) */
|
|
2120
|
+
readonly scaleY?: number;
|
|
2121
|
+
/** Horizontal skew angle (default 0) */
|
|
2122
|
+
readonly skewX?: number;
|
|
2123
|
+
/** Vertical skew angle (default 0) */
|
|
2124
|
+
readonly skewY?: number;
|
|
2125
|
+
/** Horizontal translation */
|
|
2126
|
+
readonly translateX?: number;
|
|
2127
|
+
/** Vertical translation */
|
|
2128
|
+
readonly translateY?: number;
|
|
2129
|
+
}
|
|
2130
|
+
/** Effect reference — references an effect by ID (CT_EffectReference). */
|
|
2131
|
+
interface EffectReferenceOptions {
|
|
2132
|
+
/** Reference ID (required) */
|
|
2133
|
+
readonly ref: string;
|
|
2134
|
+
}
|
|
2135
|
+
/**
|
|
2136
|
+
* Options for an effect container (CT_EffectContainer).
|
|
2137
|
+
*
|
|
2138
|
+
* Supports all 28 effect types from EG_Effect, including recursive nesting.
|
|
2139
|
+
*
|
|
2140
|
+
* ## XSD Schema
|
|
2141
|
+
* ```xml
|
|
2142
|
+
* <xsd:complexType name="CT_EffectContainer">
|
|
2143
|
+
* <xsd:group ref="EG_Effect" minOccurs="0" maxOccurs="unbounded"/>
|
|
2144
|
+
* <xsd:attribute name="type" type="ST_EffectContainerType" default="sib"/>
|
|
2145
|
+
* <xsd:attribute name="name" type="xsd:token"/>
|
|
2146
|
+
* </xsd:complexType>
|
|
2147
|
+
* ```
|
|
2148
|
+
*/
|
|
2149
|
+
interface EffectDagOptions {
|
|
2150
|
+
/** Container type: "sib" (parallel) or "tree" (sequential) */
|
|
2151
|
+
readonly type?: (typeof EffectContainerType)[keyof typeof EffectContainerType];
|
|
2152
|
+
/** Container name */
|
|
2153
|
+
readonly name?: string;
|
|
2154
|
+
readonly blur?: BlurEffectOptions;
|
|
2155
|
+
readonly fillOverlay?: FillOverlayEffectOptions;
|
|
2156
|
+
readonly glow?: GlowEffectOptions;
|
|
2157
|
+
readonly innerShadow?: InnerShadowEffectOptions;
|
|
2158
|
+
readonly outerShadow?: OuterShadowEffectOptions;
|
|
2159
|
+
readonly presetShadow?: PresetShadowEffectOptions;
|
|
2160
|
+
readonly reflection?: ReflectionEffectOptions | true;
|
|
2161
|
+
readonly softEdge?: number;
|
|
2162
|
+
/** Nested effect containers */
|
|
2163
|
+
readonly containers?: readonly EffectDagOptions[];
|
|
2164
|
+
/** Effect references */
|
|
2165
|
+
readonly effectRefs?: readonly EffectReferenceOptions[];
|
|
2166
|
+
/** Alpha bi-level effect */
|
|
2167
|
+
readonly alphaBiLevel?: AlphaBiLevelEffectOptions;
|
|
2168
|
+
/** Alpha ceiling effect (empty element) */
|
|
2169
|
+
readonly alphaCeiling?: boolean;
|
|
2170
|
+
/** Alpha floor effect (empty element) */
|
|
2171
|
+
readonly alphaFloor?: boolean;
|
|
2172
|
+
/** Alpha inverse effect */
|
|
2173
|
+
readonly alphaInverse?: AlphaInverseEffectOptions;
|
|
2174
|
+
/** Alpha modulate effect (requires nested container) */
|
|
2175
|
+
readonly alphaModulate?: EffectDagOptions;
|
|
2176
|
+
/** Alpha modulate fixed effect */
|
|
2177
|
+
readonly alphaModulateFixed?: AlphaModulateFixedEffectOptions;
|
|
2178
|
+
/** Alpha outset effect */
|
|
2179
|
+
readonly alphaOutset?: AlphaOutsetEffectOptions;
|
|
2180
|
+
/** Alpha replace effect */
|
|
2181
|
+
readonly alphaReplace?: AlphaReplaceEffectOptions;
|
|
2182
|
+
/** Bi-level effect (threshold) */
|
|
2183
|
+
readonly biLevel?: {
|
|
2184
|
+
readonly threshold: number;
|
|
2185
|
+
};
|
|
2186
|
+
/** Blend effect (requires nested container) */
|
|
2187
|
+
readonly blend?: BlendEffectOptions;
|
|
2188
|
+
/** Color change effect */
|
|
2189
|
+
readonly colorChange?: ColorChangeEffectOptions;
|
|
2190
|
+
/** Color replace effect */
|
|
2191
|
+
readonly colorReplace?: SolidFillOptions;
|
|
2192
|
+
/** Duotone effect */
|
|
2193
|
+
readonly duotone?: DuotoneEffectOptions;
|
|
2194
|
+
/** Fill effect */
|
|
2195
|
+
readonly fill?: FillEffectOptions;
|
|
2196
|
+
/** Grayscale effect (empty element) */
|
|
2197
|
+
readonly grayscale?: boolean;
|
|
2198
|
+
/** HSL effect */
|
|
2199
|
+
readonly hsl?: HSLEffectOptions;
|
|
2200
|
+
/** Luminance effect */
|
|
2201
|
+
readonly luminance?: LuminanceEffectOptions;
|
|
2202
|
+
/** Tint effect */
|
|
2203
|
+
readonly tint?: TintEffectOptions;
|
|
2204
|
+
/** Relative offset effect */
|
|
2205
|
+
readonly relativeOffset?: RelativeOffsetEffectOptions;
|
|
2206
|
+
/** Transform effect */
|
|
2207
|
+
readonly transform?: TransformEffectOptions;
|
|
2208
|
+
}
|
|
2209
|
+
/**
|
|
2210
|
+
* Creates an effect DAG element (a:effectDag).
|
|
2211
|
+
*
|
|
2212
|
+
* This is the EG_EffectProperties choice alternative to effectLst,
|
|
2213
|
+
* supporting all 28 effect types with recursive nesting.
|
|
2214
|
+
*
|
|
2215
|
+
* @example
|
|
2216
|
+
* ```typescript
|
|
2217
|
+
* // Simple effect DAG with glow and outer shadow
|
|
2218
|
+
* createEffectDag({
|
|
2219
|
+
* glow: { radius: 50800, color: { value: "FF0000" } },
|
|
2220
|
+
* outerShadow: { color: { value: "000000" }, blurRadius: 76200 },
|
|
2221
|
+
* });
|
|
2222
|
+
*
|
|
2223
|
+
* // DAG with alpha effects and nested container
|
|
2224
|
+
* createEffectDag({
|
|
2225
|
+
* type: "tree",
|
|
2226
|
+
* alphaBiLevel: { threshold: 50000 },
|
|
2227
|
+
* containers: [{
|
|
2228
|
+
* glow: { color: { value: "FF0000" } },
|
|
2229
|
+
* }],
|
|
2230
|
+
* });
|
|
2231
|
+
* ```
|
|
2232
|
+
*/
|
|
2233
|
+
declare const createEffectDag: (options: EffectDagOptions) => XmlComponent;
|
|
2234
|
+
//#endregion
|
|
2235
|
+
//#region src/drawingml/effects/soft-edge.d.ts
|
|
2236
|
+
/**
|
|
2237
|
+
* Creates a soft edge effect element.
|
|
2238
|
+
*
|
|
2239
|
+
* ## XSD Schema
|
|
2240
|
+
* ```xml
|
|
2241
|
+
* <xsd:complexType name="CT_SoftEdgesEffect">
|
|
2242
|
+
* <xsd:attribute name="rad" type="ST_PositiveCoordinate" use="required"/>
|
|
2243
|
+
* </xsd:complexType>
|
|
2244
|
+
* ```
|
|
2245
|
+
*
|
|
2246
|
+
* @param rad - Soft edge radius in EMUs (required)
|
|
2247
|
+
*/
|
|
2248
|
+
declare const createSoftEdgeEffect: (rad: number) => BuilderElement<{
|
|
2249
|
+
readonly rad: number;
|
|
2250
|
+
}>;
|
|
2251
|
+
//#endregion
|
|
2252
|
+
//#region src/drawingml/three-d/scene-3d.d.ts
|
|
2253
|
+
/**
|
|
2254
|
+
* Sphere coordinates (CT_SphereCoords).
|
|
2255
|
+
*
|
|
2256
|
+
* Used for camera and light rig rotation. All angles are in 1/60000 of a degree.
|
|
2257
|
+
*
|
|
2258
|
+
* ## XSD Schema
|
|
2259
|
+
* ```xml
|
|
2260
|
+
* <xsd:complexType name="CT_SphereCoords">
|
|
2261
|
+
* <xsd:attribute name="lat" type="ST_PositiveFixedAngle" use="required"/>
|
|
2262
|
+
* <xsd:attribute name="lon" type="ST_PositiveFixedAngle" use="required"/>
|
|
2263
|
+
* <xsd:attribute name="rev" type="ST_PositiveFixedAngle" use="required"/>
|
|
2264
|
+
* </xsd:complexType>
|
|
2265
|
+
* ```
|
|
2266
|
+
*/
|
|
2267
|
+
interface SphereCoords {
|
|
2268
|
+
/** Latitude angle (0 to 21600000, in 1/60000 degree units) */
|
|
2269
|
+
readonly lat: number;
|
|
2270
|
+
/** Longitude angle (0 to 21600000) */
|
|
2271
|
+
readonly lon: number;
|
|
2272
|
+
/** Revolution angle (0 to 21600000) */
|
|
2273
|
+
readonly rev: number;
|
|
2274
|
+
}
|
|
2275
|
+
/**
|
|
2276
|
+
* Camera options (CT_Camera).
|
|
2277
|
+
*
|
|
2278
|
+
* Defines the camera type and optional rotation for the 3D scene.
|
|
2279
|
+
*
|
|
2280
|
+
* ## XSD Schema
|
|
2281
|
+
* ```xml
|
|
2282
|
+
* <xsd:complexType name="CT_Camera">
|
|
2283
|
+
* <xsd:sequence>
|
|
2284
|
+
* <xsd:element name="rot" type="CT_SphereCoords" minOccurs="0"/>
|
|
2285
|
+
* </xsd:sequence>
|
|
2286
|
+
* <xsd:attribute name="prst" type="ST_PresetCameraType" use="required"/>
|
|
2287
|
+
* <xsd:attribute name="fov" type="ST_FOVAngle" use="optional"/>
|
|
2288
|
+
* <xsd:attribute name="zoom" type="ST_PositivePercentage" use="optional" default="100%"/>
|
|
2289
|
+
* </xsd:complexType>
|
|
2290
|
+
* ```
|
|
2291
|
+
*/
|
|
2292
|
+
interface CameraOptions {
|
|
2293
|
+
/** Preset camera type (e.g., "perspectiveFront", "isometricTopUp") */
|
|
2294
|
+
readonly preset: string;
|
|
2295
|
+
/** Field of view angle (0 to 10800000, in 1/60000 degree units, max 180°) */
|
|
2296
|
+
readonly fov?: number;
|
|
2297
|
+
/** Zoom percentage (e.g., "100%") */
|
|
2298
|
+
readonly zoom?: string;
|
|
2299
|
+
/** Camera rotation */
|
|
2300
|
+
readonly rotation?: SphereCoords;
|
|
2301
|
+
}
|
|
2302
|
+
/**
|
|
2303
|
+
* Light rig options (CT_LightRig).
|
|
2304
|
+
*
|
|
2305
|
+
* Defines the lighting setup for the 3D scene.
|
|
2306
|
+
*
|
|
2307
|
+
* ## XSD Schema
|
|
2308
|
+
* ```xml
|
|
2309
|
+
* <xsd:complexType name="CT_LightRig">
|
|
2310
|
+
* <xsd:sequence>
|
|
2311
|
+
* <xsd:element name="rot" type="CT_SphereCoords" minOccurs="0"/>
|
|
2312
|
+
* </xsd:sequence>
|
|
2313
|
+
* <xsd:attribute name="rig" type="ST_LightRigType" use="required"/>
|
|
2314
|
+
* <xsd:attribute name="dir" type="ST_LightRigDirection" use="required"/>
|
|
2315
|
+
* </xsd:complexType>
|
|
2316
|
+
* ```
|
|
2317
|
+
*/
|
|
2318
|
+
interface LightRigOptions {
|
|
2319
|
+
/** Light rig type (e.g., "threePt", "balanced", "soft") */
|
|
2320
|
+
readonly rig: string;
|
|
2321
|
+
/** Light direction (e.g., "tl", "t", "tr", "l", "r", "bl", "b", "br") */
|
|
2322
|
+
readonly direction: string;
|
|
2323
|
+
/** Light rig rotation */
|
|
2324
|
+
readonly rotation?: SphereCoords;
|
|
2325
|
+
}
|
|
2326
|
+
/**
|
|
2327
|
+
* 3D point (CT_Point3D).
|
|
2328
|
+
*/
|
|
2329
|
+
interface Point3D {
|
|
2330
|
+
readonly x: number;
|
|
2331
|
+
readonly y: number;
|
|
2332
|
+
readonly z: number;
|
|
2333
|
+
}
|
|
2334
|
+
/**
|
|
2335
|
+
* 3D vector (CT_Vector3D).
|
|
2336
|
+
*/
|
|
2337
|
+
interface Vector3D {
|
|
2338
|
+
readonly dx: number;
|
|
2339
|
+
readonly dy: number;
|
|
2340
|
+
readonly dz: number;
|
|
2341
|
+
}
|
|
2342
|
+
/**
|
|
2343
|
+
* Backdrop options (CT_Backdrop).
|
|
2344
|
+
*
|
|
2345
|
+
* Defines the backdrop plane for the 3D scene.
|
|
2346
|
+
*
|
|
2347
|
+
* ## XSD Schema
|
|
2348
|
+
* ```xml
|
|
2349
|
+
* <xsd:complexType name="CT_Backdrop">
|
|
2350
|
+
* <xsd:sequence>
|
|
2351
|
+
* <xsd:element name="anchor" type="CT_Point3D" use="required"/>
|
|
2352
|
+
* <xsd:element name="norm" type="CT_Vector3D" use="required"/>
|
|
2353
|
+
* <xsd:element name="up" type="CT_Vector3D" use="required"/>
|
|
2354
|
+
* </xsd:sequence>
|
|
2355
|
+
* </xsd:complexType>
|
|
2356
|
+
* ```
|
|
2357
|
+
*/
|
|
2358
|
+
interface BackdropOptions {
|
|
2359
|
+
/** Anchor point */
|
|
2360
|
+
readonly anchor: Point3D;
|
|
2361
|
+
/** Normal vector */
|
|
2362
|
+
readonly normal: Vector3D;
|
|
2363
|
+
/** Up vector */
|
|
2364
|
+
readonly up: Vector3D;
|
|
2365
|
+
}
|
|
2366
|
+
/**
|
|
2367
|
+
* Options for a 3D scene (CT_Scene3D).
|
|
2368
|
+
*
|
|
2369
|
+
* Both `camera` and `lightRig` are required. `backdrop` is optional.
|
|
2370
|
+
*
|
|
2371
|
+
* ## XSD Schema
|
|
2372
|
+
* ```xml
|
|
2373
|
+
* <xsd:complexType name="CT_Scene3D">
|
|
2374
|
+
* <xsd:sequence>
|
|
2375
|
+
* <xsd:element name="camera" type="CT_Camera" minOccurs="1"/>
|
|
2376
|
+
* <xsd:element name="lightRig" type="CT_LightRig" minOccurs="1"/>
|
|
2377
|
+
* <xsd:element name="backdrop" type="CT_Backdrop" minOccurs="0"/>
|
|
2378
|
+
* </xsd:sequence>
|
|
2379
|
+
* </xsd:complexType>
|
|
2380
|
+
* ```
|
|
2381
|
+
*
|
|
2382
|
+
* @example
|
|
2383
|
+
* ```typescript
|
|
2384
|
+
* createScene3D({
|
|
2385
|
+
* camera: { preset: "perspectiveFront" },
|
|
2386
|
+
* lightRig: { rig: "threePt", direction: "t" },
|
|
2387
|
+
* });
|
|
2388
|
+
* ```
|
|
2389
|
+
*/
|
|
2390
|
+
interface Scene3DOptions {
|
|
2391
|
+
/** Camera settings (required) */
|
|
2392
|
+
readonly camera: CameraOptions;
|
|
2393
|
+
/** Light rig settings (required) */
|
|
2394
|
+
readonly lightRig: LightRigOptions;
|
|
2395
|
+
/** Backdrop settings (optional) */
|
|
2396
|
+
readonly backdrop?: BackdropOptions;
|
|
2397
|
+
}
|
|
2398
|
+
/**
|
|
2399
|
+
* Creates a 3D scene element (a:scene3d).
|
|
2400
|
+
*
|
|
2401
|
+
* @example
|
|
2402
|
+
* ```typescript
|
|
2403
|
+
* // Simple scene with default camera and lighting
|
|
2404
|
+
* createScene3D({
|
|
2405
|
+
* camera: { preset: "perspectiveFront" },
|
|
2406
|
+
* lightRig: { rig: "threePt", direction: "t" },
|
|
2407
|
+
* });
|
|
2408
|
+
*
|
|
2409
|
+
* // Scene with rotated camera and backdrop
|
|
2410
|
+
* createScene3D({
|
|
2411
|
+
* camera: {
|
|
2412
|
+
* preset: "isometricTopUp",
|
|
2413
|
+
* rotation: { lat: 0, lon: 0, rev: 5400000 },
|
|
2414
|
+
* },
|
|
2415
|
+
* lightRig: { rig: "balanced", direction: "tl" },
|
|
2416
|
+
* backdrop: {
|
|
2417
|
+
* anchor: { x: 0, y: 0, z: 0 },
|
|
2418
|
+
* normal: { dx: 0, dy: 0, dz: 1 },
|
|
2419
|
+
* up: { dx: 0, dy: 1, dz: 0 },
|
|
2420
|
+
* },
|
|
2421
|
+
* });
|
|
2422
|
+
* ```
|
|
2423
|
+
*/
|
|
2424
|
+
declare const createScene3D: (options: Scene3DOptions) => XmlComponent;
|
|
2425
|
+
//#endregion
|
|
2426
|
+
//#region src/drawingml/three-d/bevel.d.ts
|
|
2427
|
+
/**
|
|
2428
|
+
* Bevel preset types (12 variations).
|
|
2429
|
+
*
|
|
2430
|
+
* Reference: ISO/IEC 29500-4, dml-main.xsd, ST_BevelPresetType
|
|
2431
|
+
*/
|
|
2432
|
+
declare const BevelPresetType: {
|
|
2433
|
+
readonly RELAXED_INSET: "relaxedInset";
|
|
2434
|
+
readonly CIRCLE: "circle";
|
|
2435
|
+
readonly SLOPE: "slope";
|
|
2436
|
+
readonly CROSS: "cross";
|
|
2437
|
+
readonly ANGLE: "angle";
|
|
2438
|
+
readonly SOFT_ROUND: "softRound";
|
|
2439
|
+
readonly CONVEX: "convex";
|
|
2440
|
+
readonly COOL_SLANT: "coolSlant";
|
|
2441
|
+
readonly DIVOT: "divot";
|
|
2442
|
+
readonly RIBLET: "riblet";
|
|
2443
|
+
readonly HARD_EDGE: "hardEdge";
|
|
2444
|
+
readonly ART_DECO: "artDeco";
|
|
2445
|
+
};
|
|
2446
|
+
/**
|
|
2447
|
+
* Options for a bevel element.
|
|
2448
|
+
*/
|
|
2449
|
+
interface BevelOptions {
|
|
2450
|
+
/** Bevel width in EMUs (default 76200) */
|
|
2451
|
+
readonly w?: number;
|
|
2452
|
+
/** Bevel height in EMUs (default 76200) */
|
|
2453
|
+
readonly h?: number;
|
|
2454
|
+
/** Bevel preset type */
|
|
2455
|
+
readonly prst?: (typeof BevelPresetType)[keyof typeof BevelPresetType];
|
|
2456
|
+
}
|
|
2457
|
+
/**
|
|
2458
|
+
* Creates a bevel element.
|
|
2459
|
+
*
|
|
2460
|
+
* ## XSD Schema
|
|
2461
|
+
* ```xml
|
|
2462
|
+
* <xsd:complexType name="CT_Bevel">
|
|
2463
|
+
* <xsd:attribute name="w" type="ST_PositiveCoordinate" default="76200"/>
|
|
2464
|
+
* <xsd:attribute name="h" type="ST_PositiveCoordinate" default="76200"/>
|
|
2465
|
+
* <xsd:attribute name="prst" type="ST_BevelPresetType" default="circle"/>
|
|
2466
|
+
* </xsd:complexType>
|
|
2467
|
+
* ```
|
|
2468
|
+
*/
|
|
2469
|
+
declare const createBevel: (options?: BevelOptions) => BuilderElement<{}>;
|
|
2470
|
+
/**
|
|
2471
|
+
* Creates a bottom bevel element (a:bevelB).
|
|
2472
|
+
*/
|
|
2473
|
+
declare const createBottomBevel: (options?: BevelOptions) => BuilderElement<{}>;
|
|
2474
|
+
//#endregion
|
|
2475
|
+
//#region src/drawingml/three-d/shape-3d.d.ts
|
|
2476
|
+
/**
|
|
2477
|
+
* Preset material types for 3D shapes (15 variations).
|
|
2478
|
+
*
|
|
2479
|
+
* Reference: ISO/IEC 29500-4, dml-main.xsd, ST_PresetMaterialType
|
|
2480
|
+
*/
|
|
2481
|
+
declare const PresetMaterialType: {
|
|
2482
|
+
readonly LEGACY_MATTE: "legacyMatte";
|
|
2483
|
+
readonly LEGACY_PLASTIC: "legacyPlastic";
|
|
2484
|
+
readonly LEGACY_METAL: "legacyMetal";
|
|
2485
|
+
readonly LEGACY_WIREFRAME: "legacyWireframe";
|
|
2486
|
+
readonly MATTE: "matte";
|
|
2487
|
+
readonly PLASTIC: "plastic";
|
|
2488
|
+
readonly METAL: "metal";
|
|
2489
|
+
readonly WARM_MATTE: "warmMatte";
|
|
2490
|
+
readonly TRANSLUCENT_POWDER: "translucentPowder";
|
|
2491
|
+
readonly POWDER: "powder";
|
|
2492
|
+
readonly DK_EDGE: "darkEdge";
|
|
2493
|
+
readonly SOFT_EDGE: "softEdge";
|
|
2494
|
+
readonly CLEAR: "clear";
|
|
2495
|
+
readonly FLAT: "flat";
|
|
2496
|
+
readonly SOFT_METAL: "softMetal";
|
|
2497
|
+
};
|
|
2498
|
+
/**
|
|
2499
|
+
* Options for 3D shape properties.
|
|
2500
|
+
*/
|
|
2501
|
+
interface Shape3DOptions {
|
|
2502
|
+
/** Top bevel options */
|
|
2503
|
+
readonly bevelT?: BevelOptions;
|
|
2504
|
+
/** Bottom bevel options */
|
|
2505
|
+
readonly bevelB?: BevelOptions;
|
|
2506
|
+
/** Extrusion color (CT_Color / EG_ColorChoice) */
|
|
2507
|
+
readonly extrusionColor?: SolidFillOptions;
|
|
2508
|
+
/** Contour color (CT_Color / EG_ColorChoice) */
|
|
2509
|
+
readonly contourColor?: SolidFillOptions;
|
|
2510
|
+
/** Depth in EMUs (default 0) */
|
|
2511
|
+
readonly z?: number;
|
|
2512
|
+
/** Extrusion height in EMUs (default 0) */
|
|
2513
|
+
readonly extrusionH?: number;
|
|
2514
|
+
/** Contour width in EMUs (default 0) */
|
|
2515
|
+
readonly contourW?: number;
|
|
2516
|
+
/** Material preset type */
|
|
2517
|
+
readonly prstMaterial?: (typeof PresetMaterialType)[keyof typeof PresetMaterialType];
|
|
2518
|
+
}
|
|
2519
|
+
/**
|
|
2520
|
+
* Creates a 3D shape properties element (a:sp3d).
|
|
2521
|
+
*
|
|
2522
|
+
* ## XSD Schema
|
|
2523
|
+
* ```xml
|
|
2524
|
+
* <xsd:complexType name="CT_Shape3D">
|
|
2525
|
+
* <xsd:sequence>
|
|
2526
|
+
* <xsd:element name="bevelT" type="CT_Bevel" minOccurs="0"/>
|
|
2527
|
+
* <xsd:element name="bevelB" type="CT_Bevel" minOccurs="0"/>
|
|
2528
|
+
* <xsd:element name="extrusionClr" type="CT_Color" minOccurs="0"/>
|
|
2529
|
+
* <xsd:element name="contourClr" type="CT_Color" minOccurs="0"/>
|
|
2530
|
+
* </xsd:sequence>
|
|
2531
|
+
* <xsd:attribute name="z" type="ST_Coordinate" default="0"/>
|
|
2532
|
+
* <xsd:attribute name="extrusionH" type="ST_PositiveCoordinate" default="0"/>
|
|
2533
|
+
* <xsd:attribute name="contourW" type="ST_PositiveCoordinate" default="0"/>
|
|
2534
|
+
* <xsd:attribute name="prstMaterial" type="ST_PresetMaterialType" default="warmMatte"/>
|
|
2535
|
+
* </xsd:complexType>
|
|
2536
|
+
* ```
|
|
2537
|
+
*/
|
|
2538
|
+
declare const createShape3D: (options: Shape3DOptions) => XmlComponent;
|
|
2539
|
+
//#endregion
|
|
2540
|
+
//#region src/drawingml/geometry/adjustment-values.d.ts
|
|
2541
|
+
/**
|
|
2542
|
+
* A single geometry guide that defines an adjustment value.
|
|
2543
|
+
*
|
|
2544
|
+
* ## XSD Schema
|
|
2545
|
+
* ```xml
|
|
2546
|
+
* <xsd:complexType name="CT_GeomGuide">
|
|
2547
|
+
* <xsd:attribute name="name" type="ST_GeomGuideName" use="required"/>
|
|
2548
|
+
* <xsd:attribute name="fmla" type="ST_GeomGuideFormula" use="required"/>
|
|
2549
|
+
* </xsd:complexType>
|
|
2550
|
+
* ```
|
|
2551
|
+
*
|
|
2552
|
+
* @example
|
|
2553
|
+
* ```typescript
|
|
2554
|
+
* // Adjust rounded rectangle corner radius
|
|
2555
|
+
* { name: "adj", formula: "val 16667" }
|
|
2556
|
+
*
|
|
2557
|
+
* // Adjust star inner radius
|
|
2558
|
+
* { name: "val", formula: "val 50000" }
|
|
2559
|
+
* ```
|
|
2560
|
+
*
|
|
2561
|
+
* Note: Formula examples like `val 16667` define fixed adjustment values.
|
|
2562
|
+
*/
|
|
2563
|
+
interface GeometryGuide {
|
|
2564
|
+
/** Guide name (identifier) */
|
|
2565
|
+
readonly name: string;
|
|
2566
|
+
/** Guide formula (e.g., "val 16667") */
|
|
2567
|
+
readonly formula: string;
|
|
2568
|
+
}
|
|
2569
|
+
/**
|
|
2570
|
+
* Creates an adjustment values list element (a:avLst).
|
|
2571
|
+
*
|
|
2572
|
+
* The adjustment values list contains geometry guides that modify
|
|
2573
|
+
* the appearance of a preset geometric shape. When empty, default
|
|
2574
|
+
* values are used.
|
|
2575
|
+
*
|
|
2576
|
+
* ## XSD Schema
|
|
2577
|
+
* ```xml
|
|
2578
|
+
* <xsd:complexType name="CT_GeomGuideList">
|
|
2579
|
+
* <xsd:sequence>
|
|
2580
|
+
* <xsd:element name="gd" type="CT_GeomGuide" minOccurs="0" maxOccurs="unbounded"/>
|
|
2581
|
+
* </xsd:sequence>
|
|
2582
|
+
* </xsd:complexType>
|
|
2583
|
+
* ```
|
|
2584
|
+
*
|
|
2585
|
+
* @example
|
|
2586
|
+
* ```typescript
|
|
2587
|
+
* // Empty adjustment values (defaults)
|
|
2588
|
+
* createAdjustmentValues();
|
|
2589
|
+
*
|
|
2590
|
+
* // With guides
|
|
2591
|
+
* createAdjustmentValues([
|
|
2592
|
+
* { name: "adj", formula: "val 16667" },
|
|
2593
|
+
* ]);
|
|
2594
|
+
* ```
|
|
2595
|
+
*/
|
|
2596
|
+
declare const createAdjustmentValues: (guides?: readonly GeometryGuide[]) => XmlComponent;
|
|
2597
|
+
//#endregion
|
|
2598
|
+
//#region src/drawingml/geometry/preset-geometry.d.ts
|
|
2599
|
+
/**
|
|
2600
|
+
* Options for preset geometry.
|
|
2601
|
+
*/
|
|
2602
|
+
interface PresetGeometryOptions {
|
|
2603
|
+
/**
|
|
2604
|
+
* Preset shape type (ST_ShapeType).
|
|
2605
|
+
*
|
|
2606
|
+
* Defaults to `"rect"` if not specified.
|
|
2607
|
+
*/
|
|
2608
|
+
readonly preset?: string;
|
|
2609
|
+
/**
|
|
2610
|
+
* Adjustment values that modify the base shape.
|
|
2611
|
+
*
|
|
2612
|
+
* Each guide has a name and formula (e.g., `{ name: "adj", formula: "val 16667" }`).
|
|
2613
|
+
*/
|
|
2614
|
+
readonly adjustmentValues?: readonly GeometryGuide[];
|
|
2615
|
+
}
|
|
2616
|
+
/**
|
|
2617
|
+
* Represents a preset geometry for a DrawingML shape.
|
|
2618
|
+
*
|
|
2619
|
+
* This element specifies when a preset geometric shape should be used instead
|
|
2620
|
+
* of a custom geometry. It includes a shape preset identifier and optional
|
|
2621
|
+
* adjustment values that modify the base shape.
|
|
2622
|
+
*
|
|
2623
|
+
* ## XSD Schema
|
|
2624
|
+
* ```xml
|
|
2625
|
+
* <xsd:complexType name="CT_PresetGeometry2D">
|
|
2626
|
+
* <xsd:sequence>
|
|
2627
|
+
* <xsd:element name="avLst" type="CT_GeomGuideList" minOccurs="0" maxOccurs="1"/>
|
|
2628
|
+
* </xsd:sequence>
|
|
2629
|
+
* <xsd:attribute name="prst" type="ST_ShapeType" use="required"/>
|
|
2630
|
+
* </xsd:complexType>
|
|
2631
|
+
* ```
|
|
2632
|
+
*
|
|
2633
|
+
* @example
|
|
2634
|
+
* ```typescript
|
|
2635
|
+
* // Default rectangle
|
|
2636
|
+
* const geometry = new PresetGeometry();
|
|
2637
|
+
*
|
|
2638
|
+
* // Rounded rectangle with adjustment
|
|
2639
|
+
* const geometry = new PresetGeometry({
|
|
2640
|
+
* preset: "roundRect",
|
|
2641
|
+
* adjustmentValues: [{ name: "adj", formula: "val 16667" }],
|
|
2642
|
+
* });
|
|
2643
|
+
* ```
|
|
2644
|
+
*/
|
|
2645
|
+
declare class PresetGeometry extends XmlComponent {
|
|
2646
|
+
constructor(options?: PresetGeometryOptions);
|
|
2647
|
+
}
|
|
2648
|
+
//#endregion
|
|
2649
|
+
//#region src/drawingml/geometry/custom-geometry.d.ts
|
|
2650
|
+
/**
|
|
2651
|
+
* Path fill mode (ST_PathFillMode).
|
|
2652
|
+
*
|
|
2653
|
+
* ## XSD Schema
|
|
2654
|
+
* ```xml
|
|
2655
|
+
* <xsd:simpleType name="ST_PathFillMode">
|
|
2656
|
+
* <xsd:restriction base="xsd:token">
|
|
2657
|
+
* <xsd:enumeration value="none"/>
|
|
2658
|
+
* <xsd:enumeration value="norm"/>
|
|
2659
|
+
* <xsd:enumeration value="lighten"/>
|
|
2660
|
+
* <xsd:enumeration value="lightenLess"/>
|
|
2661
|
+
* <xsd:enumeration value="darken"/>
|
|
2662
|
+
* <xsd:enumeration value="darkenLess"/>
|
|
2663
|
+
* </xsd:restriction>
|
|
2664
|
+
* </xsd:simpleType>
|
|
2665
|
+
* ```
|
|
2666
|
+
*/
|
|
2667
|
+
declare const PathFillMode: {
|
|
2668
|
+
readonly NONE: "none";
|
|
2669
|
+
readonly NORM: "normal";
|
|
2670
|
+
readonly LIGHTEN: "lighten";
|
|
2671
|
+
readonly LIGHTEN_LESS: "lightenLess";
|
|
2672
|
+
readonly DARKEN: "darken";
|
|
2673
|
+
readonly DARKEN_LESS: "darkenLess";
|
|
2674
|
+
};
|
|
2675
|
+
/**
|
|
2676
|
+
* An adjustable point (CT_AdjPoint2D).
|
|
2677
|
+
*
|
|
2678
|
+
* Coordinates can be absolute values or references to geometry guide names.
|
|
2679
|
+
*/
|
|
2680
|
+
interface AdjPoint {
|
|
2681
|
+
/** X coordinate (absolute value or guide name) */
|
|
2682
|
+
readonly x: string;
|
|
2683
|
+
/** Y coordinate (absolute value or guide name) */
|
|
2684
|
+
readonly y: string;
|
|
2685
|
+
}
|
|
2686
|
+
/** Move-to path command (CT_Path2DMoveTo). */
|
|
2687
|
+
interface PathMoveTo {
|
|
2688
|
+
readonly command: "moveTo";
|
|
2689
|
+
readonly point: AdjPoint;
|
|
2690
|
+
}
|
|
2691
|
+
/** Line-to path command (CT_Path2DLineTo). */
|
|
2692
|
+
interface PathLineTo {
|
|
2693
|
+
readonly command: "lineTo";
|
|
2694
|
+
readonly point: AdjPoint;
|
|
2695
|
+
}
|
|
2696
|
+
/** Arc-to path command (CT_Path2DArcTo). */
|
|
2697
|
+
interface PathArcTo {
|
|
2698
|
+
readonly command: "arcTo";
|
|
2699
|
+
readonly widthRadius: string;
|
|
2700
|
+
readonly heightRadius: string;
|
|
2701
|
+
readonly startAngle: string;
|
|
2702
|
+
readonly sweepAngle: string;
|
|
2703
|
+
}
|
|
2704
|
+
/** Quadratic Bezier-to path command (CT_Path2DQuadBezierTo). */
|
|
2705
|
+
interface PathQuadBezTo {
|
|
2706
|
+
readonly command: "quadBezTo";
|
|
2707
|
+
readonly points: readonly [AdjPoint, AdjPoint];
|
|
2708
|
+
}
|
|
2709
|
+
/** Cubic Bezier-to path command (CT_Path2DCubicBezierTo). */
|
|
2710
|
+
interface PathCubicBezTo {
|
|
2711
|
+
readonly command: "cubicBezTo";
|
|
2712
|
+
readonly points: readonly [AdjPoint, AdjPoint, AdjPoint];
|
|
2713
|
+
}
|
|
2714
|
+
/** Close path command (CT_Path2DClose). */
|
|
2715
|
+
interface PathClose {
|
|
2716
|
+
readonly command: "close";
|
|
2717
|
+
}
|
|
2718
|
+
/** A path command within a custom geometry path. */
|
|
2719
|
+
type PathCommand = PathMoveTo | PathLineTo | PathArcTo | PathQuadBezTo | PathCubicBezTo | PathClose;
|
|
2720
|
+
/**
|
|
2721
|
+
* Options for a 2D path (CT_Path2D).
|
|
2722
|
+
*
|
|
2723
|
+
* ## XSD Schema
|
|
2724
|
+
* ```xml
|
|
2725
|
+
* <xsd:complexType name="CT_Path2D">
|
|
2726
|
+
* <xsd:choice minOccurs="0" maxOccurs="unbounded">
|
|
2727
|
+
* <xsd:element name="close" type="CT_Path2DClose"/>
|
|
2728
|
+
* <xsd:element name="moveTo" type="CT_Path2DMoveTo"/>
|
|
2729
|
+
* <xsd:element name="lnTo" type="CT_Path2DLineTo"/>
|
|
2730
|
+
* <xsd:element name="arcTo" type="CT_Path2DArcTo"/>
|
|
2731
|
+
* <xsd:element name="quadBezTo" type="CT_Path2DQuadBezierTo"/>
|
|
2732
|
+
* <xsd:element name="cubicBezTo" type="CT_Path2DCubicBezierTo"/>
|
|
2733
|
+
* </xsd:choice>
|
|
2734
|
+
* <xsd:attribute name="w" type="ST_PositiveCoordinate" default="0"/>
|
|
2735
|
+
* <xsd:attribute name="h" type="ST_PositiveCoordinate" default="0"/>
|
|
2736
|
+
* <xsd:attribute name="fill" type="ST_PathFillMode" default="norm"/>
|
|
2737
|
+
* <xsd:attribute name="stroke" type="xsd:boolean" default="true"/>
|
|
2738
|
+
* <xsd:attribute name="extrusionOk" type="xsd:boolean" default="true"/>
|
|
2739
|
+
* </xsd:complexType>
|
|
2740
|
+
* ```
|
|
2741
|
+
*/
|
|
2742
|
+
interface PathOptions {
|
|
2743
|
+
/** Path width (coordinate value, default 0 = use shape width) */
|
|
2744
|
+
readonly w?: number;
|
|
2745
|
+
/** Path height (coordinate value, default 0 = use shape height) */
|
|
2746
|
+
readonly h?: number;
|
|
2747
|
+
/** Fill mode for this path */
|
|
2748
|
+
readonly fill?: (typeof PathFillMode)[keyof typeof PathFillMode];
|
|
2749
|
+
/** Whether to stroke the path */
|
|
2750
|
+
readonly stroke?: boolean;
|
|
2751
|
+
/** Whether extrusion is allowed */
|
|
2752
|
+
readonly extrusionOk?: boolean;
|
|
2753
|
+
/** Path commands (moveTo, lineTo, arcTo, etc.) */
|
|
2754
|
+
readonly commands: readonly PathCommand[];
|
|
2755
|
+
}
|
|
2756
|
+
/**
|
|
2757
|
+
* A position reference for adjust handles and connection sites.
|
|
2758
|
+
*/
|
|
2759
|
+
interface AdjustHandlePosition {
|
|
2760
|
+
readonly x: string;
|
|
2761
|
+
readonly y: string;
|
|
2762
|
+
}
|
|
2763
|
+
/**
|
|
2764
|
+
* XY adjust handle (CT_XYAdjustHandle).
|
|
2765
|
+
*
|
|
2766
|
+
* Allows the user to drag a handle in X/Y directions.
|
|
2767
|
+
*/
|
|
2768
|
+
interface XYAdjustHandle {
|
|
2769
|
+
readonly type: "xy";
|
|
2770
|
+
readonly guideRefX?: string;
|
|
2771
|
+
readonly minX?: string;
|
|
2772
|
+
readonly maxX?: string;
|
|
2773
|
+
readonly guideRefY?: string;
|
|
2774
|
+
readonly minY?: string;
|
|
2775
|
+
readonly maxY?: string;
|
|
2776
|
+
readonly position: AdjustHandlePosition;
|
|
2777
|
+
}
|
|
2778
|
+
/**
|
|
2779
|
+
* Polar adjust handle (CT_PolarAdjustHandle).
|
|
2780
|
+
*
|
|
2781
|
+
* Allows the user to drag a handle in radius/angle directions.
|
|
2782
|
+
*/
|
|
2783
|
+
interface PolarAdjustHandle {
|
|
2784
|
+
readonly type: "polar";
|
|
2785
|
+
readonly guideRefRadius?: string;
|
|
2786
|
+
readonly minRadius?: string;
|
|
2787
|
+
readonly maxRadius?: string;
|
|
2788
|
+
readonly guideRefAngle?: string;
|
|
2789
|
+
readonly minAngle?: string;
|
|
2790
|
+
readonly maxAngle?: string;
|
|
2791
|
+
readonly position: AdjustHandlePosition;
|
|
2792
|
+
}
|
|
2793
|
+
/** An adjust handle (XY or Polar). */
|
|
2794
|
+
type AdjustHandle = XYAdjustHandle | PolarAdjustHandle;
|
|
2795
|
+
/**
|
|
2796
|
+
* Connection site (CT_ConnectionSite).
|
|
2797
|
+
*
|
|
2798
|
+
* Defines a point on the shape boundary where connectors can attach.
|
|
2799
|
+
*/
|
|
2800
|
+
interface ConnectionSite {
|
|
2801
|
+
/** Angle (absolute value or guide name) */
|
|
2802
|
+
readonly angle: string;
|
|
2803
|
+
/** Position */
|
|
2804
|
+
readonly position: AdjustHandlePosition;
|
|
2805
|
+
}
|
|
2806
|
+
/**
|
|
2807
|
+
* Text insertion rectangle (CT_GeomRect).
|
|
2808
|
+
*
|
|
2809
|
+
* Defines the rectangle within the shape where text is placed.
|
|
2810
|
+
* Coordinates can be absolute values or references to geometry guide names.
|
|
2811
|
+
*/
|
|
2812
|
+
interface GeomRect {
|
|
2813
|
+
readonly left: string;
|
|
2814
|
+
readonly top: string;
|
|
2815
|
+
readonly right: string;
|
|
2816
|
+
readonly bottom: string;
|
|
2817
|
+
}
|
|
2818
|
+
/**
|
|
2819
|
+
* Options for a custom 2D geometry (CT_CustomGeometry2D).
|
|
2820
|
+
*
|
|
2821
|
+
* Only `pathList` is required. All other sub-elements are optional.
|
|
2822
|
+
*
|
|
2823
|
+
* ## XSD Schema
|
|
2824
|
+
* ```xml
|
|
2825
|
+
* <xsd:complexType name="CT_CustomGeometry2D">
|
|
2826
|
+
* <xsd:sequence>
|
|
2827
|
+
* <xsd:element name="avLst" type="CT_GeomGuideList" minOccurs="0"/>
|
|
2828
|
+
* <xsd:element name="gdLst" type="CT_GeomGuideList" minOccurs="0"/>
|
|
2829
|
+
* <xsd:element name="ahLst" type="CT_AdjustHandleList" minOccurs="0"/>
|
|
2830
|
+
* <xsd:element name="cxnLst" type="CT_ConnectionSiteList" minOccurs="0"/>
|
|
2831
|
+
* <xsd:element name="rect" type="CT_GeomRect" minOccurs="0"/>
|
|
2832
|
+
* <xsd:element name="pathLst" type="CT_Path2DList" minOccurs="1"/>
|
|
2833
|
+
* </xsd:sequence>
|
|
2834
|
+
* </xsd:complexType>
|
|
2835
|
+
* ```
|
|
2836
|
+
*
|
|
2837
|
+
* @example
|
|
2838
|
+
* ```typescript
|
|
2839
|
+
* // Simple triangle
|
|
2840
|
+
* createCustomGeometry({
|
|
2841
|
+
* pathList: [{
|
|
2842
|
+
* commands: [
|
|
2843
|
+
* { command: "moveTo", point: { x: "0", y: "0" } },
|
|
2844
|
+
* { command: "lineTo", point: { x: "10000000", y: "0" } },
|
|
2845
|
+
* { command: "lineTo", point: { x: "5000000", y: "10000000" } },
|
|
2846
|
+
* { command: "close" },
|
|
2847
|
+
* ],
|
|
2848
|
+
* }],
|
|
2849
|
+
* });
|
|
2850
|
+
* ```
|
|
2851
|
+
*/
|
|
2852
|
+
interface CustomGeometryOptions {
|
|
2853
|
+
/** Adjustment value guides (a:avLst) */
|
|
2854
|
+
readonly adjustmentValues?: readonly GeometryGuide[];
|
|
2855
|
+
/** Geometry guide formulas (a:gdLst) */
|
|
2856
|
+
readonly guides?: readonly GeometryGuide[];
|
|
2857
|
+
/** Adjust handles (a:ahLst) */
|
|
2858
|
+
readonly adjustHandles?: readonly AdjustHandle[];
|
|
2859
|
+
/** Connection sites (a:cxnLst) */
|
|
2860
|
+
readonly connectionSites?: readonly ConnectionSite[];
|
|
2861
|
+
/** Text insertion rectangle (a:rect) */
|
|
2862
|
+
readonly textRect?: GeomRect;
|
|
2863
|
+
/** Path definitions (a:pathLst) — required */
|
|
2864
|
+
readonly pathList: readonly PathOptions[];
|
|
2865
|
+
}
|
|
2866
|
+
/**
|
|
2867
|
+
* Creates a custom 2D geometry element (a:custGeom).
|
|
2868
|
+
*
|
|
2869
|
+
* @example
|
|
2870
|
+
* ```typescript
|
|
2871
|
+
* // Diamond shape
|
|
2872
|
+
* const geom = createCustomGeometry({
|
|
2873
|
+
* pathList: [{
|
|
2874
|
+
* commands: [
|
|
2875
|
+
* { command: "moveTo", point: { x: "5000000", y: "0" } },
|
|
2876
|
+
* { command: "lineTo", point: { x: "10000000", y: "5000000" } },
|
|
2877
|
+
* { command: "lineTo", point: { x: "5000000", y: "10000000" } },
|
|
2878
|
+
* { command: "lineTo", point: { x: "0", y: "5000000" } },
|
|
2879
|
+
* { command: "close" },
|
|
2880
|
+
* ],
|
|
2881
|
+
* }],
|
|
2882
|
+
* textRect: { left: "2000000", top: "2000000", right: "8000000", bottom: "8000000" },
|
|
2883
|
+
* });
|
|
2884
|
+
* ```
|
|
2885
|
+
*/
|
|
2886
|
+
declare const createCustomGeometry: (options: CustomGeometryOptions) => XmlComponent;
|
|
2887
|
+
//#endregion
|
|
2888
|
+
//#region src/drawingml/blip/blip.d.ts
|
|
2889
|
+
/**
|
|
2890
|
+
* Options for creating a blip element.
|
|
2891
|
+
*/
|
|
2892
|
+
interface BlipOptions {
|
|
2893
|
+
/** File name used as placeholder; the packer's ImageReplacer replaces `{referenceId}` with `rId{N}` */
|
|
2894
|
+
readonly referenceId: string;
|
|
2895
|
+
/** Image type for SVG detection */
|
|
2896
|
+
readonly type?: "svg" | string;
|
|
2897
|
+
/** For SVG images, the fallback image file name */
|
|
2898
|
+
readonly fallbackFileName?: string;
|
|
2899
|
+
}
|
|
2900
|
+
/**
|
|
2901
|
+
* Creates a blip element for an image.
|
|
2902
|
+
*
|
|
2903
|
+
* A blip references the actual image data stored in the document package
|
|
2904
|
+
* through a relationship ID. For SVG images, it includes extensions that
|
|
2905
|
+
* reference the SVG data.
|
|
2906
|
+
*
|
|
2907
|
+
* Reference: http://officeopenxml.com/drwPic.php
|
|
2908
|
+
*
|
|
2909
|
+
* ## XSD Schema
|
|
2910
|
+
* ```xml
|
|
2911
|
+
* <xsd:complexType name="CT_Blip">
|
|
2912
|
+
* <xsd:sequence>
|
|
2913
|
+
* <xsd:choice minOccurs="0" maxOccurs="unbounded">
|
|
2914
|
+
* <xsd:element name="alphaBiLevel" type="CT_AlphaBiLevelEffect"/>
|
|
2915
|
+
* <xsd:element name="alphaCeiling" type="CT_AlphaCeilingEffect"/>
|
|
2916
|
+
* <xsd:element name="alphaFloor" type="CT_AlphaFloorEffect"/>
|
|
2917
|
+
* <xsd:element name="alphaInv" type="CT_AlphaInverseEffect"/>
|
|
2918
|
+
* <xsd:element name="alphaMod" type="CT_AlphaModulateEffect"/>
|
|
2919
|
+
* <xsd:element name="alphaModFix" type="CT_AlphaModulateFixedEffect"/>
|
|
2920
|
+
* <xsd:element name="alphaRepl" type="CT_AlphaReplaceEffect"/>
|
|
2921
|
+
* <xsd:element name="biLevel" type="CT_BiLevelEffect"/>
|
|
2922
|
+
* <xsd:element name="blur" type="CT_BlurEffect"/>
|
|
2923
|
+
* <xsd:element name="clrChange" type="CT_ColorChangeEffect"/>
|
|
2924
|
+
* <xsd:element name="clrRepl" type="CT_ColorReplaceEffect"/>
|
|
2925
|
+
* <xsd:element name="duotone" type="CT_DuotoneEffect"/>
|
|
2926
|
+
* <xsd:element name="fillOverlay" type="CT_FillOverlayEffect"/>
|
|
2927
|
+
* <xsd:element name="grayscl" type="CT_GrayscaleEffect"/>
|
|
2928
|
+
* <xsd:element name="hsl" type="CT_HSLEffect"/>
|
|
2929
|
+
* <xsd:element name="lum" type="CT_LuminanceEffect"/>
|
|
2930
|
+
* <xsd:element name="tint" type="CT_TintEffect"/>
|
|
2931
|
+
* </xsd:choice>
|
|
2932
|
+
* <xsd:element name="extLst" type="CT_OfficeArtExtensionList" minOccurs="0"/>
|
|
2933
|
+
* </xsd:sequence>
|
|
2934
|
+
* <xsd:attribute ref="r:embed"/>
|
|
2935
|
+
* <xsd:attribute ref="r:link"/>
|
|
2936
|
+
* <xsd:attribute name="cstate" type="ST_BlipCompression"/>
|
|
2937
|
+
* </xsd:complexType>
|
|
2938
|
+
* ```
|
|
2939
|
+
*
|
|
2940
|
+
* @param options - Blip options including referenceId and type
|
|
2941
|
+
* @param blipEffects - Optional blip effects (brightness, contrast, etc.)
|
|
2942
|
+
* @returns An XML component representing the blip element
|
|
2943
|
+
*/
|
|
2944
|
+
declare const createBlip: (options: BlipOptions, blipEffects?: BlipEffectsOptions) => XmlComponent;
|
|
2945
|
+
//#endregion
|
|
2946
|
+
//#region src/drawingml/blip/blip-fill.d.ts
|
|
2947
|
+
/**
|
|
2948
|
+
* Options for blip fill properties.
|
|
2949
|
+
*/
|
|
2950
|
+
interface BlipFillOptions {
|
|
2951
|
+
/** DPI of the image */
|
|
2952
|
+
readonly dpi?: number;
|
|
2953
|
+
/** Whether the fill rotates with the shape */
|
|
2954
|
+
readonly rotWithShape?: boolean;
|
|
2955
|
+
/** Image adjustment effects (brightness, contrast, grayscale, etc.) */
|
|
2956
|
+
readonly blipEffects?: BlipEffectsOptions;
|
|
2957
|
+
/** Source rectangle for cropping */
|
|
2958
|
+
readonly srcRect?: SourceRectangleOptions;
|
|
2959
|
+
/** Tile fill mode (if omitted, defaults to stretch) */
|
|
2960
|
+
readonly tile?: TileOptions;
|
|
2961
|
+
}
|
|
2962
|
+
/**
|
|
2963
|
+
* Creates a blip fill element.
|
|
2964
|
+
*
|
|
2965
|
+
* This element specifies the type of fill used for a picture. It contains the blip (image)
|
|
2966
|
+
* reference, an optional source rectangle for cropping, and the fill mode (typically stretch).
|
|
2967
|
+
*
|
|
2968
|
+
* Reference: ISO/IEC 29500-4, dml-main.xsd, CT_BlipFillProperties
|
|
2969
|
+
*
|
|
2970
|
+
* ## XSD Schema
|
|
2971
|
+
* ```xml
|
|
2972
|
+
* <xsd:complexType name="CT_BlipFillProperties">
|
|
2973
|
+
* <xsd:sequence>
|
|
2974
|
+
* <xsd:element name="blip" type="CT_Blip" minOccurs="0" maxOccurs="1"/>
|
|
2975
|
+
* <xsd:element name="srcRect" type="CT_RelativeRect" minOccurs="0" maxOccurs="1"/>
|
|
2976
|
+
* <xsd:group ref="EG_FillModeProperties" minOccurs="0" maxOccurs="1"/>
|
|
2977
|
+
* </xsd:sequence>
|
|
2978
|
+
* <xsd:attribute name="dpi" type="xsd:unsignedInt" use="optional"/>
|
|
2979
|
+
* <xsd:attribute name="rotWithShape" type="xsd:boolean" use="optional"/>
|
|
2980
|
+
* </xsd:complexType>
|
|
2981
|
+
* ```
|
|
2982
|
+
*
|
|
2983
|
+
* @param blipOptions - Blip options including referenceId and type
|
|
2984
|
+
* @param fillOptions - Optional blip fill options
|
|
2985
|
+
*/
|
|
2986
|
+
declare const createBlipFill: (blipOptions: BlipOptions, fillOptions?: BlipFillOptions) => XmlComponent;
|
|
2987
|
+
//#endregion
|
|
2988
|
+
//#region src/drawingml/blip/blip-extentions.d.ts
|
|
2989
|
+
/**
|
|
2990
|
+
* Creates an extension list for SVG images.
|
|
2991
|
+
*
|
|
2992
|
+
* This element contains the extensions needed to embed SVG images
|
|
2993
|
+
* within a blip. It wraps the SVG-specific extension elements.
|
|
2994
|
+
*
|
|
2995
|
+
* ## XSD Schema
|
|
2996
|
+
* ```xml
|
|
2997
|
+
* <xsd:complexType name="CT_OfficeArtExtensionList">
|
|
2998
|
+
* <xsd:sequence>
|
|
2999
|
+
* <xsd:element name="ext" type="CT_OfficeArtExtension" minOccurs="0" maxOccurs="unbounded"/>
|
|
3000
|
+
* </xsd:sequence>
|
|
3001
|
+
* </xsd:complexType>
|
|
3002
|
+
* ```
|
|
3003
|
+
*
|
|
3004
|
+
* @param svgReferenceId - The reference ID for the SVG image
|
|
3005
|
+
* @returns An XML component representing the extension list
|
|
3006
|
+
*/
|
|
3007
|
+
declare const createExtentionList: (svgReferenceId: string) => XmlComponent;
|
|
3008
|
+
//#endregion
|
|
3009
|
+
//#region src/drawingml/blip/stretch.d.ts
|
|
3010
|
+
/**
|
|
3011
|
+
* Represents a stretch fill mode for blip fills.
|
|
3012
|
+
*
|
|
3013
|
+
* This element specifies that the blip (image) should be stretched to fill
|
|
3014
|
+
* the entire shape. The stretch fill is one of the fill mode properties
|
|
3015
|
+
* that determines how an image is applied to a shape.
|
|
3016
|
+
*
|
|
3017
|
+
* Reference: http://officeopenxml.com/drwPic.php
|
|
3018
|
+
*
|
|
3019
|
+
* ## XSD Schema
|
|
3020
|
+
* ```xml
|
|
3021
|
+
* <xsd:complexType name="CT_StretchInfoProperties">
|
|
3022
|
+
* <xsd:sequence>
|
|
3023
|
+
* <xsd:element name="fillRect" type="CT_RelativeRect" minOccurs="0" maxOccurs="1"/>
|
|
3024
|
+
* </xsd:sequence>
|
|
3025
|
+
* </xsd:complexType>
|
|
3026
|
+
* ```
|
|
3027
|
+
*
|
|
3028
|
+
* @example
|
|
3029
|
+
* ```typescript
|
|
3030
|
+
* const stretch = new Stretch();
|
|
3031
|
+
* ```
|
|
3032
|
+
*/
|
|
3033
|
+
declare class Stretch extends XmlComponent {
|
|
3034
|
+
constructor();
|
|
3035
|
+
}
|
|
3036
|
+
//#endregion
|
|
3037
|
+
//#region src/drawingml/transform.d.ts
|
|
3038
|
+
interface Transform2DOptions {
|
|
3039
|
+
readonly x?: number;
|
|
3040
|
+
readonly y?: number;
|
|
3041
|
+
readonly width?: number;
|
|
3042
|
+
readonly height?: number;
|
|
3043
|
+
readonly flipHorizontal?: boolean;
|
|
3044
|
+
readonly flipVertical?: boolean;
|
|
3045
|
+
readonly rotation?: number;
|
|
3046
|
+
}
|
|
3047
|
+
interface GroupTransform2DOptions extends Transform2DOptions {
|
|
3048
|
+
readonly childOffsetX?: number;
|
|
3049
|
+
readonly childOffsetY?: number;
|
|
3050
|
+
readonly childExtentWidth?: number;
|
|
3051
|
+
readonly childExtentHeight?: number;
|
|
3052
|
+
}
|
|
3053
|
+
/**
|
|
3054
|
+
* Creates a 2D transform element (a:xfrm).
|
|
3055
|
+
*
|
|
3056
|
+
* @param options - Transform options including position, size, rotation, and flip.
|
|
3057
|
+
* @param elementName - Element name, defaults to "a:xfrm".
|
|
3058
|
+
*/
|
|
3059
|
+
declare const createTransform2D: (options: Transform2DOptions, elementName?: string) => XmlComponent;
|
|
3060
|
+
/**
|
|
3061
|
+
* Creates a group transform element (a:xfrm with chOff/chExt children).
|
|
3062
|
+
*/
|
|
3063
|
+
declare const createGroupTransform2D: (options: GroupTransform2DOptions, elementName?: string) => XmlComponent;
|
|
3064
|
+
//#endregion
|
|
3065
|
+
//#region src/drawingml/media/transformation.d.ts
|
|
3066
|
+
/**
|
|
3067
|
+
* Internal media data transformation with both pixel and EMU values.
|
|
3068
|
+
*/
|
|
3069
|
+
interface MediaDataTransformation {
|
|
3070
|
+
readonly offset?: {
|
|
3071
|
+
readonly pixels: {
|
|
3072
|
+
readonly x: number;
|
|
3073
|
+
readonly y: number;
|
|
3074
|
+
};
|
|
3075
|
+
readonly emus?: {
|
|
3076
|
+
readonly x: number;
|
|
3077
|
+
readonly y: number;
|
|
3078
|
+
};
|
|
3079
|
+
};
|
|
3080
|
+
readonly pixels: {
|
|
3081
|
+
/** Width in pixels */readonly x: number; /** Height in pixels */
|
|
3082
|
+
readonly y: number;
|
|
3083
|
+
};
|
|
3084
|
+
/** Display dimensions in EMUs (English Metric Units) */
|
|
3085
|
+
readonly emus: {
|
|
3086
|
+
/** Width in EMUs (1 inch = 914400 EMUs) */readonly x: number; /** Height in EMUs (1 inch = 914400 EMUs) */
|
|
3087
|
+
readonly y: number;
|
|
3088
|
+
};
|
|
3089
|
+
/** Optional flip transformations */
|
|
3090
|
+
readonly flip?: {
|
|
3091
|
+
/** Whether to flip the image vertically */readonly vertical?: boolean; /** Whether to flip the image horizontally */
|
|
3092
|
+
readonly horizontal?: boolean;
|
|
3093
|
+
};
|
|
3094
|
+
/** Optional rotation angle in degrees */
|
|
3095
|
+
readonly rotation?: number;
|
|
3096
|
+
}
|
|
3097
|
+
/**
|
|
3098
|
+
* Transformation options for media display.
|
|
3099
|
+
*
|
|
3100
|
+
* Specifies how an image should be transformed when displayed in the document.
|
|
3101
|
+
*/
|
|
3102
|
+
interface MediaTransformation {
|
|
3103
|
+
readonly offset?: {
|
|
3104
|
+
readonly top?: number;
|
|
3105
|
+
readonly left?: number;
|
|
3106
|
+
};
|
|
3107
|
+
readonly width: number;
|
|
3108
|
+
/** Display height in pixels */
|
|
3109
|
+
readonly height: number;
|
|
3110
|
+
/** Optional flip transformations */
|
|
3111
|
+
readonly flip?: {
|
|
3112
|
+
/** Whether to flip the image vertically */readonly vertical?: boolean; /** Whether to flip the image horizontally */
|
|
3113
|
+
readonly horizontal?: boolean;
|
|
3114
|
+
};
|
|
3115
|
+
/** Optional rotation angle in degrees */
|
|
3116
|
+
readonly rotation?: number;
|
|
3117
|
+
}
|
|
3118
|
+
/**
|
|
3119
|
+
* Converts user-facing transformation options (pixels) to internal
|
|
3120
|
+
* transformation data (pixels + EMUs).
|
|
3121
|
+
*
|
|
3122
|
+
* @param options - User-facing transformation in pixels
|
|
3123
|
+
* @returns Internal transformation data with both pixel and EMU values
|
|
3124
|
+
*/
|
|
3125
|
+
declare const createTransformation: (options: MediaTransformation) => MediaDataTransformation;
|
|
3126
|
+
//#endregion
|
|
3127
|
+
export { RectAlignment as $, createSolidFill as $t, createBevel as A, FillOptions as At, createSoftEdgeEffect as B, RelativeRect as Bt, GeometryGuide as C, createGroupFill as Ct, createShape3D as D, createNoFill as Dt, Shape3DOptions as E, createPatternFill as Et, Point3D as F, GradientShadeOptions as Ft, EffectListOptions as G, TileOptions as Gt, EffectDagOptions as H, createGradientFill as Ht, Scene3DOptions as I, GradientStop as It, createReflectionEffect as J, createSourceRectangle as Jt, createEffectList as K, createTileInfo as Kt, SphereCoords as L, LinearShadeOptions as Lt, BackdropOptions as M, buildFill as Mt, CameraOptions as N, extractBlipFillMedia as Nt, BevelOptions as O, BlipFillConfigOptions as Ot, LightRigOptions as P, GradientFillOptions as Pt, OuterShadowEffectOptions as Q, createColorElement as Qt, Vector3D as R, PathShadeOptions as Rt, PresetGeometryOptions as S, createCustomDash as St, PresetMaterialType as T, PresetPattern as Tt, createEffectDag as U, createGradientStop as Ut, EffectContainerType as V, TileFlipMode as Vt, BlurEffectOptions as W, TileAlignment as Wt, PresetShadowVal as X, createBlipEffects as Xt, PresetShadowEffectOptions as Y, BlipEffectsOptions as Yt, createPresetShadowEffect as Z, SolidFillOptions as Zt, PathCommand as _, LineEndOptions as _t, Transform2DOptions as a, createSchemeColor as an, BlendMode as at, createCustomGeometry as b, createLineEnd as bt, Stretch as c, RgbColorOptions as cn, CompoundLine as ct, createBlipFill as d, PresetColorOptions as dn, OutlineFillProperties as dt, SystemColor as en, createOuterShadowEffect as et, BlipOptions as f, createPresetColor as fn, OutlineOptions as ft, GeomRect as g, createColorTransforms as gn, LineEndLength as gt, CustomGeometryOptions as h, ColorTransformOptions as hn, createOutline as ht, GroupTransform2DOptions as i, SchemeColorOptions as in, createGlowEffect as it, createBottomBevel as j, GradientStopOptions as jt, BevelPresetType as k, BlipFillMediaData as kt, createExtentionList as l, createRgbColor as ln, LineCap as lt, ConnectionSite as m, createHslColor as mn, PresetDash as mt, MediaTransformation as n, createSystemColor as nn, createInnerShadowEffect as nt, createGroupTransform2D as o, ScRgbColorOptions as on, FillOverlayEffectOptions as ot, createBlip as p, HslColorOptions as pn, PenAlignment as pt, ReflectionEffectOptions as q, SourceRectangleOptions as qt, createTransformation as r, SchemeColor as rn, GlowEffectOptions as rt, createTransform2D as s, createScRgbColor as sn, createFillOverlayEffect as st, MediaDataTransformation as t, SystemColorOptions as tn, InnerShadowEffectOptions as tt, BlipFillOptions as u, PresetColor as un, LineJoin as ut, PathFillMode as v, LineEndType as vt, createAdjustmentValues as w, PatternFillOptions as wt, PresetGeometry as x, DashStop as xt, PathOptions as y, LineEndWidth as yt, createScene3D as z, PathShadeType as zt };
|