我正在尝试从javascript中的图像中旋转图形,到目前为止,我还没有太多的运气。 我尝试创建一个单独的画布来执行此操作,但这导致了扭曲的图像,这些图像似乎在画布上出现和消失。 这是我现在正在使用的功能:
function rotImage(img,deg){
var rotateImage;
var radDegrees = deg * (Math.PI/180);
var imageRotCanvas = document.createElement('canvas');
var imageRotCanvasCtx = imageRotCanvas.getContext('2d');
var rotWidth = Math.ceil(Math.abs((img.width * Math.cos(radDegrees)) + (img.height * Math.sin(radDegrees))));
var rotHeight = Math.ceil(Math.abs((-img.width * Math.sin(radDegrees)) + (img.height * Math.cos(radDegrees))));
imageRotCanvas.width = rotWidth*8;
imageRotCanvas.height = rotHeight*8;
imageRotCanvasCtx.rotate(radDegrees);
imageRotCanvasCtx.drawImage(img,0,0);
rotateImage = imageRotCanvas.toDataURL('image/png');
return rotateImage;
}
有没有更好的方法来对2D图形进行基本操作? 我学习Javascript是为了好玩,到目前为止,GFX一直是最大的问题。 如果有图书馆或其他东西,我很乐意使用它。 这是针对一系列对象,而不是单个图像。 我将有多个必须旋转的图像。
好的。 看起来好像真的没有一个好方法可以做到这一点,除了外部来源。 我会将其标记为已回答。