Canvas是HTML5的新元素,可以用来绘制图形,动画,游戏等。其中Canvas有一个方法叫做Canvas.drawImage,它可以用来在Canvas上渲染图片。在这篇文章中,我将向大家介绍如何运用Canvas.drawlmage来实现惊艳的图片展示技巧。
Canvas.drawImage基本语法
Canvas.drawImage有三种不同的语法形式来绘制和渲染图片。它们的基本语法如下:
Canvas.drawImage(image, dx,dy,dWidth,dHeight);
Canvas.drawImage(image, dx,dy);
Canvas.drawImage(image, sx,sy,sWidth,sHeight,dx,dy,dWidth,dHeight);
参数说明:
Image:要绘制的图像
sx:源图像的x坐标
sy:源图像的y坐标
sWidth:源图像的宽度
sHeight:源图像的高度
dx:表示图像在画布上放置的px起始位置的左上角横坐标
dy:表示图像在画布上放置的px起始位置的左上角纵坐标
dWidth:要在画布上绘制的图片宽度
d Height:要在画布上绘制的图片高度
Canvas.drawImage实际上是一个比较通用的方法,主要是用来在Canvas上渲染其他元素,比如图片、视频、WebGL渲染结果等。
Canvas.drawImage的应用技巧
下面,我将向大家介绍Canvas.drawImage的应用技巧,以实现惊艳的图片展示效果。
1、裁剪图片
可以利用Canvas.drawImage的源图像的x坐标、y坐标、宽度以及高度的参数,裁剪需要的部分。例如,要将一张大图分成几份,然后如同拼图一样,将它们组合成一张完整的图像。
HTML代码示例
var canvas = document.getElementById("myCanvas");
var ctx = canvas.getContext("2d");
var img = document.getElementById("scream");
ctx.drawImage(img, 10, 10, 150, 150, 10, 10, 150, 150);
2、绘制照片墙
可以在Canvas上绘制多张不同大小的照片,也可以在照片上添加相关的效果。
HTML代码示例
canvas {
border: 1px solid black;
}
Canvas.drawImage应用于图片指定
// 在canvas上绘制图像
var canvas = document.getElementById("myCanvas");
var ctx = canvas.getContext("2d");
var img1 = new Image();
img1.src = "https://www.runoob.com/wp-content/uploads/2016/12/w3schools.jpg";
img1.onload = function () {
ctx.drawImage(img1, 10, 10, 150, 150);
}
var img2 = new Image();
img2.src = "https://www.runoob.com/wp-content/uploads/2016/12/w3schools.jpg";
img2.onload = function () {
ctx.drawImage(img2, 200, 10, 80, 120);
}
var img3 = new Image();
img3.src = "https://www.runoob.com/wp-content/uploads/2016/12/w3schools.jpg";
img3.onload = function () {
ctx.drawImage(img3, 10, 200, 150, 100);
}
var img4 = new Image();
img4.src = "https://www.runoob.com/wp-content/uploads/2016/12/w3schools.jpg";
img4.onload = function () {
ctx.drawImage(img4, 200, 200, 80, 80);
}
总结
Canvas.drawlmage是一个非常常用的Canvas方法,其在Web应用程序的开发中发挥了至关重要的作用。以上就是本篇文章所介绍的Canvas.drawImage应用技巧,希望大家可以将其应用到自己的项目中去。