mirror of
https://github.com/ONLYOFFICE/sdkjs.git
synced 2026-04-07 14:09:12 +08:00
For bug 58832
Fix ResizeTracks.js for scale coefficient
This commit is contained in:
@ -1244,6 +1244,7 @@ function ResizeTrackShapeImage(originalObject, cardDirection, drawingsController
|
|||||||
|
|
||||||
this.getBounds = function()
|
this.getBounds = function()
|
||||||
{
|
{
|
||||||
|
const scaleCoefficient = this.originalObject.getScaleCoefficient();
|
||||||
var boundsChecker = new AscFormat.CSlideBoundsChecker();
|
var boundsChecker = new AscFormat.CSlideBoundsChecker();
|
||||||
var tr = null;
|
var tr = null;
|
||||||
if(this.originalObject && this.originalObject.parent)
|
if(this.originalObject && this.originalObject.parent)
|
||||||
@ -1274,15 +1275,16 @@ function ResizeTrackShapeImage(originalObject, cardDirection, drawingsController
|
|||||||
arr_p_y.push(boundsChecker.Bounds.min_y);
|
arr_p_y.push(boundsChecker.Bounds.min_y);
|
||||||
arr_p_y.push(boundsChecker.Bounds.max_y);
|
arr_p_y.push(boundsChecker.Bounds.max_y);
|
||||||
|
|
||||||
boundsChecker.Bounds.min_x = Math.min.apply(Math, arr_p_x);
|
boundsChecker.Bounds.min_x = Math.min.apply(Math, arr_p_x) / scaleCoefficient;
|
||||||
boundsChecker.Bounds.max_x = Math.max.apply(Math, arr_p_x);
|
boundsChecker.Bounds.max_x = Math.max.apply(Math, arr_p_x) / scaleCoefficient;
|
||||||
boundsChecker.Bounds.min_y = Math.min.apply(Math, arr_p_y);
|
boundsChecker.Bounds.min_y = Math.min.apply(Math, arr_p_y) / scaleCoefficient;
|
||||||
boundsChecker.Bounds.max_y = Math.max.apply(Math, arr_p_y);
|
boundsChecker.Bounds.max_y = Math.max.apply(Math, arr_p_y) / scaleCoefficient;
|
||||||
|
|
||||||
boundsChecker.Bounds.posX = this.resizedPosX;
|
|
||||||
boundsChecker.Bounds.posY = this.resizedPosY;
|
boundsChecker.Bounds.posX = this.resizedPosX / scaleCoefficient;
|
||||||
boundsChecker.Bounds.extX = this.resizedExtX;
|
boundsChecker.Bounds.posY = this.resizedPosY / scaleCoefficient;
|
||||||
boundsChecker.Bounds.extY = this.resizedExtY;
|
boundsChecker.Bounds.extX = this.resizedExtX / scaleCoefficient;
|
||||||
|
boundsChecker.Bounds.extY = this.resizedExtY / scaleCoefficient;
|
||||||
return boundsChecker.Bounds;
|
return boundsChecker.Bounds;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -1529,7 +1531,6 @@ function ResizeTrackShapeImage(originalObject, cardDirection, drawingsController
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
//todo
|
|
||||||
var _xfrm = this.originalObject.spPr.xfrm;
|
var _xfrm = this.originalObject.spPr.xfrm;
|
||||||
var _xfrm2 = this.oSpPr.xfrm;
|
var _xfrm2 = this.oSpPr.xfrm;
|
||||||
_xfrm.setOffX(_xfrm2.offX);
|
_xfrm.setOffX(_xfrm2.offX);
|
||||||
@ -2240,6 +2241,7 @@ function ResizeTrackGroup(originalObject, cardDirection, parentTrack)
|
|||||||
{
|
{
|
||||||
var boundsChecker = new AscFormat.CSlideBoundsChecker();
|
var boundsChecker = new AscFormat.CSlideBoundsChecker();
|
||||||
this.draw(boundsChecker);
|
this.draw(boundsChecker);
|
||||||
|
const scaleCoefficient = this.originalObject.getScaleCoefficient();
|
||||||
var tr = this.transform;
|
var tr = this.transform;
|
||||||
var arr_p_x = [];
|
var arr_p_x = [];
|
||||||
var arr_p_y = [];
|
var arr_p_y = [];
|
||||||
@ -2257,17 +2259,16 @@ function ResizeTrackGroup(originalObject, cardDirection, parentTrack)
|
|||||||
arr_p_y.push(boundsChecker.Bounds.min_y);
|
arr_p_y.push(boundsChecker.Bounds.min_y);
|
||||||
arr_p_y.push(boundsChecker.Bounds.max_y);
|
arr_p_y.push(boundsChecker.Bounds.max_y);
|
||||||
|
|
||||||
boundsChecker.Bounds.min_x = Math.min.apply(Math, arr_p_x);
|
boundsChecker.Bounds.min_x = Math.min.apply(Math, arr_p_x) / scaleCoefficient;
|
||||||
boundsChecker.Bounds.max_x = Math.max.apply(Math, arr_p_x);
|
boundsChecker.Bounds.max_x = Math.max.apply(Math, arr_p_x) / scaleCoefficient;
|
||||||
boundsChecker.Bounds.min_y = Math.min.apply(Math, arr_p_y);
|
boundsChecker.Bounds.min_y = Math.min.apply(Math, arr_p_y) / scaleCoefficient;
|
||||||
boundsChecker.Bounds.max_y = Math.max.apply(Math, arr_p_y);
|
boundsChecker.Bounds.max_y = Math.max.apply(Math, arr_p_y) / scaleCoefficient;
|
||||||
|
|
||||||
|
boundsChecker.Bounds.posX = this.resizedPosX / scaleCoefficient;
|
||||||
|
boundsChecker.Bounds.posY = this.resizedPosY / scaleCoefficient;
|
||||||
|
|
||||||
boundsChecker.Bounds.posX = this.resizedPosX;
|
boundsChecker.Bounds.extX = this.resizedExtX / scaleCoefficient;
|
||||||
boundsChecker.Bounds.posY = this.resizedPosY;
|
boundsChecker.Bounds.extY = this.resizedExtY / scaleCoefficient;
|
||||||
|
|
||||||
boundsChecker.Bounds.extX = this.resizedExtX;
|
|
||||||
boundsChecker.Bounds.extY = this.resizedExtY;
|
|
||||||
|
|
||||||
return boundsChecker.Bounds;
|
return boundsChecker.Bounds;
|
||||||
};
|
};
|
||||||
@ -2395,10 +2396,6 @@ function ShapeForResizeInGroup(originalObject, parentTrack)
|
|||||||
this.x = this.centerDistX*kw + this.parentTrack.extX*0.5 - this.extX*0.5;
|
this.x = this.centerDistX*kw + this.parentTrack.extX*0.5 - this.extX*0.5;
|
||||||
this.y = this.centerDistY*kh + this.parentTrack.extY*0.5 - this.extY*0.5;
|
this.y = this.centerDistY*kh + this.parentTrack.extY*0.5 - this.extY*0.5;
|
||||||
|
|
||||||
//if(this.geometry)
|
|
||||||
//{
|
|
||||||
// this.geometry.Recalculate(this.extX, this.extY);
|
|
||||||
//}
|
|
||||||
this.overlayObject.updateExtents(this.extX, this.extY);
|
this.overlayObject.updateExtents(this.extX, this.extY);
|
||||||
this.transform.Reset();
|
this.transform.Reset();
|
||||||
var t = this.transform;
|
var t = this.transform;
|
||||||
@ -2424,10 +2421,11 @@ function ShapeForResizeInGroup(originalObject, parentTrack)
|
|||||||
|
|
||||||
this.getBounds = function()
|
this.getBounds = function()
|
||||||
{
|
{
|
||||||
|
const scaleCoefficient = this.originalObject.getScaleCoefficient();
|
||||||
var bounds_checker = new AscFormat.CSlideBoundsChecker();
|
var bounds_checker = new AscFormat.CSlideBoundsChecker();
|
||||||
bounds_checker.init(Page_Width, Page_Height, Page_Width, Page_Height);
|
bounds_checker.init(Page_Width, Page_Height, Page_Width, Page_Height);
|
||||||
this.draw(bounds_checker);
|
this.draw(bounds_checker);
|
||||||
return {l: bounds_checker.Bounds.min_x, t: bounds_checker.Bounds.min_y, r: bounds_checker.Bounds.max_x , b: bounds_checker.Bounds.max_y};
|
return {l: bounds_checker.Bounds.min_x / scaleCoefficient, t: bounds_checker.Bounds.min_y / scaleCoefficient, r: bounds_checker.Bounds.max_x / scaleCoefficient , b: bounds_checker.Bounds.max_y / scaleCoefficient};
|
||||||
};
|
};
|
||||||
|
|
||||||
this.trackEnd = function()
|
this.trackEnd = function()
|
||||||
@ -2469,26 +2467,6 @@ function ShapeForResizeInGroup(originalObject, parentTrack)
|
|||||||
|
|
||||||
this.originalObject.ResetParametersWithResize();
|
this.originalObject.ResetParametersWithResize();
|
||||||
};
|
};
|
||||||
|
|
||||||
this.updateTransform = function()
|
|
||||||
{
|
|
||||||
this.transform.Reset();
|
|
||||||
var t = this.transform;
|
|
||||||
|
|
||||||
global_MatrixTransformer.TranslateAppend(t, -this.extX*0.5, -this.extY*0.5);
|
|
||||||
if(this.flipH)
|
|
||||||
{
|
|
||||||
global_MatrixTransformer.ScaleAppend(t, -1, 1);
|
|
||||||
}
|
|
||||||
if(this.flipV)
|
|
||||||
{
|
|
||||||
global_MatrixTransformer.ScaleAppend(t, 1, -1);
|
|
||||||
}
|
|
||||||
global_MatrixTransformer.RotateRadAppend(t, -this.rot);
|
|
||||||
global_MatrixTransformer.TranslateAppend(t, this.x + this.extX*0.5, this.y+this.extY*0.5);
|
|
||||||
if(this.parentTrack)
|
|
||||||
global_MatrixTransformer.MultiplyAppend(t, this.parentTrack.transform);
|
|
||||||
};
|
|
||||||
this.checkDrawingPartWithHistory = function () {};
|
this.checkDrawingPartWithHistory = function () {};
|
||||||
}, this, []);
|
}, this, []);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user