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