十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
文件---打开,找到你要编辑的图片
创新互联公司主要从事网站设计、成都网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务龙井,10余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792
打开以后呢,
再点
修改----变形---数字变形---下拉菜单选”旋转”,输入你想要的角度,保存就可以了..
但是这样,图片的突出部分会消失,如果你不想它消失的话,点
修改----画布---符合画布
这个如果没有对低版本浏览器兼容的要求的话,可以使用CSS3来实现,现在主流的浏览器都已支持
//
旋转60度
-moz-transform:rotate(60deg);
-webkit-transform:rotate(60deg);
transform:rotate(60deg);
cxt.scale(2,2);
缩放的是整个画布,缩放后,继续绘制的图形会被放大或缩小。
ctx.translate(x,y) 方法重新映射画布上的 (0,0) 位置
x: 添加到水平坐标(x)上的值
y: 添加到垂直坐标(y)上的值
发生位移后,相当于把画布的0,0坐标 更换到新的x,y的位置,所有绘制的新元素都被影响。
位移画布一般配合缩放和旋转等。
context.rotate(angle); 方法旋转当前的绘图
注意参数是弧度(PI)
如需将角度转换为弧度,请使用 degrees*Math.PI/180 公式进行计算。
css代码,代码很简单:
.one{
width:200px;
height: 200px;
border:1px solid #adadad;
transition:all 0.1s;
border-radius:50%;
background:url(images/1.jpg) no-repeat center center;
background-size:cover;
margin:50px auto;
}
上面的代码大家都看得懂,我就不介绍了.我重点讲的是js的代码部分.
window.onload=function(){
var div=document.getElementsByClassName("one")[0];
console.log(div);
setCss3(div,{transform:"rotate(10deg)","transform-origin":"50% 50%"})
var angel=0;
setInterval(function(){
angel+=8;
setCss3(div,{transform:"rotate("+angel+"deg)","transform-origin":"0 0"})
},30)
function setCss3(obj,objAttr){
//循环属性对象
for(var i in objAttr){
var newi=i;
//判断是否存在transform-origin这样格式的属性
if(newi.indexOf("-")0){
var num=newi.indexOf("-");
newi=newi.replace(newi.substr(num,2),newi.substr(num+1,1).toUpperCase());
}
//考虑到css3的兼容性问题,所以这些属性都必须加前缀才行
obj.style[newi]=objAttr[i];
newi=newi.replace(newi.charAt(0),newi.charAt(0).toUpperCase());
obj.style[newi]=objAttr[i];
obj.style["webkit"+newi]=objAttr[i];
obj.style["moz"+newi]=objAttr[i];
obj.style["o"+newi]=objAttr[i];
obj.style["ms"+newi]=objAttr[i];
}
}
}
我在这就把相对的难点讲一下:
if(newi.indexOf("-")0){
var num=newi.indexOf("-");
newi=newi.replace(newi.substr(num,2),newi.substr(num,2).toUpperCase());
}
newi=newi.replace(newi.substr(num,2),newi.substr(num,2).toUpperCase());这一句代码其实就是把首字母转成是大写的
{transform:"rotate(10deg)","transform-origin":"0 0"))
因为在js中修改样式的时候,是不存在-webkit-transformz这样的格式的,两个单词之间的"-"是必须要省略掉的,换成第二个单词的字母为大写.所以主要就是把这个处理好了之后久ok了。
注意点:1.因为如果不添加css3的过渡属性的话,旋转的时候是会有种卡顿效果的,就是旋转的时候不顺畅,所以我这里添加了transition属性,让他转动起来的时候看起来顺畅的.
2.transform-origin的值如果为0 0的时候,是绕着原点旋转的,50% 50%的时候就是绕着中心点旋转的.不过默认的时候就是绕着中心点旋转的
现在我们以这个苹果的图片作为例子
我将演示代码写在这个页面网页链接,下面解释其用法。
页面结构如图
javascript代码如下
$(function() {
var r = 0;
$('img').click(function() {
r += 90;
$(this).css('transform', 'rotate(' + r + 'deg)');
});
});
核心思路是控制图片的这个css属性:
transform: rotate(360deg);
其中360deg就是360度,点一次旋转90度