失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > ipad html 自定义裁剪 canvas裁剪clip()函数的具体使用

ipad html 自定义裁剪 canvas裁剪clip()函数的具体使用

时间:2022-02-07 15:37:25

相关推荐

ipad html 自定义裁剪 canvas裁剪clip()函数的具体使用

在canvas中,可以使用clip()函数裁剪区域,设定裁剪区域后,只有在区域内的图像才能显示,其余部分会被屏蔽掉

未使用裁剪绘制一个圆

*{margin:0; padding:0;}

html, body{width:100%; height:100%; overflow:hidden; background-color:#AFAFAF;}

var canvas = document.getElementById('canvas'),

context = canvas.getContext('2d');

canvas.width = document.body.clientWidth;

canvas.height = document.body.clientHeight;

context.lineWidth = 3;

context.strokeStyle = 'red';

context.beginPath();

context.arc(200, 200, 100, (Math.PI / 180) * 0, (Math.PI / 180) * 360, false);

context.stroke();

context.closePath();

效果

使用clip()裁剪区域

*{margin:0; padding:0;}

html, body{width:100%; height:100%; overflow:hidden; background-color:#AFAFAF;}

var canvas = document.getElementById('canvas'),

context = canvas.getContext('2d');

canvas.width = document.body.clientWidth;

canvas.height = document.body.clientHeight;

context.lineWidth = 3;

context.strokeStyle = 'red';

context.rect(0, 0, 200, 200);

context.clip();

context.beginPath();

context.arc(200, 200, 100, (Math.PI / 180) * 0, (Math.PI / 180) * 360, false);

context.stroke();

context.closePath();

效果

也可以使用arc绘制圆形的剪裁区域

*{margin:0; padding:0;}

html, body{width:100%; height:100%; overflow:hidden; background-color:#AFAFAF;}

var canvas = document.getElementById('canvas'),

context = canvas.getContext('2d');

canvas.width = document.body.clientWidth;

canvas.height = document.body.clientHeight;

context.lineWidth = 3;

context.strokeStyle = 'red';

context.arc(100, 100, 150, (Math.PI / 180) * 0, (Math.PI / 180) * 360, false);

context.clip();

context.beginPath();

context.arc(200, 200, 100, (Math.PI / 180) * 0, (Math.PI / 180) * 360, false);

context.stroke();

context.closePath();

效果

使用save和restore实现只裁剪单个路径

*{margin:0; padding:0;}

html, body{width:100%; height:100%; overflow:hidden; background-color:#AFAFAF;}

var canvas = document.getElementById('canvas'),

context = canvas.getContext('2d');

canvas.width = document.body.clientWidth;

canvas.height = document.body.clientHeight;

context.lineWidth = 3;

context.strokeStyle = 'red';

context.save();

context.rect(0, 0, 200, 200);

context.clip();

context.beginPath();

context.arc(200, 200, 100, (Math.PI / 180) * 0, (Math.PI / 180) * 360, false);

context.stroke();

context.closePath();

context.restore();

context.beginPath();

context.arc(250, 250, 100, (Math.PI / 180) * 0, (Math.PI / 180) * 360, false);

context.stroke();

context.closePath();

效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

如果觉得《ipad html 自定义裁剪 canvas裁剪clip()函数的具体使用》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。