画布问题更改
This commit is contained in:
@@ -280,8 +280,13 @@ export class PasteLayerCommand extends Command {
|
|||||||
isCut: undefined,
|
isCut: undefined,
|
||||||
serializedObjects: undefined,
|
serializedObjects: undefined,
|
||||||
};
|
};
|
||||||
|
if(this.newLayer.isPrintTrims){
|
||||||
if (this.insertIndex !== undefined && this.insertIndex !== null) {
|
this.layers.value.forEach((layer) => {
|
||||||
|
if (layer.isPrintTrimsGroup) {
|
||||||
|
layer.children.push(this.newLayer);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}else if (this.insertIndex !== undefined && this.insertIndex !== null) {
|
||||||
this.layers.value.splice(this.insertIndex, 0, this.newLayer);
|
this.layers.value.splice(this.insertIndex, 0, this.newLayer);
|
||||||
} else {
|
} else {
|
||||||
this.layers.value.push(this.newLayer);
|
this.layers.value.push(this.newLayer);
|
||||||
|
|||||||
@@ -870,9 +870,9 @@ backgroundObject.scaleY,'CanvasManager resetCanvasSizeByFixedLayer')
|
|||||||
|
|
||||||
return layerObjectByLayerId;
|
return layerObjectByLayerId;
|
||||||
}
|
}
|
||||||
getObjectsByIds(ids){
|
getObjectsByIdOrLayerId(ids){
|
||||||
const objects = this.canvas.getObjects().filter((obj) => {
|
const objects = this.canvas.getObjects().filter((obj) => {
|
||||||
return ids.includes(obj.id);
|
return ids.includes(obj.id) || ids.includes(obj.layerId);
|
||||||
});
|
});
|
||||||
return objects;
|
return objects;
|
||||||
}
|
}
|
||||||
@@ -1149,7 +1149,7 @@ backgroundObject.scaleY,'CanvasManager resetCanvasSizeByFixedLayer')
|
|||||||
const glayer = this.layerManager.getLayerById(SpecialLayerId.SPECIAL_GROUP);
|
const glayer = this.layerManager.getLayerById(SpecialLayerId.SPECIAL_GROUP);
|
||||||
if(!glayer) return Promise.reject("印花和元素图层组不存在");
|
if(!glayer) return Promise.reject("印花和元素图层组不存在");
|
||||||
const ids = glayer.children.map((v) => v.id);
|
const ids = glayer.children.map((v) => v.id);
|
||||||
const objects = this.getObjectsByIds(ids);
|
const objects = this.getObjectsByIdOrLayerId(ids);
|
||||||
const fixedLayerObj = this.getFixedLayerObject();
|
const fixedLayerObj = this.getFixedLayerObject();
|
||||||
if(!fixedLayerObj) return Promise.reject("固定图层不存在");
|
if(!fixedLayerObj) return Promise.reject("固定图层不存在");
|
||||||
const flWidth = fixedLayerObj.width
|
const flWidth = fixedLayerObj.width
|
||||||
@@ -1161,7 +1161,8 @@ backgroundObject.scaleY,'CanvasManager resetCanvasSizeByFixedLayer')
|
|||||||
const prints = [];
|
const prints = [];
|
||||||
const trims = [];
|
const trims = [];
|
||||||
objects.forEach((v) => {
|
objects.forEach((v) => {
|
||||||
const sourceData = glayer.children.find((v_) => v_.id === v.id)?.metadata?.sourceData;
|
const label = glayer.children.find((v_) => (v_.id === v.layerId || v_.id === v.id));
|
||||||
|
const sourceData = label?.metadata?.sourceData;
|
||||||
if(!sourceData) return;
|
if(!sourceData) return;
|
||||||
const obj = {
|
const obj = {
|
||||||
ifSingle: typeof v.fill === "string",
|
ifSingle: typeof v.fill === "string",
|
||||||
|
|||||||
@@ -1750,7 +1750,7 @@ export class LayerManager {
|
|||||||
layer.serializedObjects = layer.fabricObjects
|
layer.serializedObjects = layer.fabricObjects
|
||||||
.map((obj) => {
|
.map((obj) => {
|
||||||
if (typeof obj.toObject === "function") {
|
if (typeof obj.toObject === "function") {
|
||||||
return obj.toObject(["id", "layerId", "layerName"]);
|
return obj.toObject(["id", "layerId", "layerName", "fill_"]);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
})
|
})
|
||||||
@@ -1763,7 +1763,7 @@ export class LayerManager {
|
|||||||
if (layer.fabricObject) {
|
if (layer.fabricObject) {
|
||||||
layer.serializedBackgroundObject =
|
layer.serializedBackgroundObject =
|
||||||
typeof layer.fabricObject.toObject === "function"
|
typeof layer.fabricObject.toObject === "function"
|
||||||
? layer.fabricObject.toObject(["id", "layerId", "layerName"])
|
? layer.fabricObject.toObject(["id", "layerId", "layerName", "fill_"])
|
||||||
: null;
|
: null;
|
||||||
|
|
||||||
delete layer.fabricObject;
|
delete layer.fabricObject;
|
||||||
@@ -1793,7 +1793,7 @@ export class LayerManager {
|
|||||||
return layer.fabricObjects
|
return layer.fabricObjects
|
||||||
.map((obj) => {
|
.map((obj) => {
|
||||||
const { object } = findObjectById(this.canvas, obj.id);
|
const { object } = findObjectById(this.canvas, obj.id);
|
||||||
if (object) return object.toObject(["id", "layerId", "layerName"]);
|
if (object) return object.toObject(["id", "layerId", "layerName", "fill_"]);
|
||||||
return false;
|
return false;
|
||||||
})
|
})
|
||||||
.filter(Boolean);
|
.filter(Boolean);
|
||||||
@@ -1839,6 +1839,7 @@ export class LayerManager {
|
|||||||
|
|
||||||
// 存储到剪贴板
|
// 存储到剪贴板
|
||||||
this.clipboardData = layerCopy;
|
this.clipboardData = layerCopy;
|
||||||
|
console.log("复制图层:", layerCopy);
|
||||||
const input = document.createElement("input");
|
const input = document.createElement("input");
|
||||||
input.value = "aida_copy_canvas_layer: " + layer.name;
|
input.value = "aida_copy_canvas_layer: " + layer.name;
|
||||||
document.body.appendChild(input);
|
document.body.appendChild(input);
|
||||||
@@ -1884,7 +1885,7 @@ export class LayerManager {
|
|||||||
layerCopy.serializedObjects = layer.fabricObjects
|
layerCopy.serializedObjects = layer.fabricObjects
|
||||||
.map((obj) =>
|
.map((obj) =>
|
||||||
typeof obj.toObject === "function"
|
typeof obj.toObject === "function"
|
||||||
? obj.toObject(["id", "layerId", "layerName"])
|
? obj.toObject(["id", "layerId", "layerName", "fill_"])
|
||||||
: null
|
: null
|
||||||
)
|
)
|
||||||
.filter(Boolean);
|
.filter(Boolean);
|
||||||
@@ -1935,10 +1936,6 @@ export class LayerManager {
|
|||||||
return this.clipboardData;
|
return this.clipboardData;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 粘贴图层
|
|
||||||
* @returns {string} 新创建的图层ID
|
|
||||||
*/
|
|
||||||
/**
|
/**
|
||||||
* 粘贴图层
|
* 粘贴图层
|
||||||
* @returns {string} 新创建的图层ID
|
* @returns {string} 新创建的图层ID
|
||||||
|
|||||||
Reference in New Issue
Block a user