@syncfusion/ej2-image-editor 23.1.41 → 23.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -2
- package/dist/ej2-image-editor.umd.min.js +2 -2
- package/dist/ej2-image-editor.umd.min.js.map +1 -1
- package/dist/es6/ej2-image-editor.es2015.js +305 -163
- package/dist/es6/ej2-image-editor.es2015.js.map +1 -1
- package/dist/es6/ej2-image-editor.es5.js +303 -161
- package/dist/es6/ej2-image-editor.es5.js.map +1 -1
- package/dist/global/ej2-image-editor.min.js +2 -2
- package/dist/global/ej2-image-editor.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +11 -11
- package/src/image-editor/action/draw.js +177 -133
- package/src/image-editor/action/selection.js +37 -1
- package/src/image-editor/action/shape.d.ts +1 -0
- package/src/image-editor/action/shape.js +14 -0
- package/src/image-editor/action/transform.js +3 -0
- package/src/image-editor/base/image-editor.js +3 -1
- package/src/image-editor/renderer/toolbar.js +70 -27
- package/styles/bootstrap-dark.css +14 -3
- package/styles/bootstrap.css +14 -3
- package/styles/bootstrap4.css +14 -3
- package/styles/bootstrap5-dark.css +14 -3
- package/styles/bootstrap5.css +14 -3
- package/styles/fabric-dark.css +14 -3
- package/styles/fabric.css +14 -3
- package/styles/fluent-dark.css +14 -3
- package/styles/fluent.css +14 -3
- package/styles/highcontrast-light.css +14 -3
- package/styles/highcontrast.css +14 -3
- package/styles/image-editor/_bootstrap-dark-definition.scss +4 -0
- package/styles/image-editor/_bootstrap-definition.scss +4 -0
- package/styles/image-editor/_bootstrap4-definition.scss +4 -0
- package/styles/image-editor/_bootstrap5-definition.scss +4 -0
- package/styles/image-editor/_fabric-dark-definition.scss +4 -0
- package/styles/image-editor/_fabric-definition.scss +4 -0
- package/styles/image-editor/_fluent-definition.scss +4 -0
- package/styles/image-editor/_fusionnew-definition.scss +4 -0
- package/styles/image-editor/_highcontrast-definition.scss +4 -0
- package/styles/image-editor/_highcontrast-light-definition.scss +4 -0
- package/styles/image-editor/_layout.scss +21 -7
- package/styles/image-editor/_material-dark-definition.scss +4 -0
- package/styles/image-editor/_material-definition.scss +4 -0
- package/styles/image-editor/_material3-definition.scss +4 -0
- package/styles/image-editor/_tailwind-definition.scss +4 -0
- package/styles/image-editor/bootstrap-dark.css +14 -3
- package/styles/image-editor/bootstrap.css +14 -3
- package/styles/image-editor/bootstrap4.css +14 -3
- package/styles/image-editor/bootstrap5-dark.css +14 -3
- package/styles/image-editor/bootstrap5.css +14 -3
- package/styles/image-editor/fabric-dark.css +14 -3
- package/styles/image-editor/fabric.css +14 -3
- package/styles/image-editor/fluent-dark.css +14 -3
- package/styles/image-editor/fluent.css +14 -3
- package/styles/image-editor/highcontrast-light.css +14 -3
- package/styles/image-editor/highcontrast.css +14 -3
- package/styles/image-editor/material-dark.css +14 -3
- package/styles/image-editor/material.css +14 -3
- package/styles/image-editor/material3-dark.css +19 -4
- package/styles/image-editor/material3.css +19 -4
- package/styles/image-editor/tailwind-dark.css +14 -3
- package/styles/image-editor/tailwind.css +14 -3
- package/styles/material-dark.css +14 -3
- package/styles/material.css +14 -3
- package/styles/material3-dark.css +19 -4
- package/styles/material3.css +19 -4
- package/styles/tailwind-dark.css +14 -3
- package/styles/tailwind.css +14 -3
package/dist/global/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* filename: index.d.ts
|
|
3
|
-
* version : 23.
|
|
3
|
+
* version : 23.2.4
|
|
4
4
|
* Copyright Syncfusion Inc. 2001 - 2023. All rights reserved.
|
|
5
5
|
* Use of this code is subject to the terms of our license.
|
|
6
6
|
* A copy of the current license can be obtained at any time by e-mailing
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"_from": "@syncfusion/ej2-image-editor@*",
|
|
3
|
-
"_id": "@syncfusion/ej2-image-editor@23.1.
|
|
3
|
+
"_id": "@syncfusion/ej2-image-editor@23.1.43",
|
|
4
4
|
"_inBundle": false,
|
|
5
|
-
"_integrity": "sha512-
|
|
5
|
+
"_integrity": "sha512-5GOJdoi+vGksohDCzagLur1GQpWE6ZDNsm62D4TdX6aAltWilC1Z3BgWgOt4ZnJQka37BV8iZxb0krr05wPv0Q==",
|
|
6
6
|
"_location": "/@syncfusion/ej2-image-editor",
|
|
7
7
|
"_phantomChildren": {},
|
|
8
8
|
"_requested": {
|
|
@@ -23,8 +23,8 @@
|
|
|
23
23
|
"/@syncfusion/ej2-react-image-editor",
|
|
24
24
|
"/@syncfusion/ej2-vue-image-editor"
|
|
25
25
|
],
|
|
26
|
-
"_resolved": "https://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-image-editor/-/ej2-image-editor-23.1.
|
|
27
|
-
"_shasum": "
|
|
26
|
+
"_resolved": "https://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-image-editor/-/ej2-image-editor-23.1.43.tgz",
|
|
27
|
+
"_shasum": "6bbaed2aa3e4311d0b039d348c6b4c4f40d011a6",
|
|
28
28
|
"_spec": "@syncfusion/ej2-image-editor@*",
|
|
29
29
|
"_where": "/jenkins/workspace/elease-automation_release_23.1.1/packages/included",
|
|
30
30
|
"author": {
|
|
@@ -32,12 +32,12 @@
|
|
|
32
32
|
},
|
|
33
33
|
"bundleDependencies": false,
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@syncfusion/ej2-base": "~23.
|
|
36
|
-
"@syncfusion/ej2-buttons": "~23.
|
|
37
|
-
"@syncfusion/ej2-inputs": "~23.
|
|
38
|
-
"@syncfusion/ej2-navigations": "~23.
|
|
39
|
-
"@syncfusion/ej2-popups": "~23.
|
|
40
|
-
"@syncfusion/ej2-splitbuttons": "~23.
|
|
35
|
+
"@syncfusion/ej2-base": "~23.2.4",
|
|
36
|
+
"@syncfusion/ej2-buttons": "~23.2.4",
|
|
37
|
+
"@syncfusion/ej2-inputs": "~23.2.4",
|
|
38
|
+
"@syncfusion/ej2-navigations": "~23.2.4",
|
|
39
|
+
"@syncfusion/ej2-popups": "~23.2.4",
|
|
40
|
+
"@syncfusion/ej2-splitbuttons": "~23.2.4"
|
|
41
41
|
},
|
|
42
42
|
"deprecated": false,
|
|
43
43
|
"description": "Essential JS 2 ImageEditor",
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
"url": "https://github.com/syncfusion/ej2-javascript-ui-controls/tree/master/controls/imageeditor"
|
|
68
68
|
},
|
|
69
69
|
"typings": "index.d.ts",
|
|
70
|
-
"version": "23.
|
|
70
|
+
"version": "23.2.4",
|
|
71
71
|
"sideEffects": false,
|
|
72
72
|
"homepage": "https://www.syncfusion.com/javascript-ui-controls"
|
|
73
73
|
}
|
|
@@ -1592,6 +1592,7 @@ var Draw = /** @class */ (function () {
|
|
|
1592
1592
|
};
|
|
1593
1593
|
Draw.prototype.shapeImage = function (canvasDraw) {
|
|
1594
1594
|
var parent = this.parent;
|
|
1595
|
+
var actObj = extend({}, parent.activeObj);
|
|
1595
1596
|
var ctx = parent.activeObj.imageCanvas.getContext('2d');
|
|
1596
1597
|
if (canvasDraw === this.lowerContext && this.isImageApply) {
|
|
1597
1598
|
var dimObj = { width: 0, height: 0 };
|
|
@@ -1614,41 +1615,17 @@ var Draw = /** @class */ (function () {
|
|
|
1614
1615
|
parent.activeObj.flipObjColl = [];
|
|
1615
1616
|
parent.activeObj.shapeFlip = '';
|
|
1616
1617
|
}
|
|
1617
|
-
for (var j = 0, len = parent.activeObj.flipObjColl.length; j < len; j++) {
|
|
1618
|
-
if (parent.activeObj.flipObjColl[j].toLowerCase() === 'horizontal') {
|
|
1619
|
-
canvasDraw.translate(canvasDraw.canvas.width, 0);
|
|
1620
|
-
canvasDraw.scale(-1, 1);
|
|
1621
|
-
parent.activeObj.activePoint = this.updateActPoint('horizontal', canvasDraw);
|
|
1622
|
-
}
|
|
1623
|
-
else if (parent.activeObj.flipObjColl[j].toLowerCase() === 'vertical') {
|
|
1624
|
-
canvasDraw.translate(0, canvasDraw.canvas.height);
|
|
1625
|
-
canvasDraw.scale(1, -1);
|
|
1626
|
-
parent.activeObj.activePoint = this.updateActPoint('vertical', canvasDraw);
|
|
1627
|
-
}
|
|
1628
|
-
}
|
|
1629
1618
|
imgPoint.startX = ((parent.activeObj.activePoint.width - imgPoint.width) / 2) + parent.activeObj.activePoint.startX;
|
|
1630
1619
|
imgPoint.startY = ((parent.activeObj.activePoint.height - imgPoint.height) / 2) + parent.activeObj.activePoint.startY;
|
|
1631
1620
|
var temp = canvasDraw.globalAlpha;
|
|
1632
1621
|
canvasDraw.globalAlpha = parent.activeObj.imageTransparency;
|
|
1633
|
-
if (
|
|
1622
|
+
if (actObj.rotateFlipColl && actObj.rotateFlipColl.length > 0) {
|
|
1634
1623
|
this.rotateImage(canvasDraw);
|
|
1635
1624
|
}
|
|
1636
1625
|
else {
|
|
1637
1626
|
canvasDraw.drawImage(parent.activeObj.imageCanvas, imgPoint.startX, imgPoint.startY, imgPoint.width, imgPoint.height);
|
|
1638
1627
|
}
|
|
1639
1628
|
canvasDraw.globalAlpha = temp;
|
|
1640
|
-
for (var k = 0, len = parent.activeObj.flipObjColl.length; k < len; k++) {
|
|
1641
|
-
if (parent.activeObj.flipObjColl[k].toLowerCase() === 'horizontal') {
|
|
1642
|
-
canvasDraw.translate(canvasDraw.canvas.width, 0);
|
|
1643
|
-
canvasDraw.scale(-1, 1);
|
|
1644
|
-
parent.activeObj.activePoint = this.updateActPoint('horizontal', canvasDraw);
|
|
1645
|
-
}
|
|
1646
|
-
else if (parent.activeObj.flipObjColl[k].toLowerCase() === 'vertical') {
|
|
1647
|
-
canvasDraw.translate(0, canvasDraw.canvas.height);
|
|
1648
|
-
canvasDraw.scale(1, -1);
|
|
1649
|
-
parent.activeObj.activePoint = this.updateActPoint('vertical', canvasDraw);
|
|
1650
|
-
}
|
|
1651
|
-
}
|
|
1652
1629
|
parent.currObjType.isText = false;
|
|
1653
1630
|
};
|
|
1654
1631
|
Draw.prototype.shapeText = function (canvasDraw) {
|
|
@@ -1656,6 +1633,7 @@ var Draw = /** @class */ (function () {
|
|
|
1656
1633
|
canvasDraw.filter = 'none';
|
|
1657
1634
|
var parent = this.parent;
|
|
1658
1635
|
var actPoint = parent.activeObj.activePoint;
|
|
1636
|
+
var actObj = extend({}, parent.activeObj);
|
|
1659
1637
|
var rows = parent.activeObj.keyHistory.split('\n');
|
|
1660
1638
|
var height = parent.activeObj.textSettings.fontSize + parent.activeObj.textSettings.fontSize * 0.25;
|
|
1661
1639
|
var lineHeight = ((height * rows.length) - (parent.activeObj.textSettings.fontSize * rows.length)) / rows.length;
|
|
@@ -1695,36 +1673,12 @@ var Draw = /** @class */ (function () {
|
|
|
1695
1673
|
parent.activeObj.flipObjColl = [];
|
|
1696
1674
|
parent.activeObj.shapeFlip = '';
|
|
1697
1675
|
}
|
|
1698
|
-
|
|
1699
|
-
if (parent.activeObj.flipObjColl[j].toLowerCase() === 'horizontal') {
|
|
1700
|
-
canvasDraw.translate(canvasDraw.canvas.width, 0);
|
|
1701
|
-
canvasDraw.scale(-1, 1);
|
|
1702
|
-
actPoint = this.updateActPoint('horizontal', canvasDraw);
|
|
1703
|
-
}
|
|
1704
|
-
else if (parent.activeObj.flipObjColl[j].toLowerCase() === 'vertical') {
|
|
1705
|
-
canvasDraw.translate(0, canvasDraw.canvas.height);
|
|
1706
|
-
canvasDraw.scale(1, -1);
|
|
1707
|
-
actPoint = this.updateActPoint('vertical', canvasDraw);
|
|
1708
|
-
}
|
|
1709
|
-
}
|
|
1710
|
-
if (parent.activeObj.shapeDegree !== parent.transform.degree) {
|
|
1676
|
+
if (actObj.rotateFlipColl && actObj.rotateFlipColl.length > 0) {
|
|
1711
1677
|
this.rotateText(canvasDraw);
|
|
1712
1678
|
}
|
|
1713
1679
|
else {
|
|
1714
1680
|
canvasDraw.fillText(text, actPoint.startX + parent.activeObj.textSettings.fontSize * 0.1, actPoint.startY + yPoint);
|
|
1715
1681
|
}
|
|
1716
|
-
for (var k = 0, len = parent.activeObj.flipObjColl.length; k < len; k++) {
|
|
1717
|
-
if (parent.activeObj.flipObjColl[k].toLowerCase() === 'horizontal') {
|
|
1718
|
-
canvasDraw.translate(canvasDraw.canvas.width, 0);
|
|
1719
|
-
canvasDraw.scale(-1, 1);
|
|
1720
|
-
actPoint = this.updateActPoint('horizontal', canvasDraw);
|
|
1721
|
-
}
|
|
1722
|
-
else if (parent.activeObj.flipObjColl[k].toLowerCase() === 'vertical') {
|
|
1723
|
-
canvasDraw.translate(0, canvasDraw.canvas.height);
|
|
1724
|
-
canvasDraw.scale(1, -1);
|
|
1725
|
-
actPoint = this.updateActPoint('vertical', canvasDraw);
|
|
1726
|
-
}
|
|
1727
|
-
}
|
|
1728
1682
|
}
|
|
1729
1683
|
canvasDraw.filter = filter;
|
|
1730
1684
|
parent.currObjType.isText = false;
|
|
@@ -1764,6 +1718,8 @@ var Draw = /** @class */ (function () {
|
|
|
1764
1718
|
Draw.prototype.rotateImage = function (canvasDraw) {
|
|
1765
1719
|
var parent = this.parent;
|
|
1766
1720
|
var degree;
|
|
1721
|
+
var actObj = parent.activeObj;
|
|
1722
|
+
var tempActiveObj = extend({}, parent.activeObj, null, true);
|
|
1767
1723
|
if (parent.activeObj.shapeDegree === 0) {
|
|
1768
1724
|
degree = parent.transform.degree;
|
|
1769
1725
|
}
|
|
@@ -1784,49 +1740,91 @@ var Draw = /** @class */ (function () {
|
|
|
1784
1740
|
imgPoint.startY = parent.activeObj.activePoint.startY;
|
|
1785
1741
|
var startX = imgPoint.startX;
|
|
1786
1742
|
var startY = imgPoint.startY;
|
|
1787
|
-
|
|
1788
|
-
|
|
1789
|
-
|
|
1790
|
-
|
|
1791
|
-
|
|
1792
|
-
|
|
1793
|
-
|
|
1794
|
-
|
|
1795
|
-
|
|
1796
|
-
|
|
1797
|
-
|
|
1798
|
-
|
|
1799
|
-
|
|
1800
|
-
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1807
|
-
|
|
1743
|
+
/* eslint-disable-next-line @typescript-eslint/no-explicit-any */
|
|
1744
|
+
var tempDegree;
|
|
1745
|
+
var tempColl = [];
|
|
1746
|
+
canvasDraw.save();
|
|
1747
|
+
for (var i = 0, len = actObj.rotateFlipColl.length; i < len; i++) {
|
|
1748
|
+
/* eslint-disable-next-line @typescript-eslint/no-explicit-any */
|
|
1749
|
+
var coll = actObj.rotateFlipColl[i];
|
|
1750
|
+
tempColl.push(coll);
|
|
1751
|
+
if (typeof (coll) === 'number') {
|
|
1752
|
+
if (actObj.shapeDegree === 0) {
|
|
1753
|
+
tempDegree = coll;
|
|
1754
|
+
}
|
|
1755
|
+
else {
|
|
1756
|
+
tempDegree = coll - actObj.shapeDegree;
|
|
1757
|
+
}
|
|
1758
|
+
if (tempDegree === -450) {
|
|
1759
|
+
tempDegree = -90;
|
|
1760
|
+
}
|
|
1761
|
+
if (tempDegree < 0) {
|
|
1762
|
+
tempDegree = 360 + tempDegree;
|
|
1763
|
+
}
|
|
1764
|
+
imgPoint.width = tempDegree % 90 === 0 && tempDegree % 180 !== 0 ? actObj.activePoint.height : actObj.activePoint.width;
|
|
1765
|
+
imgPoint.height = tempDegree % 90 === 0 && tempDegree % 180 !== 0 ? actObj.activePoint.width :
|
|
1766
|
+
actObj.activePoint.height;
|
|
1767
|
+
canvasDraw.translate(canvasDraw.canvas.width / 2, canvasDraw.canvas.height / 2);
|
|
1768
|
+
canvasDraw.rotate(Math.PI / 180 * coll);
|
|
1769
|
+
canvasDraw.translate(-canvasDraw.canvas.height / 2, -canvasDraw.canvas.width / 2);
|
|
1770
|
+
if (tempDegree % 90 === 0 && tempDegree % 270 !== 0) {
|
|
1771
|
+
startY = canvasDraw.canvas.width - (actObj.activePoint.startX + actObj.activePoint.width);
|
|
1772
|
+
startY += ((actObj.activePoint.width - imgPoint.height) / 2);
|
|
1773
|
+
startX = imgPoint.startY;
|
|
1774
|
+
}
|
|
1775
|
+
else if (tempDegree % 270 === 0) {
|
|
1776
|
+
startX = canvasDraw.canvas.height - (actObj.activePoint.startY + actObj.activePoint.height);
|
|
1777
|
+
startX += ((actObj.activePoint.height - imgPoint.width) / 2);
|
|
1778
|
+
startY = imgPoint.startX;
|
|
1779
|
+
}
|
|
1780
|
+
imgPoint.startX = startX;
|
|
1781
|
+
imgPoint.startY = startY;
|
|
1782
|
+
actObj.activePoint.startX = startX;
|
|
1783
|
+
actObj.activePoint.startY = startY;
|
|
1784
|
+
actObj.activePoint.endX = actObj.activePoint.startX + imgPoint.width;
|
|
1785
|
+
actObj.activePoint.endY = actObj.activePoint.startY + imgPoint.height;
|
|
1786
|
+
actObj = this.updateWidthHeight(actObj);
|
|
1787
|
+
}
|
|
1788
|
+
else {
|
|
1789
|
+
if (coll === 'horizontal' && degree % 90 === 0 && degree % 180 !== 0) {
|
|
1790
|
+
coll = 'vertical';
|
|
1791
|
+
}
|
|
1792
|
+
else if (coll === 'vertical' && degree % 90 === 0 && degree % 180 !== 0) {
|
|
1793
|
+
coll = 'horizontal';
|
|
1794
|
+
}
|
|
1795
|
+
if (coll === 'horizontal') {
|
|
1796
|
+
canvasDraw.translate(canvasDraw.canvas.width, 0);
|
|
1797
|
+
canvasDraw.scale(-1, 1);
|
|
1798
|
+
actObj.activePoint = this.updateActPoint('horizontal', canvasDraw);
|
|
1799
|
+
}
|
|
1800
|
+
else if (coll === 'vertical') {
|
|
1801
|
+
canvasDraw.translate(0, canvasDraw.canvas.height);
|
|
1802
|
+
canvasDraw.scale(1, -1);
|
|
1803
|
+
actObj.activePoint = this.updateActPoint('vertical', canvasDraw);
|
|
1804
|
+
}
|
|
1805
|
+
imgPoint.startX = actObj.activePoint.startX;
|
|
1806
|
+
imgPoint.startY = actObj.activePoint.startY;
|
|
1807
|
+
}
|
|
1808
|
+
imgPoint.startX = actObj.activePoint.startX;
|
|
1809
|
+
imgPoint.startY = actObj.activePoint.startY;
|
|
1810
|
+
startX = imgPoint.startX;
|
|
1811
|
+
startY = imgPoint.startY;
|
|
1808
1812
|
}
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
canvasDraw.rotate(Math.PI / 180 * degree);
|
|
1812
|
-
startX = parent.lowerCanvas.width - (imgPoint.startX + imgPoint.width);
|
|
1813
|
-
startY = parent.lowerCanvas.height - (imgPoint.startY + imgPoint.height);
|
|
1814
|
-
canvasDraw.translate(-parent.lowerCanvas.width / 2, -parent.lowerCanvas.height / 2);
|
|
1815
|
-
canvasDraw.drawImage(parent.activeObj.imageCanvas, startX, startY, imgPoint.width, imgPoint.height);
|
|
1816
|
-
canvasDraw.translate(parent.lowerCanvas.width / 2, parent.lowerCanvas.height / 2);
|
|
1817
|
-
canvasDraw.rotate(Math.PI / 180 * -degree);
|
|
1818
|
-
canvasDraw.translate(-parent.lowerCanvas.width / 2, -parent.lowerCanvas.height / 2);
|
|
1813
|
+
if (actObj.rotatedAngle !== 0) {
|
|
1814
|
+
parent.notify('shape', { prop: 'setPointCollForShapeRotation', onPropertyChange: false, value: { obj: actObj } });
|
|
1819
1815
|
}
|
|
1816
|
+
canvasDraw.drawImage(actObj.imageCanvas, imgPoint.startX, imgPoint.startY, imgPoint.width, imgPoint.height);
|
|
1817
|
+
canvasDraw.restore();
|
|
1818
|
+
parent.activeObj = tempActiveObj;
|
|
1820
1819
|
if (parent.transform.degree === 360 || parent.transform.degree === -360) {
|
|
1821
1820
|
parent.transform.degree = 0;
|
|
1822
1821
|
}
|
|
1823
1822
|
};
|
|
1824
1823
|
Draw.prototype.rotateText = function (canvasDraw) {
|
|
1825
1824
|
var parent = this.parent;
|
|
1826
|
-
var startX = parent.activeObj.activePoint.startX;
|
|
1827
|
-
var startY = parent.activeObj.activePoint.startY;
|
|
1828
1825
|
var degree;
|
|
1829
|
-
var
|
|
1826
|
+
var actObj = parent.activeObj;
|
|
1827
|
+
var tempActiveObj = extend({}, parent.activeObj, null, true);
|
|
1830
1828
|
if (parent.activeObj.shapeDegree === 0) {
|
|
1831
1829
|
degree = parent.transform.degree;
|
|
1832
1830
|
}
|
|
@@ -1839,45 +1837,89 @@ var Draw = /** @class */ (function () {
|
|
|
1839
1837
|
if (degree < 0) {
|
|
1840
1838
|
degree = 360 + degree;
|
|
1841
1839
|
}
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
|
|
1853
|
-
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
|
|
1861
|
-
|
|
1862
|
-
|
|
1863
|
-
|
|
1864
|
-
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1840
|
+
var imgPoint = { startX: 0, startY: 0, width: 0, height: 0 };
|
|
1841
|
+
imgPoint.width = degree % 90 === 0 && degree % 180 !== 0 ? actObj.activePoint.height : actObj.activePoint.width;
|
|
1842
|
+
imgPoint.height = degree % 90 === 0 && degree % 180 !== 0 ? actObj.activePoint.width :
|
|
1843
|
+
actObj.activePoint.height;
|
|
1844
|
+
imgPoint.startX = actObj.activePoint.startX;
|
|
1845
|
+
imgPoint.startY = actObj.activePoint.startY;
|
|
1846
|
+
var startX = imgPoint.startX;
|
|
1847
|
+
var startY = imgPoint.startY;
|
|
1848
|
+
/* eslint-disable-next-line @typescript-eslint/no-explicit-any */
|
|
1849
|
+
var tempDegree;
|
|
1850
|
+
var tempColl = [];
|
|
1851
|
+
canvasDraw.save();
|
|
1852
|
+
for (var i = 0, len = actObj.rotateFlipColl.length; i < len; i++) {
|
|
1853
|
+
/* eslint-disable-next-line @typescript-eslint/no-explicit-any */
|
|
1854
|
+
var coll = actObj.rotateFlipColl[i];
|
|
1855
|
+
tempColl.push(coll);
|
|
1856
|
+
if (typeof (coll) === 'number') {
|
|
1857
|
+
if (actObj.shapeDegree === 0) {
|
|
1858
|
+
tempDegree = coll;
|
|
1859
|
+
}
|
|
1860
|
+
else {
|
|
1861
|
+
tempDegree = coll - actObj.shapeDegree;
|
|
1862
|
+
}
|
|
1863
|
+
if (tempDegree === -450) {
|
|
1864
|
+
tempDegree = -90;
|
|
1865
|
+
}
|
|
1866
|
+
if (tempDegree < 0) {
|
|
1867
|
+
tempDegree = 360 + tempDegree;
|
|
1868
|
+
}
|
|
1869
|
+
imgPoint.width = tempDegree % 90 === 0 && tempDegree % 180 !== 0 ? actObj.activePoint.height : actObj.activePoint.width;
|
|
1870
|
+
imgPoint.height = tempDegree % 90 === 0 && tempDegree % 180 !== 0 ? actObj.activePoint.width :
|
|
1871
|
+
actObj.activePoint.height;
|
|
1872
|
+
canvasDraw.translate(canvasDraw.canvas.width / 2, canvasDraw.canvas.height / 2);
|
|
1873
|
+
canvasDraw.rotate(Math.PI / 180 * coll);
|
|
1874
|
+
canvasDraw.translate(-canvasDraw.canvas.height / 2, -canvasDraw.canvas.width / 2);
|
|
1875
|
+
if (tempDegree % 90 === 0 && tempDegree % 270 !== 0) {
|
|
1876
|
+
startY = (parent.lowerCanvas.width - actObj.activePoint.endX);
|
|
1877
|
+
startX = actObj.activePoint.startY;
|
|
1878
|
+
}
|
|
1879
|
+
else if (tempDegree % 270 === 0) {
|
|
1880
|
+
startX = parent.lowerCanvas.height - actObj.activePoint.endY;
|
|
1881
|
+
startY = actObj.activePoint.startX;
|
|
1882
|
+
}
|
|
1883
|
+
imgPoint.startX = startX;
|
|
1884
|
+
imgPoint.startY = startY;
|
|
1885
|
+
actObj.activePoint.startX = startX;
|
|
1886
|
+
actObj.activePoint.startY = startY;
|
|
1887
|
+
actObj.activePoint.endX = actObj.activePoint.startX + imgPoint.width;
|
|
1888
|
+
actObj.activePoint.endY = actObj.activePoint.startY + imgPoint.height;
|
|
1889
|
+
actObj = this.updateWidthHeight(actObj);
|
|
1890
|
+
}
|
|
1891
|
+
else {
|
|
1892
|
+
if (coll === 'horizontal' && degree % 90 === 0 && degree % 180 !== 0) {
|
|
1893
|
+
coll = 'vertical';
|
|
1894
|
+
}
|
|
1895
|
+
else if (coll === 'vertical' && degree % 90 === 0 && degree % 180 !== 0) {
|
|
1896
|
+
coll = 'horizontal';
|
|
1897
|
+
}
|
|
1898
|
+
if (coll === 'horizontal') {
|
|
1899
|
+
canvasDraw.translate(canvasDraw.canvas.width, 0);
|
|
1900
|
+
canvasDraw.scale(-1, 1);
|
|
1901
|
+
actObj.activePoint = this.updateActPoint('horizontal', canvasDraw);
|
|
1902
|
+
}
|
|
1903
|
+
else if (coll === 'vertical') {
|
|
1904
|
+
canvasDraw.translate(0, canvasDraw.canvas.height);
|
|
1905
|
+
canvasDraw.scale(1, -1);
|
|
1906
|
+
actObj.activePoint = this.updateActPoint('vertical', canvasDraw);
|
|
1907
|
+
}
|
|
1908
|
+
imgPoint.startX = actObj.activePoint.startX;
|
|
1909
|
+
imgPoint.startY = actObj.activePoint.startY;
|
|
1910
|
+
}
|
|
1911
|
+
imgPoint.startX = actObj.activePoint.startX;
|
|
1912
|
+
imgPoint.startY = actObj.activePoint.startY;
|
|
1913
|
+
startX = imgPoint.startX;
|
|
1914
|
+
startY = imgPoint.startY;
|
|
1868
1915
|
}
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
canvasDraw.rotate(Math.PI / 180 * degree);
|
|
1872
|
-
startX = parent.lowerCanvas.width - actPoint.endX;
|
|
1873
|
-
startY = (parent.lowerCanvas.height - actPoint.endY) +
|
|
1874
|
-
parent.activeObj.textSettings.fontSize * 0.4;
|
|
1875
|
-
canvasDraw.translate(-parent.lowerCanvas.width / 2, -parent.lowerCanvas.height / 2);
|
|
1876
|
-
this.textFlipDegree(canvasDraw, startX, startY);
|
|
1877
|
-
canvasDraw.translate(parent.lowerCanvas.width / 2, parent.lowerCanvas.height / 2);
|
|
1878
|
-
canvasDraw.rotate(Math.PI / 180 * -degree);
|
|
1879
|
-
canvasDraw.translate(-parent.lowerCanvas.width / 2, -parent.lowerCanvas.height / 2);
|
|
1916
|
+
if (actObj.rotatedAngle !== 0) {
|
|
1917
|
+
parent.notify('shape', { prop: 'setPointCollForShapeRotation', onPropertyChange: false, value: { obj: actObj } });
|
|
1880
1918
|
}
|
|
1919
|
+
startY += actObj.textSettings.fontSize * 0.4;
|
|
1920
|
+
this.textFlipDegree(canvasDraw, startX, startY);
|
|
1921
|
+
canvasDraw.restore();
|
|
1922
|
+
parent.activeObj = tempActiveObj;
|
|
1881
1923
|
if (parent.transform.degree === 360 || parent.transform.degree === -360) {
|
|
1882
1924
|
parent.transform.degree = 0;
|
|
1883
1925
|
}
|
|
@@ -2412,22 +2454,23 @@ var Draw = /** @class */ (function () {
|
|
|
2412
2454
|
this.parent.notify('toolbar', { prop: 'getPrevCropObj', onPropertyChange: false, value: { obj: obj1 } });
|
|
2413
2455
|
this.parent.notify('toolbar', { prop: 'getPrevObj', onPropertyChange: false, value: { obj: obj2 } });
|
|
2414
2456
|
if (obj1['prevCropObj'] && obj2['prevObj']) {
|
|
2415
|
-
|
|
2416
|
-
|
|
2417
|
-
|
|
2418
|
-
|
|
2419
|
-
|
|
2420
|
-
|
|
2421
|
-
|
|
2422
|
-
|
|
2423
|
-
|
|
2424
|
-
|
|
2425
|
-
|
|
2426
|
-
|
|
2457
|
+
parent.objColl = [];
|
|
2458
|
+
parent.pointColl = [];
|
|
2459
|
+
parent.freehandCounter = 0;
|
|
2460
|
+
parent.cropObj = extend({}, obj1['prevCropObj'], {}, true);
|
|
2461
|
+
this.setCurrentObj(obj2['prevObj']);
|
|
2462
|
+
parent.objColl = obj2['prevObj']['objColl'];
|
|
2463
|
+
parent.pointColl = obj2['prevObj']['pointColl'];
|
|
2464
|
+
parent.freehandCounter = parent.pointColl.length;
|
|
2465
|
+
parent.notify('shape', { prop: 'zoomObjColl', onPropertyChange: false, value: { isPreventApply: null } });
|
|
2466
|
+
parent.notify('freehand-draw', { prop: 'zoomFHDColl', onPropertyChange: false, value: { isPreventApply: null } });
|
|
2467
|
+
var currObj = parent.currSelectionPoint ?
|
|
2468
|
+
extend({}, parent.currSelectionPoint, {}, true) : null;
|
|
2427
2469
|
this.parent.notify('transform', { prop: 'zoomAction', onPropertyChange: false,
|
|
2428
2470
|
value: { zoomFactor: -this.parent.transform.zoomFactor, zoomPoint: null, isResize: true } });
|
|
2429
2471
|
this.parent.notify('transform', { prop: 'zoomAction', onPropertyChange: false,
|
|
2430
2472
|
value: { zoomFactor: obj2['prevObj']['defaultZoom'], zoomPoint: null, isResize: true } });
|
|
2473
|
+
parent.currSelectionPoint = currObj;
|
|
2431
2474
|
if (obj2['prevObj'].zoomFactor) {
|
|
2432
2475
|
parent.setProperties({ zoomSettings: { zoomFactor: obj2['prevObj'].zoomFactor } }, true);
|
|
2433
2476
|
}
|
|
@@ -2435,6 +2478,7 @@ var Draw = /** @class */ (function () {
|
|
|
2435
2478
|
value: { previousZoomValue: parent.zoomSettings.zoomFactor } });
|
|
2436
2479
|
}
|
|
2437
2480
|
parent.isResize = false;
|
|
2481
|
+
parent.notify('transform', { prop: 'setResizedImgAngle', onPropertyChange: false, value: { angle: null } });
|
|
2438
2482
|
}
|
|
2439
2483
|
}
|
|
2440
2484
|
if (parent.togglePen) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Browser, EventHandler, extend, isBlazor, isNullOrUndefined } from '@syncfusion/ej2-base';
|
|
1
|
+
import { Browser, EventHandler, extend, getComponent, isBlazor, isNullOrUndefined } from '@syncfusion/ej2-base';
|
|
2
2
|
import { ZoomTrigger } from '../index';
|
|
3
3
|
var Selection = /** @class */ (function () {
|
|
4
4
|
function Selection(parent) {
|
|
@@ -3931,6 +3931,36 @@ var Selection = /** @class */ (function () {
|
|
|
3931
3931
|
parent.notify('transform', { prop: 'resize', value: { width: point.x, height: point.y, isAspectRatio: false } });
|
|
3932
3932
|
}
|
|
3933
3933
|
}
|
|
3934
|
+
if (isBlazor()) {
|
|
3935
|
+
var aspectRatioHeight = this.parent.element.querySelector('.e-ie-toolbar-e-resize-height-input .e-numerictextbox');
|
|
3936
|
+
var aspectRatioWidth = this.parent.element.querySelector('.e-ie-toolbar-e-resize-width-input .e-numerictextbox');
|
|
3937
|
+
if ((blrAspRatElem && blrAspRatElem.classList.contains('e-hidden'))) {
|
|
3938
|
+
if (aspectRatioHeight && aspectRatioHeight.value === "") {
|
|
3939
|
+
aspectRatioHeight.value = aspectRatioHeight.placeholder;
|
|
3940
|
+
aspectRatioHeight.value = Math.floor(parent.img.destHeight).toString();
|
|
3941
|
+
}
|
|
3942
|
+
if (aspectRatioWidth && aspectRatioWidth.value === "") {
|
|
3943
|
+
aspectRatioWidth.value = aspectRatioWidth.placeholder;
|
|
3944
|
+
aspectRatioWidth.value = Math.floor(parent.img.destWidth).toString();
|
|
3945
|
+
}
|
|
3946
|
+
}
|
|
3947
|
+
}
|
|
3948
|
+
else {
|
|
3949
|
+
var aspectRatioHeight = parent.element.querySelector('#' + parent.element.id + '_resizeHeight');
|
|
3950
|
+
var aspectRatioWidth = parent.element.querySelector('#' + parent.element.id + '_resizeWidth');
|
|
3951
|
+
if (isNullOrUndefined(aspectRatioElement)) {
|
|
3952
|
+
var elem = getComponent(aspectRatioHeight, 'numerictextbox');
|
|
3953
|
+
if (aspectRatioHeight && isNullOrUndefined(elem.value)) {
|
|
3954
|
+
elem.value = parseFloat(elem.placeholder);
|
|
3955
|
+
aspectRatioHeight.value = Math.floor(parent.img.destHeight).toString() + ' px';
|
|
3956
|
+
}
|
|
3957
|
+
elem = getComponent(aspectRatioWidth, 'numerictextbox');
|
|
3958
|
+
if (aspectRatioWidth && isNullOrUndefined(elem.value)) {
|
|
3959
|
+
elem.value = parseFloat(elem.placeholder);
|
|
3960
|
+
aspectRatioWidth.value = Math.floor(parent.img.destWidth).toString() + ' px';
|
|
3961
|
+
}
|
|
3962
|
+
}
|
|
3963
|
+
}
|
|
3934
3964
|
}
|
|
3935
3965
|
else {
|
|
3936
3966
|
var splitWords = void 0;
|
|
@@ -4889,6 +4919,12 @@ var Selection = /** @class */ (function () {
|
|
|
4889
4919
|
if (widthElement && heightElement) {
|
|
4890
4920
|
var heightString = heightElement.value.replace(/,/g, '');
|
|
4891
4921
|
var widthString = widthElement.value.replace(/,/g, '');
|
|
4922
|
+
if (heightString === '') {
|
|
4923
|
+
heightString = heightElement.placeholder.replace(/,/g, '');
|
|
4924
|
+
}
|
|
4925
|
+
if (widthString === '') {
|
|
4926
|
+
widthString = widthElement.placeholder.replace(/,/g, '');
|
|
4927
|
+
}
|
|
4892
4928
|
height = parseFloat(heightString);
|
|
4893
4929
|
width = parseFloat(widthString);
|
|
4894
4930
|
}
|
|
@@ -227,6 +227,9 @@ var Shape = /** @class */ (function () {
|
|
|
227
227
|
case 'updateObj':
|
|
228
228
|
this.updateObj(args.value['dimObj'], args.value['x'], args.value['y']);
|
|
229
229
|
break;
|
|
230
|
+
case 'updateSelectionChangeEventArgs':
|
|
231
|
+
this.updateSelectionChangeEventArgs(args.value['selectionSettings']);
|
|
232
|
+
break;
|
|
230
233
|
}
|
|
231
234
|
};
|
|
232
235
|
Shape.prototype.getModuleName = function () {
|
|
@@ -793,6 +796,17 @@ var Shape = /** @class */ (function () {
|
|
|
793
796
|
}
|
|
794
797
|
}
|
|
795
798
|
};
|
|
799
|
+
Shape.prototype.updateSelectionChangeEventArgs = function (selectionSettings) {
|
|
800
|
+
var parent = this.parent;
|
|
801
|
+
parent.activeObj.activePoint.startX = selectionSettings.startX;
|
|
802
|
+
parent.activeObj.activePoint.startY = selectionSettings.startY;
|
|
803
|
+
if (selectionSettings.width && selectionSettings.height) {
|
|
804
|
+
parent.activeObj.activePoint.width = selectionSettings.width;
|
|
805
|
+
parent.activeObj.activePoint.height = selectionSettings.height;
|
|
806
|
+
parent.activeObj.activePoint.endX = parent.activeObj.activePoint.startX + parent.activeObj.activePoint.width;
|
|
807
|
+
parent.activeObj.activePoint.endY = parent.activeObj.activePoint.startY + parent.activeObj.activePoint.height;
|
|
808
|
+
}
|
|
809
|
+
};
|
|
796
810
|
Shape.prototype.addLetter = function (letter) {
|
|
797
811
|
var parent = this.parent;
|
|
798
812
|
if (parent.textArea.style.display === 'none' && (parent.currObjType.isText || parent.activeObj.shape === 'text')) {
|
|
@@ -167,6 +167,9 @@ var Transform = /** @class */ (function () {
|
|
|
167
167
|
case 'resize':
|
|
168
168
|
this.resize(args.value['width'], args.value['height'], args.value['isAspectRatio']);
|
|
169
169
|
break;
|
|
170
|
+
case 'setResizedImgAngle':
|
|
171
|
+
this.resizedImgAngle = args.value['angle'];
|
|
172
|
+
break;
|
|
170
173
|
case 'reset':
|
|
171
174
|
this.reset();
|
|
172
175
|
break;
|
|
@@ -998,6 +998,7 @@ var ImageEditor = /** @class */ (function (_super) {
|
|
|
998
998
|
this.afterCropActions = [];
|
|
999
999
|
this.currentFilter = '';
|
|
1000
1000
|
this.tempFrameZoomLevel = null;
|
|
1001
|
+
this.cxtTbarHeight = null;
|
|
1001
1002
|
var obj_1 = { initialZoomValue: false };
|
|
1002
1003
|
this.notify('draw', { prop: 'getInitialZoomValue', onPropertyChange: false, value: { obj: obj_1 } });
|
|
1003
1004
|
if (obj_1['initialZoomValue']) {
|
|
@@ -1645,7 +1646,8 @@ var ImageEditor = /** @class */ (function (_super) {
|
|
|
1645
1646
|
value = 'vertical';
|
|
1646
1647
|
}
|
|
1647
1648
|
for (var i = 0; i < this.objColl.length; i++) {
|
|
1648
|
-
|
|
1649
|
+
var shape = this.objColl[i].shape;
|
|
1650
|
+
if (shape === 'image' || shape === 'text') {
|
|
1649
1651
|
if (isNullOrUndefined(this.objColl[i].rotateFlipColl)) {
|
|
1650
1652
|
this.objColl[i].rotateFlipColl = [];
|
|
1651
1653
|
}
|