Skip to content

Commit 7c2f015

Browse files
committed
コマ内に画像を保存する際、上部にPolygonがあるとエラーになる問題を修正
1 parent 9fa44ea commit 7c2f015

File tree

9 files changed

+15
-15
lines changed

9 files changed

+15
-15
lines changed

js/ai/ComfyUI/comfyui-management.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -176,11 +176,11 @@ throw new Error(result.message);
176176

177177
if(isPanel(layer)){
178178
var center=calculateCenter(layer);
179-
putImageInFrame(result,center.centerX,center.centerY);
179+
putImageInFrame(result,center.centerX,center.centerY,false,false,true,layer);
180180
}else if(layer.clipPath){
181181
layer.visible=false;
182182
var center=calculateCenter(layer);
183-
putImageInFrame(result,center.centerX,center.centerY);
183+
putImageInFrame(result,center.centerX,center.centerY,false,false,true,layer);
184184
}else{
185185
layer.visible=false;
186186
replaceImageObject(layer,result,Type);

js/ai/sdwebui/sdwebui-single-call-api.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ const webpImg=await img2webp(img);
2020
webpImg.name=imageName;
2121
setImage2ImageInitPrompt(webpImg);
2222
const {centerX,centerY}=calculateCenter(layer);
23-
putImageInFrame(webpImg,centerX,centerY);
23+
putImageInFrame(webpImg,centerX,centerY,false,false,true,layer);
2424

2525
const infoObject=JSON.parse(responseData.info);
2626
layer.tempSeed=infoObject.seed;
@@ -120,7 +120,7 @@ return new Promise((resolve,reject)=>{
120120
fabric.Image.fromURL(responseData,(img)=>{
121121
if (img) {
122122
const {centerX,centerY}=calculateCenter(layer);
123-
putImageInFrame(img,centerX,centerY);
123+
putImageInFrame(img,centerX,centerY,false,false,true,layer);
124124
resolve(img);
125125
visibleChange(layer);
126126
} else {

js/shortcut.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ activeObject.left+
210210
const y=
211211
activeObject.top+
212212
(activeObject.height*activeObject.scaleY)/2;
213-
putImageInFrame(img,x,y);
213+
putImageInFrame(img,x,y,false,false,true,activeObject);
214214
} else {
215215
isActive=false;
216216
const canvasWidth=canvas.width/2;

js/sidebar/panel/panel-manager.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -129,20 +129,20 @@ updateLayerPanel();
129129
}
130130

131131

132-
function putImageInFrame(imgOrSvg,x,y,isNotActive=false,notReplace=false,isFit=true) {
132+
function putImageInFrame(imgOrSvg,x,y,isNotActive=false,notReplace=false,isFit=true,targetLayer=null) {
133133
let obj;
134134

135135
if (typeof imgOrSvg==='string'&&imgOrSvg.startsWith('<svg')) {
136136
fabric.loadSVGFromString(imgOrSvg,function(objects,options) {
137137
obj=fabric.util.groupSVGElements(objects,options);
138-
placeObject(obj,x,y,isNotActive,true,isFit);
138+
placeObject(obj,x,y,isNotActive,true,isFit,targetLayer);
139139
});
140140
} else {
141141
obj=imgOrSvg;
142-
placeObject(obj,x,y,isNotActive,notReplace,isFit);
142+
placeObject(obj,x,y,isNotActive,notReplace,isFit,targetLayer);
143143
}
144144

145-
function placeObject(obj,x,y,isNotActive,notReplace,isFit) {
145+
function placeObject(obj,x,y,isNotActive,notReplace,isFit,targetLayer) {
146146
if(isFit){
147147
obj.set({left: x,top: y});
148148
}
@@ -154,7 +154,7 @@ if(notReplace){
154154
canvas.add(obj);
155155
}
156156

157-
var targetFrameIndex=findTargetFrame(x,y);
157+
var targetFrameIndex=targetLayer?canvas.getObjects().indexOf(targetLayer):findTargetFrame(x,y);
158158
console.log("targetFrameIndex",targetFrameIndex);
159159
if (targetFrameIndex!==-1) {
160160
var targetFrame=canvas.item(targetFrameIndex);

js/sidebar/tone/focusline.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ var activeObject=getLastObject();
210210
if (isPanel(activeObject)) {
211211
var canvasX=activeObject.left+(activeObject.width*activeObject.scaleX)/2;
212212
var canvasY=activeObject.top+(activeObject.height*activeObject.scaleY)/2;
213-
var obj=putImageInFrame(svgString,canvasX,canvasY,true);
213+
var obj=putImageInFrame(svgString,canvasX,canvasY,true,false,true,activeObject);
214214
obj.name='Focus Line';
215215
canvas.add(obj);
216216
nowFocusLine=obj;

js/sidebar/tone/snow-tone.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ var activeObject=getLastObject();
162162
if (isPanel(activeObject)) {
163163
var canvasX=activeObject.left+(activeObject.width*activeObject.scaleX)/2;
164164
var canvasY=activeObject.top+(activeObject.height*activeObject.scaleY)/2;
165-
putImageInFrame(img,canvasX,canvasY,true);
165+
putImageInFrame(img,canvasX,canvasY,true,false,true,activeObject);
166166
img.name='Snow Tone';
167167
nowSnowTone=img;
168168
}else{

js/sidebar/tone/speedline.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,7 @@ var activeObject=getLastObject();
178178
if(isPanel(activeObject)){
179179
var canvasX=(activeObject.left+(activeObject.width*activeObject.scaleX/2)) ;
180180
var canvasY=(activeObject.top+(activeObject.height*activeObject.scaleY/2)) ;
181-
putImageInFrame(img,canvasX,canvasY,true);
181+
putImageInFrame(img,canvasX,canvasY,true,false,true,activeObject);
182182
img.name='Speed Line';
183183
}else{
184184
img.name='Speed Line';

js/sidebar/tone/tone-noise.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ var activeObject=getLastObject();
139139
if (isPanel(activeObject)) {
140140
var canvasX=activeObject.left+(activeObject.width*activeObject.scaleX)/2;
141141
var canvasY=activeObject.top+(activeObject.height*activeObject.scaleY)/2;
142-
putImageInFrame(img,canvasX,canvasY,true);
142+
putImageInFrame(img,canvasX,canvasY,true,false,true,activeObject);
143143
img.name='Tone Noise';
144144
nowToneNoise=img;
145145
}else{

js/sidebar/tone/tone.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ var activeObject=getLastObject();
181181
if(isPanel(activeObject)){
182182
var canvasX=(activeObject.left+(activeObject.width*activeObject.scaleX/2)) ;
183183
var canvasY=(activeObject.top+(activeObject.height*activeObject.scaleY/2)) ;
184-
putImageInFrame(img,canvasX,canvasY,true);
184+
putImageInFrame(img,canvasX,canvasY,true,false,true,activeObject);
185185
img.name='Tone';
186186
}else{
187187
img.scaleToWidth(canvas.width);

0 commit comments

Comments
 (0)