diff --git a/src/component/HomePage/MoodboardUpload.vue b/src/component/HomePage/MoodboardUpload.vue index 468b0447..3223f230 100644 --- a/src/component/HomePage/MoodboardUpload.vue +++ b/src/component/HomePage/MoodboardUpload.vue @@ -644,6 +644,7 @@ export default defineComponent({ margin-left: calc(3rem*1.2); display: flex; flex-direction: column; + overflow: hidden; .modal_layout,.modal_accomplish{ .modal_text{ font-size:var(--aida-fsize1-4); diff --git a/src/component/modules/generalMiniCanvas.vue b/src/component/modules/generalMiniCanvas.vue index 3f0001ca..735176f6 100644 --- a/src/component/modules/generalMiniCanvas.vue +++ b/src/component/modules/generalMiniCanvas.vue @@ -568,7 +568,7 @@ export default defineComponent({ height: exportWH * ratio[1], isDrawingMode: false, // 开启绘图模式 }); - canvas.backgroundImage.clone((back)=>{ + canvas.backgroundImage.clone(async (back)=>{ back.set({ scaleX:1, scaleY:1, @@ -576,35 +576,43 @@ export default defineComponent({ top:back.top*scale , }) exportCanvas.backgroundImage = back - allObjects.forEach((item,index)=>{ - // let obj = fabric.util.object.clone(item); - if(item.type == 'circle')return - let obj - item.clone((cloned)=>{ - console.log(cloned); - obj = cloned - console.log(obj); - if(obj.set){ - obj.set( - { - scaleX:(item.scaleX?item.scaleX:1)*scale, - scaleY:(item.scaleY?item.scaleY:1)*scale, - left:item.left*scale, - top:item.top*scale, - } - ) - }else{ - obj.width = (item.width?item.width:1)*scale - obj.height = (item.height?item.height:1)*scale - obj.left = item.left*scale - obj.top = item.top*scale + await new Promise((resolve, reject) => { + allObjects.forEach((item,index)=>{ + // let obj = fabric.util.object.clone(item); + if(item.type == 'circle')return + let obj + item.clone((cloned)=>{ + console.log(cloned); + obj = cloned + console.log(obj.set); + if(obj.set){ + obj.set( + { + scaleX:(item.scaleX?item.scaleX:1)*scale, + scaleY:(item.scaleY?item.scaleY:1)*scale, + left:item.left*scale, + top:item.top*scale, + } + ) + } + // else{ + // console.log(item.width,scale); + + // obj.width = (item.width?item.width:1)*scale + // obj.height = (item.height?item.height:1)*scale + // obj.left = item.left*scale + // obj.top = item.top*scale - } + // } + exportCanvas.add(obj) + if(index == allObjects.length - 1){ + resolve('') + } + }) - exportCanvas.add(obj) }) - }) + let position = JSON.parse(JSON.stringify(canvas.viewportTransform)) position[4] *= scale position[5] *= scale