Я пытаюсь использовать javascript, чтобы сделать снимок с помощью моего iphone и нарисовать изображение на холсте. я использую
<input type="file" capture="camera" accept="image/*" id="takePictureField">
mobilePictureGet);
использовать камеру. Как только я выберу картинку
document.getElementById("takePictureField").addEventListener('change', function(e) {
if(e.target.files.length == 1 && e.target.files[0].type.indexOf("image/") == 0) {
img.src = URL.createObjectURL(e.target.files[0]);
}
}
это срабатывает, и изображение появляется так, как я хочу в теге. (пока все хорошо), однако я рисую его на холсте, когда тег img загружен:
img.onload = function() {
ctx.drawImage(img, 0, 0, img.width,img.height);
}
и он кажется повернутым на -90 градусов. я пытался
var x = width / 2;
var y = height / 2;
var angleInRadians = Math.PI / 2;
ctx.translate(x, y);
ctx.rotate(angleInRadians);
ctx.drawImage(img, -width / 2, -height / 2, img.width, img.height);
ctx.rotate(-angleInRadians);
ctx.translate(-x, -y);
но я не могу заставить его соответствовать.
Кто-нибудь знает, почему холст будет рисовать изображение повернутым? Любая помощь, чтобы правильно нарисовать изображение на холсте, очень ценится!
Спасибо!