我需要使用Javascript来模拟像Photoshop一样倾斜图像的效果。你们知道如何在Javascript中做到这一点吗?
对<canvas>
上下文应用哪种几何计算? 我无法使用CSS ,因为它必须动态修改。
答案 0 :(得分:2)
CSS transform: skew();
将在没有Javascript的情况下为您执行此操作。
演示: http://jsfiddle.net/ThinkingStiff/MtWBy/
#original {
margin: 55px 10px 0 10px;
}
#vertical {
margin: 30px 20px 0 0;
transform: skew( 0, -30deg );
-ms-transform: skew( 0, -30deg );
-moz-transform: skew( 0, -30deg );
-o-transform: skew( 0, -30deg );
-webkit-transform: skew( 0, -30deg );
}
#horizontal {
margin: 55px 0 0 0;
transform: skew( -30deg, 0 );
-ms-transform: skew( -30deg, 0 );
-moz-transform: skew( -30deg, 0 );
-o-transform: skew( -30deg, 0 );
-webkit-transform: skew( -30deg, 0 );
}
.image {
background-image: url( 'http://placekitten.com/100' );
border: 1px solid black;
display: inline-block;
height: 100px;
margin-right: 20px;
vertical-align: top;
width: 100px;
}
<div id="original" class="image"></div>
<div id="vertical" class="image"></div>
<div id="horizontal" class="image"></div>
答案 1 :(得分:2)
单独使用CSS3可以实现这一点:
img {
-webkit-transform: skew(45deg);
}
<强> Live Example 强>
注意,我只使用了webkit,但它对所有其他现代浏览器都是一样的。
答案 2 :(得分:2)