9

我想在 html5 画布中将图像制作成倾斜/透视/旋转的图像。下图正是我想要做的。

看法

我有这段代码可以在画布中使用转换,但我不能用它做正面或反面。有人可以帮助我吗?

此外,我只希望在 HTML5 Canvas 而不是 css 中完成此操作。

var cs = Math.cos(angle1), sn = Math.sin(angle1);
var h = Math.cos(angle2);

var a = 100*cs, b = -100*sn, c = 200;
var d = h*100*sn, e = h*100*cs, f = 200;

ctx.setTransform(a, d, b, e, c, f);
4

2 回答 2

9

不幸的是,不可能使用画布上下文setTransform方法来执行透视变换(您仅限于平移、缩放、旋转和倾斜)。

但是,根据您的用例,您可以伪造它:

http://tulrich.com/geekstuff/canvas/perspective.html http://yuiblog.com/blog/2008/06/23/slicing/

于 2013-04-02T12:59:53.817 回答
8

任何仍然想知道的人,您可以使用http://evanw.github.io/glfx.js/docs/轻松完成此操作

于 2016-06-08T17:34:54.800 回答