HTML5 Canvas图片操作简单实例1

1.加载显示图片

复制代码
    <canvas id="canvasOne" class="myCanvas" width="500" height="500"></canvas>
    <script>
        var canvas = document.getElementById('canvasOne');
        var ctx = canvas.getContext('2d');
        //加载图片
        var img = new Image();
        img.onload = function () {
            ctx.clearRect(0, 0, canvas.width, canvas.height);
            ctx.drawImage(img, 0, 0, img.width, img.height);
        }
        img.src = '../images/1.jpg';
    </script>
复制代码

2.获取Canvas数据,显示到img标签

复制代码
    <canvas id="canvasOne" class="myCanvas" width="500" height="500"></canvas>
    <img id="imgOne" />
    <script>
        var canvas = document.getElementById('canvasOne');
        var ctx = canvas.getContext('2d');
        //加载图片,显示当前图片到其他地方
        var img = new Image();
        img.onload = function () {
            ctx.clearRect(0, 0, canvas.width, canvas.height);
            ctx.drawImage(img, 0, 0, img.width, img.height);
            //显示图片的部分内容到img图片标签
            var imgOne = document.getElementById('imgOne');
            imgOne.width = 1000;
            imgOne.height = 600;
            //图片内容显示当前画布显示的部分
            imgOne.src = canvas.toDataURL('image/png');
        }
        img.src = '../images/1.jpg';
    </script>
复制代码

 

3.获取Canvas数据,显示到其他canvas中

复制代码
    <canvas id="target" width="200" height="100"></canvas>
    <canvas id="canvasOne" class="myCanvas" width="500" height="500"></canvas>
    <script>
        var canvas = document.getElementById('canvasOne');
        var ctx = canvas.getContext('2d');
        var target = document.getElementById('target');
        //加载图片
        var img = new Image();
        img.onload = function () {
            ctx.clearRect(0, 0, canvas.width, canvas.height);
            //图片缩小,显示
            ctx.scale(0.5, 0.5);
            ctx.drawImage(img, 0, 0, img.width, img.height);

            //获取缩小后的像素,显示到其他canvas
            var imgData = ctx.getImageData(0, 0, 200, 100);
            var ctxTwo = target.getContext('2d');
            ctxTwo.putImageData(imgData, 0, 0);
        }
        img.src = '../images/1.jpg';
    </script>
复制代码

4.Canvas中图片的平铺操作

复制代码
    <canvas id="canvasOne" class="myCanvas" width="500" height="500"></canvas>
    <script>
        /***图片的背景显示***/
        var canvas = document.getElementById('canvasOne');
        var ctx = canvas.getContext('2d');
        //加载图片
        var img = new Image();
        img.onload = function () {
            ctx.beginPath();
            ctx.rect(0, 0, canvas.width, canvas.height);
            ctx.scale(0.1, 0.1);
            //平铺
            //ctx.fillStyle = ctx.createPattern(img, 'repeat');

            //水平方向 平铺
            //ctx.fillStyle = ctx.createPattern(img,'repeat-x');

            //垂直方向 平铺
            //ctx.fillStyle = ctx.createPattern(img, 'repeat-y');

            //禁用平铺
            ctx.fillStyle = ctx.createPattern(img, 'no-repeat');

            ctx.fill();
        }
        img.src = '../images/1.jpg';
    </script>
复制代码

 

更多像素处理:

http://www.cnblogs.com/tianma3798/p/4264857.html

HTML5 Canvas显示本地图片实例1、Canvas预览图片实例1

posted @   天马3798  阅读(442)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示