@8btc/wujie-ppt 0.0.2 → 0.0.3
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/README.md +13 -5
- package/dist/PPTCanvas.d.ts +9 -14
- package/dist/PPTCanvas.test.d.ts +1 -0
- package/dist/mocks/import.ts +848 -0
- package/dist/mocks/slides2.json +316 -0
- package/dist/utils/import-parser.d.ts +92 -0
- package/dist/wujie-ppt.es.js +6741 -5572
- package/dist/wujie-ppt.umd.js +26 -26
- package/package.json +3 -2
package/dist/mocks/slides2.json
CHANGED
|
@@ -0,0 +1,316 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slides": [
|
|
3
|
+
{
|
|
4
|
+
"fill": {
|
|
5
|
+
"type": "color",
|
|
6
|
+
"value": "#FFFFFF"
|
|
7
|
+
},
|
|
8
|
+
"elements": [
|
|
9
|
+
{
|
|
10
|
+
"left": 0,
|
|
11
|
+
"top": 144,
|
|
12
|
+
"width": 393.12,
|
|
13
|
+
"height": 261,
|
|
14
|
+
"borderColor": "#000000",
|
|
15
|
+
"borderWidth": 0,
|
|
16
|
+
"borderType": "solid",
|
|
17
|
+
"borderStrokeDasharray": "0",
|
|
18
|
+
"fill": {
|
|
19
|
+
"type": "color",
|
|
20
|
+
"value": "#5b9bd5b3"
|
|
21
|
+
},
|
|
22
|
+
"content": "",
|
|
23
|
+
"isFlipV": false,
|
|
24
|
+
"isFlipH": false,
|
|
25
|
+
"rotate": 0,
|
|
26
|
+
"vAlign": "up",
|
|
27
|
+
"name": "Shape 0",
|
|
28
|
+
"order": 30411,
|
|
29
|
+
"type": "shape",
|
|
30
|
+
"shapType": "custom",
|
|
31
|
+
"path": " M0,0 L0,261 L393.12,261z"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"left": 0,
|
|
35
|
+
"top": 0,
|
|
36
|
+
"width": 216,
|
|
37
|
+
"height": 230.4,
|
|
38
|
+
"borderColor": "#000000",
|
|
39
|
+
"borderWidth": 0,
|
|
40
|
+
"borderType": "solid",
|
|
41
|
+
"borderStrokeDasharray": "0",
|
|
42
|
+
"fill": {
|
|
43
|
+
"type": "color",
|
|
44
|
+
"value": "#5B9BD5"
|
|
45
|
+
},
|
|
46
|
+
"content": "",
|
|
47
|
+
"isFlipV": true,
|
|
48
|
+
"isFlipH": false,
|
|
49
|
+
"rotate": 0,
|
|
50
|
+
"vAlign": "up",
|
|
51
|
+
"name": "Shape 1",
|
|
52
|
+
"order": 30438,
|
|
53
|
+
"type": "shape",
|
|
54
|
+
"shapType": "custom",
|
|
55
|
+
"path": " M0,0 L0,230.39999999999995 L216,230.39999999999995z"
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"left": 255.6,
|
|
59
|
+
"top": 46.98,
|
|
60
|
+
"width": 424.9524,
|
|
61
|
+
"height": 111.1613,
|
|
62
|
+
"borderColor": "#000000",
|
|
63
|
+
"borderWidth": 0,
|
|
64
|
+
"borderType": "solid",
|
|
65
|
+
"borderStrokeDasharray": "0",
|
|
66
|
+
"fill": "",
|
|
67
|
+
"content": "<p style=\"text-align: left;\"><span style=\"color: #333333;font-size: 80.64pt;font-family: 微软雅黑;font-weight: bold;\">PPTist11</span></p>",
|
|
68
|
+
"isFlipV": false,
|
|
69
|
+
"isFlipH": false,
|
|
70
|
+
"rotate": 0,
|
|
71
|
+
"vAlign": "up",
|
|
72
|
+
"name": "Text 2",
|
|
73
|
+
"order": 30470,
|
|
74
|
+
"type": "shape",
|
|
75
|
+
"shapType": "rect",
|
|
76
|
+
"path": "M 0 0 L 424.9524 0 L 424.9524 111.1613 L 0 111.1613 Z"
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"left": 255.6,
|
|
80
|
+
"top": 182.34,
|
|
81
|
+
"width": 421.2,
|
|
82
|
+
"height": 40.32,
|
|
83
|
+
"borderColor": "#000000",
|
|
84
|
+
"borderWidth": 0,
|
|
85
|
+
"borderType": "solid",
|
|
86
|
+
"borderStrokeDasharray": "0",
|
|
87
|
+
"fill": "",
|
|
88
|
+
"content": "<p style=\"text-align: left;\"><span style=\"color: #333333;font-size: 17.28pt;font-family: 微软雅黑;\">基于 Vue 3.x + TypeScript 的在线演示文稿应用</span></p>",
|
|
89
|
+
"isFlipV": false,
|
|
90
|
+
"isFlipH": false,
|
|
91
|
+
"rotate": 0,
|
|
92
|
+
"vAlign": "up",
|
|
93
|
+
"name": "Text 3",
|
|
94
|
+
"order": 30502,
|
|
95
|
+
"type": "shape",
|
|
96
|
+
"shapType": "rect",
|
|
97
|
+
"path": "M 0 0 L 421.2 0 L 421.2 40.32 L 0 40.32 Z"
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"left": 259.92,
|
|
101
|
+
"top": 171.36,
|
|
102
|
+
"width": 395.28,
|
|
103
|
+
"height": 0,
|
|
104
|
+
"borderColor": "#5B9BD5",
|
|
105
|
+
"borderWidth": 1.44,
|
|
106
|
+
"borderType": "solid",
|
|
107
|
+
"borderStrokeDasharray": "0",
|
|
108
|
+
"fill": "",
|
|
109
|
+
"content": "",
|
|
110
|
+
"isFlipV": false,
|
|
111
|
+
"isFlipH": false,
|
|
112
|
+
"rotate": 0,
|
|
113
|
+
"vAlign": "up",
|
|
114
|
+
"name": "Shape 4",
|
|
115
|
+
"order": 30530,
|
|
116
|
+
"type": "shape",
|
|
117
|
+
"shapType": "custom",
|
|
118
|
+
"path": " M0,0 L395.28,0"
|
|
119
|
+
}
|
|
120
|
+
],
|
|
121
|
+
"layoutElements": [],
|
|
122
|
+
"note": "",
|
|
123
|
+
"transition": null
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
"fill": {
|
|
127
|
+
"type": "color",
|
|
128
|
+
"value": "#FFFFFF"
|
|
129
|
+
},
|
|
130
|
+
"elements": [
|
|
131
|
+
{
|
|
132
|
+
"left": 104.4,
|
|
133
|
+
"top": 106.56,
|
|
134
|
+
"width": 511.92,
|
|
135
|
+
"height": 55.8675,
|
|
136
|
+
"borderColor": "#000000",
|
|
137
|
+
"borderWidth": 0,
|
|
138
|
+
"borderType": "solid",
|
|
139
|
+
"borderStrokeDasharray": "0",
|
|
140
|
+
"fill": "",
|
|
141
|
+
"content": "<p style=\"text-align: center;\"><span style=\"color: #333333;font-size: 34.56pt;font-family: 微软雅黑;font-weight: bold;\">在此处添加标题</span></p>",
|
|
142
|
+
"isFlipV": false,
|
|
143
|
+
"isFlipH": false,
|
|
144
|
+
"rotate": 0,
|
|
145
|
+
"vAlign": "up",
|
|
146
|
+
"name": "Text 0",
|
|
147
|
+
"order": 30862,
|
|
148
|
+
"type": "shape",
|
|
149
|
+
"shapType": "rect",
|
|
150
|
+
"path": "M 0 0 L 511.92 0 L 511.92 55.8675 L 0 55.8675 Z"
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
"left": 149.4,
|
|
154
|
+
"top": 179.8867,
|
|
155
|
+
"width": 421.2,
|
|
156
|
+
"height": 40.32,
|
|
157
|
+
"borderColor": "#000000",
|
|
158
|
+
"borderWidth": 0,
|
|
159
|
+
"borderType": "solid",
|
|
160
|
+
"borderStrokeDasharray": "0",
|
|
161
|
+
"fill": "",
|
|
162
|
+
"content": "<p style=\"text-align: center;\"><span style=\"color: #333333;font-size: 17.28pt;font-family: 微软雅黑;\">在此处添加副标题</span></p>",
|
|
163
|
+
"isFlipV": false,
|
|
164
|
+
"isFlipH": false,
|
|
165
|
+
"rotate": 0,
|
|
166
|
+
"vAlign": "up",
|
|
167
|
+
"name": "Text 1",
|
|
168
|
+
"order": 30894,
|
|
169
|
+
"type": "shape",
|
|
170
|
+
"shapType": "rect",
|
|
171
|
+
"path": "M 0 0 L 421.2 0 L 421.2 40.32 L 0 40.32 Z"
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
"left": 232.6267,
|
|
175
|
+
"top": 171.6,
|
|
176
|
+
"width": 255.4667,
|
|
177
|
+
"height": 0,
|
|
178
|
+
"borderColor": "#5B9BD5",
|
|
179
|
+
"borderWidth": 2.88,
|
|
180
|
+
"borderType": "solid",
|
|
181
|
+
"borderStrokeDasharray": "0",
|
|
182
|
+
"fill": "",
|
|
183
|
+
"content": "",
|
|
184
|
+
"isFlipV": false,
|
|
185
|
+
"isFlipH": false,
|
|
186
|
+
"rotate": 0,
|
|
187
|
+
"vAlign": "up",
|
|
188
|
+
"name": "Shape 2",
|
|
189
|
+
"order": 30922,
|
|
190
|
+
"type": "shape",
|
|
191
|
+
"shapType": "custom",
|
|
192
|
+
"path": " M0,0 L255.46669291338583,0"
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
"left": -19.9067,
|
|
196
|
+
"top": 311.5667,
|
|
197
|
+
"width": 760.5333,
|
|
198
|
+
"height": 117.3333,
|
|
199
|
+
"borderColor": "#000000",
|
|
200
|
+
"borderWidth": 0,
|
|
201
|
+
"borderType": "solid",
|
|
202
|
+
"borderStrokeDasharray": "0",
|
|
203
|
+
"fill": {
|
|
204
|
+
"type": "color",
|
|
205
|
+
"value": "#5B9BD5"
|
|
206
|
+
},
|
|
207
|
+
"content": "",
|
|
208
|
+
"isFlipV": false,
|
|
209
|
+
"isFlipH": false,
|
|
210
|
+
"rotate": 0,
|
|
211
|
+
"vAlign": "up",
|
|
212
|
+
"name": "Shape 3",
|
|
213
|
+
"order": 30965,
|
|
214
|
+
"type": "shape",
|
|
215
|
+
"shapType": "custom",
|
|
216
|
+
"path": " M0,11.733307086614174 C152.1066929133858,-23.466692913385824 228.16,35.199999999999996 380.2666929133858,11.733307086614174 C532.3733070866142,-23.466692913385824 608.4266929133858,35.199999999999996 760.5333070866142,11.733307086614174 L760.5333070866142,105.6 C532.3733070866142,140.79999999999998 608.4266929133858,82.13330708661417 380.2666929133858,105.6 C152.1066929133858,140.79999999999998 228.16,82.13330708661417 0,105.6 L0,11.733307086614174z"
|
|
217
|
+
}
|
|
218
|
+
],
|
|
219
|
+
"layoutElements": [],
|
|
220
|
+
"note": "",
|
|
221
|
+
"transition": null
|
|
222
|
+
},
|
|
223
|
+
{
|
|
224
|
+
"fill": {
|
|
225
|
+
"type": "color",
|
|
226
|
+
"value": "#FFFFFF"
|
|
227
|
+
},
|
|
228
|
+
"elements": [
|
|
229
|
+
{
|
|
230
|
+
"left": 132.1333,
|
|
231
|
+
"top": 126.3667,
|
|
232
|
+
"width": 435.7333,
|
|
233
|
+
"height": 133.3333,
|
|
234
|
+
"borderColor": "#000000",
|
|
235
|
+
"borderWidth": 0,
|
|
236
|
+
"borderType": "solid",
|
|
237
|
+
"borderStrokeDasharray": "0",
|
|
238
|
+
"fill": {
|
|
239
|
+
"type": "color",
|
|
240
|
+
"value": "#5B9BD5"
|
|
241
|
+
},
|
|
242
|
+
"content": "",
|
|
243
|
+
"isFlipV": false,
|
|
244
|
+
"isFlipH": false,
|
|
245
|
+
"rotate": 0,
|
|
246
|
+
"vAlign": "up",
|
|
247
|
+
"name": "Shape 0",
|
|
248
|
+
"order": 31294,
|
|
249
|
+
"type": "shape",
|
|
250
|
+
"shapType": "custom",
|
|
251
|
+
"path": " M0,0 L435.73330708661416,0 L435.73330708661416,133.33330708661416 L0,133.33330708661416z"
|
|
252
|
+
},
|
|
253
|
+
{
|
|
254
|
+
"left": 152.1333,
|
|
255
|
+
"top": 145.3,
|
|
256
|
+
"width": 435.7333,
|
|
257
|
+
"height": 133.3333,
|
|
258
|
+
"borderColor": "#000000",
|
|
259
|
+
"borderWidth": 0,
|
|
260
|
+
"borderType": "solid",
|
|
261
|
+
"borderStrokeDasharray": "0",
|
|
262
|
+
"fill": {
|
|
263
|
+
"type": "color",
|
|
264
|
+
"value": "#5b9bd5b3"
|
|
265
|
+
},
|
|
266
|
+
"content": "",
|
|
267
|
+
"isFlipV": false,
|
|
268
|
+
"isFlipH": false,
|
|
269
|
+
"rotate": 0,
|
|
270
|
+
"vAlign": "up",
|
|
271
|
+
"name": "Shape 1",
|
|
272
|
+
"order": 31324,
|
|
273
|
+
"type": "shape",
|
|
274
|
+
"shapType": "custom",
|
|
275
|
+
"path": " M0,0 L435.73330708661416,0 L435.73330708661416,133.33330708661416 L0,133.33330708661416z"
|
|
276
|
+
},
|
|
277
|
+
{
|
|
278
|
+
"left": 219.5333,
|
|
279
|
+
"top": 142.6333,
|
|
280
|
+
"width": 300.9333,
|
|
281
|
+
"height": 100.8,
|
|
282
|
+
"borderColor": "#000000",
|
|
283
|
+
"borderWidth": 0,
|
|
284
|
+
"borderType": "solid",
|
|
285
|
+
"borderStrokeDasharray": "0",
|
|
286
|
+
"fill": "",
|
|
287
|
+
"content": "<p style=\"text-align: center;\"><span style=\"color: #FFFFFF;font-size: 57.6pt;font-family: 微软雅黑;font-weight: bold;letter-spacing: 3.6pt;\">感谢观看</span></p>",
|
|
288
|
+
"isFlipV": false,
|
|
289
|
+
"isFlipH": false,
|
|
290
|
+
"rotate": 0,
|
|
291
|
+
"vAlign": "up",
|
|
292
|
+
"name": "Text 2",
|
|
293
|
+
"order": 31356,
|
|
294
|
+
"type": "shape",
|
|
295
|
+
"shapType": "rect",
|
|
296
|
+
"path": "M 0 0 L 300.9333 0 L 300.9333 100.8 L 0 100.8 Z"
|
|
297
|
+
}
|
|
298
|
+
],
|
|
299
|
+
"layoutElements": [],
|
|
300
|
+
"note": "",
|
|
301
|
+
"transition": null
|
|
302
|
+
}
|
|
303
|
+
],
|
|
304
|
+
"themeColors": [
|
|
305
|
+
"#4472C4",
|
|
306
|
+
"#ED7D31",
|
|
307
|
+
"#A5A5A5",
|
|
308
|
+
"#FFC000",
|
|
309
|
+
"#5B9BD5",
|
|
310
|
+
"#70AD47"
|
|
311
|
+
],
|
|
312
|
+
"size": {
|
|
313
|
+
"width": 720,
|
|
314
|
+
"height": 405
|
|
315
|
+
}
|
|
316
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { Slide } from '../types/slides';
|
|
2
|
+
|
|
3
|
+
interface RawFillColor {
|
|
4
|
+
type: "color";
|
|
5
|
+
value: string;
|
|
6
|
+
}
|
|
7
|
+
interface RawFillGradient {
|
|
8
|
+
type: "gradient";
|
|
9
|
+
value: {
|
|
10
|
+
path: "line" | "circle";
|
|
11
|
+
rot: number;
|
|
12
|
+
colors: {
|
|
13
|
+
pos: string;
|
|
14
|
+
color: string;
|
|
15
|
+
}[];
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
interface RawFillImage {
|
|
19
|
+
type: "image";
|
|
20
|
+
value: {
|
|
21
|
+
picBase64: string;
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
interface RawFillPattern {
|
|
25
|
+
type: "pattern";
|
|
26
|
+
value: string;
|
|
27
|
+
}
|
|
28
|
+
type RawFill = RawFillColor | RawFillGradient | RawFillImage | RawFillPattern | string;
|
|
29
|
+
interface RawElement {
|
|
30
|
+
type: string;
|
|
31
|
+
left: number;
|
|
32
|
+
top: number;
|
|
33
|
+
width: number;
|
|
34
|
+
height: number;
|
|
35
|
+
borderColor?: string;
|
|
36
|
+
borderWidth?: number;
|
|
37
|
+
borderType?: "solid" | "dashed" | "dotted";
|
|
38
|
+
fill?: RawFill;
|
|
39
|
+
content?: string;
|
|
40
|
+
rotate?: number;
|
|
41
|
+
vAlign?: string;
|
|
42
|
+
shapType?: string;
|
|
43
|
+
isFlipV?: boolean;
|
|
44
|
+
isFlipH?: boolean;
|
|
45
|
+
path?: string;
|
|
46
|
+
src?: string;
|
|
47
|
+
picBase64?: string;
|
|
48
|
+
blob?: string;
|
|
49
|
+
data?: any[][];
|
|
50
|
+
shadow?: {
|
|
51
|
+
h: number;
|
|
52
|
+
v: number;
|
|
53
|
+
blur: number;
|
|
54
|
+
color: string;
|
|
55
|
+
};
|
|
56
|
+
rect?: {
|
|
57
|
+
l: number;
|
|
58
|
+
t: number;
|
|
59
|
+
r: number;
|
|
60
|
+
b: number;
|
|
61
|
+
};
|
|
62
|
+
geom?: string;
|
|
63
|
+
isVertical?: boolean;
|
|
64
|
+
order: number;
|
|
65
|
+
[key: string]: any;
|
|
66
|
+
}
|
|
67
|
+
interface RawSlide {
|
|
68
|
+
fill: RawFill;
|
|
69
|
+
elements: RawElement[];
|
|
70
|
+
note?: string;
|
|
71
|
+
[key: string]: any;
|
|
72
|
+
}
|
|
73
|
+
export interface RawSlideJson {
|
|
74
|
+
slides: RawSlide[];
|
|
75
|
+
themeColors: string[];
|
|
76
|
+
size: {
|
|
77
|
+
width: number;
|
|
78
|
+
height: number;
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
export declare const parseSlidesData: (json: RawSlideJson) => {
|
|
82
|
+
slides: Slide[];
|
|
83
|
+
theme: {
|
|
84
|
+
themeColors: string[];
|
|
85
|
+
fontColor: string;
|
|
86
|
+
fontName: string;
|
|
87
|
+
backgroundColor: string;
|
|
88
|
+
};
|
|
89
|
+
viewportRatio: number;
|
|
90
|
+
viewportSize: number;
|
|
91
|
+
};
|
|
92
|
+
export {};
|