JS_利用Canvas进行图片旋转

Posted 就是干不掉我

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS_利用Canvas进行图片旋转相关的知识,希望对你有一定的参考价值。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>图片旋转</title>
</head>
<body>
    <div>
        <input id="input" type="file" accept="image/*" onchange="show()"><br>
        <img id="img" src="" width="30%" alt="我是一张图片"><br>
        <button onclick="myRotate()">旋转</button>
    </div>
    <script>
        var base64="";
        function show(){
            var file=document.getElementById("input").files[0];
            var reader=new FileReader();
            reader.readAsDataURL(file);
            reader.onload=function(){
                base64=this.result;
                document.getElementById("img").src=base64;
            }
        }
        function myRotate(){
            debugger;
            var canvas=document.createElement("canvas");
            var context=canvas.getContext("2d");
            var img=new Image();
            img.src=base64;
            img.onload=function(){
                canvas.width=img.height;
                canvas.height=img.width;
                context.rotate(90*Math.PI/180);//顺时针旋转90°
                context.drawImage(img,0,-img.height,img.width,img.height);
                base64=canvas.toDataURL();
                document.getElementById("img").src=base64;
            }
        }
    </script>
</body>
</html>

 

以上是关于JS_利用Canvas进行图片旋转的主要内容,如果未能解决你的问题,请参考以下文章

ios系统 竖屏拍照 canvas处理后 图片旋转(利用exif.js解决ios手机上传竖拍照片旋转90度问题)

赵雅智_运用Bitmap和Canvas实现图片显示,缩小,旋转,水印

前端JS利用canvas的drawImage()对图片进行压缩

Js利用Canvas实现图片压缩

H5利用canvas实现海报功能

canvas中放入一张图片,但是其中的图片可以旋转移动,这是怎么确定的?