diff --git a/src/component/Canvas/CanvasEditor/commands/LayerCommands.js b/src/component/Canvas/CanvasEditor/commands/LayerCommands.js index 0aa04417..54bee584 100644 --- a/src/component/Canvas/CanvasEditor/commands/LayerCommands.js +++ b/src/component/Canvas/CanvasEditor/commands/LayerCommands.js @@ -144,7 +144,7 @@ export class AddLayerCommand extends Command { // 先在一级图层中查找 for (let i = 0; i < layers.length; i++) { const layer = layers[i]; - + if (layer.isPrintTrimsGroup) continue; if (layer.id === layerId) { return { layer: layer, diff --git a/src/component/Canvas/CanvasEditor/commands/TextCommands.js b/src/component/Canvas/CanvasEditor/commands/TextCommands.js index 8e6c80c0..a9e5699f 100644 --- a/src/component/Canvas/CanvasEditor/commands/TextCommands.js +++ b/src/component/Canvas/CanvasEditor/commands/TextCommands.js @@ -493,7 +493,7 @@ export class CreateTextCommand extends Command { // 先在一级图层中查找 for (let i = 0; i < layers.length; i++) { const layer = layers[i]; - + if (layer.isPrintTrimsGroup) continue; if (layer.id === layerId) { return { layer: layer, diff --git a/src/component/Canvas/CanvasEditor/components/LayersPanel/LayersPanel.vue b/src/component/Canvas/CanvasEditor/components/LayersPanel/LayersPanel.vue index da974e88..7f8cb216 100644 --- a/src/component/Canvas/CanvasEditor/components/LayersPanel/LayersPanel.vue +++ b/src/component/Canvas/CanvasEditor/components/LayersPanel/LayersPanel.vue @@ -576,7 +576,7 @@ function handleLayerClick(layer, event) { if (event.ctrlKey || event.metaKey || event.shiftKey || isMultiSelectMode.value) { toggleLayerSelection(layer, event); } else { - if(!layer.isFixedClipMask) lastSelectLayerId.value = layer.id; // 更新最后选中的图层ID + if(!layer.isPrintTrimsGroup) lastSelectLayerId.value = layer.id; // 更新最后选中的图层ID // 普通点击:进入单选模式 // selectedLayerIds.value = [layer.id]; // isMultiSelectMode.value = false; @@ -596,7 +596,7 @@ function handleLayerClick(layer, event) { layerManager?.updateLayersObjectsInteractivity(); } } - if(!layer.isFixedClipMask) lastSelectedIndex.value = sortableRootLayers.value.findIndex((l) => l.id === layer.id); + if(!layer.isPrintTrimsGroup) lastSelectedIndex.value = sortableRootLayers.value.findIndex((l) => l.id === layer.id); } } diff --git a/src/component/Canvas/CanvasEditor/managers/CanvasManager.js b/src/component/Canvas/CanvasEditor/managers/CanvasManager.js index 6a9ef705..fd2246f2 100644 --- a/src/component/Canvas/CanvasEditor/managers/CanvasManager.js +++ b/src/component/Canvas/CanvasEditor/managers/CanvasManager.js @@ -1644,7 +1644,7 @@ export class CanvasManager { fabricObjects: [], children: children, clippingMask: groupRect.toObject(), - isFixedClipMask: true, + isPrintTrimsGroup: true, specialType: SpecialType.PRINT_TRIMS_G, }); this.layers.value.splice(groupIndex, 0, groupLayer); diff --git a/src/component/Canvas/CanvasEditor/managers/LayerManager.js b/src/component/Canvas/CanvasEditor/managers/LayerManager.js index 6ef06696..007ef3f5 100644 --- a/src/component/Canvas/CanvasEditor/managers/LayerManager.js +++ b/src/component/Canvas/CanvasEditor/managers/LayerManager.js @@ -3271,7 +3271,7 @@ export class LayerManager { * @private */ _setupGroupMaskMovementSync(activeSelection, layer) { - if (!activeSelection || !layer || !layer.clippingMask || layer.isFixedClipMask) { + if (!activeSelection || !layer || !layer.clippingMask || layer.isPrintTrimsGroup) { return; } diff --git a/src/component/Canvas/CanvasEditor/utils/layerHelper.js b/src/component/Canvas/CanvasEditor/utils/layerHelper.js index 21e1daba..5540254a 100644 --- a/src/component/Canvas/CanvasEditor/utils/layerHelper.js +++ b/src/component/Canvas/CanvasEditor/utils/layerHelper.js @@ -203,7 +203,7 @@ export function createLayer(options = {}) { isHidenDragHandle: options.isHidenDragHandle || false, isDisableUnlock: options.isDisableUnlock || false, isFixedOther: options.isFixedOther || false, - isFixedClipMask: options.isFixedClipMask || false, + isPrintTrimsGroup: options.isPrintTrimsGroup || false, // 确保不是背景图层 isBackground: false, diff --git a/src/component/Canvas/CanvasEditor/utils/layerUtils.js b/src/component/Canvas/CanvasEditor/utils/layerUtils.js index 5effb1db..1e4b65e1 100644 --- a/src/component/Canvas/CanvasEditor/utils/layerUtils.js +++ b/src/component/Canvas/CanvasEditor/utils/layerUtils.js @@ -177,7 +177,7 @@ export function simplifyLayers(layers, excludedLayers = []) { isBackground: layer.isBackground || false, isFixed: layer.isFixed || false, isFixedOther: layer.isFixedOther || false, - isFixedClipMask: layer.isFixedClipMask || false, + isPrintTrimsGroup: layer.isPrintTrimsGroup || false, isHidenDragHandle: layer.isHidenDragHandle || false, isDisableUnlock: layer.isDisableUnlock || false, clippingMask: diff --git a/src/component/Canvas/OverallCanvas/index.vue b/src/component/Canvas/OverallCanvas/index.vue index 08f8c1dc..a73ec8a5 100644 --- a/src/component/Canvas/OverallCanvas/index.vue +++ b/src/component/Canvas/OverallCanvas/index.vue @@ -191,6 +191,7 @@ }; const setFill = async (item) => { if (!item) return null; + console.log(item.scale); const cwidth = canvas.width; const cheight = canvas.height; let image = await urlToCanvas(item.path);