perf: 优化PPTX导入效果

This commit is contained in:
pipipi-pikachu 2025-01-11 20:51:51 +08:00
parent dbdab187e5
commit 53751c1d35
3 changed files with 13 additions and 11 deletions

18
package-lock.json generated
View File

@ -1,12 +1,12 @@
{
"name": "pptist",
"version": "1.0.0",
"version": "2.0.0",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "pptist",
"version": "1.0.0",
"version": "2.0.0",
"dependencies": {
"@icon-park/vue-next": "^1.4.2",
"animate.css": "^4.1.1",
@ -24,7 +24,7 @@
"number-precision": "^1.6.0",
"pinia": "^2.1.7",
"pptxgenjs": "^3.12.0",
"pptxtojson": "^1.1.0",
"pptxtojson": "^1.1.1",
"prosemirror-commands": "^1.6.0",
"prosemirror-dropcursor": "^1.8.1",
"prosemirror-gapcursor": "^1.3.2",
@ -4177,9 +4177,9 @@
}
},
"node_modules/pptxtojson": {
"version": "1.1.0",
"resolved": "https://registry.npmmirror.com/pptxtojson/-/pptxtojson-1.1.0.tgz",
"integrity": "sha512-JJdk9vLwYq+p9T33cqT3O24CDK+0EU4XsNR1kGJxtSnO4QWGVmlkvX1Mmd2me4tSdGEeRX35+ljerwL/PFJabw==",
"version": "1.1.1",
"resolved": "https://registry.npmmirror.com/pptxtojson/-/pptxtojson-1.1.1.tgz",
"integrity": "sha512-J8K0BdRTlbVeKGu3tbK8qlSxAc8HKfnsn4ycANBsgPuVvsSEf9VmcmwH/tFJjLZgeoJ0qjo9v780pliAdZ85SA==",
"dependencies": {
"jszip": "^3.10.1",
"tinycolor2": "1.6.0",
@ -8393,9 +8393,9 @@
}
},
"pptxtojson": {
"version": "1.1.0",
"resolved": "https://registry.npmmirror.com/pptxtojson/-/pptxtojson-1.1.0.tgz",
"integrity": "sha512-JJdk9vLwYq+p9T33cqT3O24CDK+0EU4XsNR1kGJxtSnO4QWGVmlkvX1Mmd2me4tSdGEeRX35+ljerwL/PFJabw==",
"version": "1.1.1",
"resolved": "https://registry.npmmirror.com/pptxtojson/-/pptxtojson-1.1.1.tgz",
"integrity": "sha512-J8K0BdRTlbVeKGu3tbK8qlSxAc8HKfnsn4ycANBsgPuVvsSEf9VmcmwH/tFJjLZgeoJ0qjo9v780pliAdZ85SA==",
"requires": {
"jszip": "^3.10.1",
"tinycolor2": "1.6.0",

View File

@ -29,7 +29,7 @@
"number-precision": "^1.6.0",
"pinia": "^2.1.7",
"pptxgenjs": "^3.12.0",
"pptxtojson": "^1.1.0",
"pptxtojson": "^1.1.1",
"prosemirror-commands": "^1.6.0",
"prosemirror-dropcursor": "^1.8.1",
"prosemirror-gapcursor": "^1.3.2",

View File

@ -190,7 +190,9 @@ export default () => {
}
const parseElements = (elements: Element[]) => {
for (const el of elements) {
const sortedElements = elements.sort((a, b) => a.order - b.order)
for (const el of sortedElements) {
const originWidth = el.width || 1
const originHeight = el.height || 1
const originLeft = el.left