This commit is contained in:
李志鹏
2026-01-23 17:43:15 +08:00
parent 972743d3b8
commit 6cdc8c5486
2 changed files with 9 additions and 3 deletions

View File

@@ -509,9 +509,10 @@ onMounted(async () => {
let trailingTimeout = null;
observer = new ResizeObserver((entries) => {
clearTimeout(trailingTimeout);
trailingTimeout = setTimeout(() => {
optimizeCanvasRendering(canvasManager.canvas, ()=> handleWindowResize());
}, 1000);
trailingTimeout = setTimeout(async () => {
if(canvasManager.awaitCanvasRun) await canvasManager.awaitCanvasRun();
handleWindowResize()
}, 100);
});
observer.observe(canvasContainerRef.value);
// 使用window的resize事件代替ResizeObserver

View File

@@ -73,6 +73,7 @@ export class CanvasManager {
this.partManager = options.partManager || null;
this.props = options.props || {};
this.emit = options.emit || (() => {});
this.awaitCanvasRun = null;
// 初始化画布
this.initializeCanvas();
}
@@ -1487,6 +1488,8 @@ backgroundObject.scaleY,'CanvasManager resetCanvasSizeByFixedLayer')
*/
async createOtherLayers(otherData, isUpdate = false) {
if (!otherData) return console.warn("otherData 为空不需要添加");
let resolve = ()=>{};
this.awaitCanvasRun = ()=>(new Promise((v) => resolve = v))
const otherData_ = JSON.parse(JSON.stringify(otherData));
console.log("==========创建其他图层", otherData_);
@@ -1534,6 +1537,8 @@ backgroundObject.scaleY,'CanvasManager resetCanvasSizeByFixedLayer')
await this.createPrintTrimsLayers(printTrimsLayers, singleLayers);
}
await this.changeCanvas();
console.log("==========创建其他图层成功");
resolve();
}
// 设置画布对象的裁剪信息