如您所见,我尝试在画布中旋转图像:
https://jsfiddle.net/1a7wpsp8/4/
因为我旋转了图像[0, image_height],图像信息丢失了.缺少部分头部,并且"画布"的高度现在变小,以显示整个旋转图像.
为了解决这个问题,我想我必须将旋转原点更多地向右移动并增加画布高度.
我添加了一个方法,以特定的角度获取原点周围的旋转点:
function rotate(x, y, a) {
var cos = Math.cos,
sin = Math.sin,
a = a * Math.PI / 180,
xr = x * cos(a) - y * sin(a);
yr = x * sin(a) + y * cos(a);
return [xr, yr];
}
Run Code Online (Sandbox Code Playgroud)
有了这个我试图计算新的旋转原点,但失败了.
旋转图像的首选方法是什么? 如何在画布上显示完整图像,没有红色边框?谢谢 https://jsfiddle.net/1a7wpsp8/4/