• 【js】js 让图片旋转


     转http://www.cnblogs.com/ustcyc/p/3760116.html

    核心:
    canvas.style.filter = "progid:DXImageTransform.Microsoft.Matrix(M11=" + costheta + ",M12=" + (-sintheta) + ",M21=" + sintheta + ",M22=" + costheta + ",SizingMethod='auto expand')";
    看起来像ie专属的,ff chrome呢

    css3实现图片旋转功能:支持的浏览器有chrome,firefox;opera是不支持的。
    具体代码为:-moz-transfrom:rotate(90deg);-webkit-ransfrom:rotate(90deg);
    上述代码的意思就是将图片顺时针旋转90度,其实可以旋转任意的度数。但是支持css3的浏览器只有chrome,firefox3.6 ,safari,ie浏览器是不支持的。那么IE
    下该怎么处理呢?于是就有了下面的一种方案
    2)在IE下通过滤镜来实现旋转
    具体代码为:filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
    这里的rotation 参数可以为0,1,2,3 ,表示的意思就是这些数字乘以90后的旋转角度。IE下如果要旋转任意的角度要用到矩阵变换滤镜,我们在日常的使用过程中,
    大部分使用的是变换90的倍数,这里就不讨论任意的角度了。但是还是有问题的,如果非ie浏览器,不支持CSS3,那么如果实现图片的旋转呢,其实canvas也是可以图片旋转的。
    3)用canvas来实现图片的旋转
    canvas在chrome,firefox,opera等浏览器中均支持,他是有一个基于 JavaScript 的绘图 API,。首先我们来看看怎样利用canvas+JavaScript实现图片的旋转
    代码如下:
    
    复制代码 代码如下:
    
    var test = function(){
            var canvas = document.getElementById("result");
            var oImg = document.getElementById("Img");        
            canvas.height = 300;
            canvas.width = 200;
            var context = canvas.getContext("2d");
            context.save();
            context.translate(200,0);
            context.rotate(Math.PI/3);
            context.drawImage(oImg, 0, 0, 300, 200);
            context.restore();
            oImg.style.display = "none";
    };
    上述代码首先得到一个canvas对象,然后设置他的高度,开始绘图了。这个改变canvas的中心点和旋转角度,然后将图片画到canvas中去,将其存储起来,然后
    隐藏之前的图片。这种方法实现还是比较平滑的。



    jquery版
    转http://blog.csdn.net/cangkukuaimanle/article/details/7414985
  • 相关阅读:
    项目原型设计
    项目选题报告 (基于云的胜利冲锋队)
    基于云的胜利冲锋队 团队团队展示
    团队作业第三次-项目原型设计
    团队作业第二次-项目选题报告
    团队作业第一次-团队团队展示
    周测、代码
    异常
    5.13重点
    接口
  • 原文地址:https://www.cnblogs.com/viewcozy/p/4828087.html
Copyright © 2020-2023  润新知