Skip to content

Commit 0e390f2

Browse files
authored
Update canvas-helper.js
1 parent 0d67820 commit 0e390f2

File tree

1 file changed

+42
-0
lines changed

1 file changed

+42
-0
lines changed

src/lib/canvas-helper.js

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,48 @@ export default {
5454
callback(data);
5555
}
5656
},
57+
58+
/**
59+
* init image for reset size and rotation
60+
**/
61+
init(src, callback) {
62+
console.log(src);
63+
let image = new Image();
64+
image.src = src;
65+
var self = this;
66+
image.onload = function() {
67+
var mimeType = self._getImageType(image.src);
68+
var cvs = self._getCanvas(image.naturalWidth, image.naturalHeight);
69+
var ctx = cvs.getContext("2d");
70+
ctx.drawImage(image, 0, 0);
71+
var newImageData = cvs.toDataURL(mimeType, 100);
72+
callback(newImageData);
73+
}
74+
},
75+
76+
/**
77+
* rotate image via canvas
78+
**/
79+
rotate(imageData, direction, callback) {
80+
let image = new Image();
81+
image.src = imageData.src;
82+
var self = this;
83+
image.onload = function() {
84+
var mimeType = self._getImageType(image.src);
85+
var cvs = self._getCanvas(image.naturalHeight, image.naturalWidth);
86+
var ctx = cvs.getContext("2d");
87+
if (direction == 1) {
88+
ctx.rotate(90 * Math.PI / 180);
89+
ctx.translate(0, -cvs.width);
90+
} else {
91+
ctx.rotate(-90 * Math.PI / 180);
92+
ctx.translate(-cvs.height, 0);
93+
}
94+
ctx.drawImage(image, 0, 0);
95+
var newImageData = cvs.toDataURL(mimeType, 100);
96+
callback(newImageData);
97+
}
98+
},
5799

58100
resize(image, options, callback) {
59101
const checkNumber = function(num) {

0 commit comments

Comments
 (0)