为了账号安全,请及时绑定邮箱和手机立即绑定

Canvas绘图

标签:
JavaScript

基本用法
getContext(“2d”):获取2D上下文
toDataURL()可以导出在canvas上绘制的图像
填充和描边
fillStyle和strokeStyle
绘制矩形
strokeRect()和fillRect()
绘制路径
首先要调用beginPath()
clip:剪切画板
closepath:连接起终点
绘制文本
fillText()
strokeText()
变换
rotate():旋转绘制的图形
scale():缩小或放大绘制的图形
translate():变更绘制原点
绘制图像
drawImage()
阴影
设置属性后绘制会带阴影
shadowColor
shadowOffsetX
shadowOffsetY
shadowBlur
渐变
线性渐变

var drawing = document.getElementById("drawing");            
//make sure <canvas> is completely supported
if (drawing.getContext){

    var context = drawing.getContext("2d"),
        gradient = context.createLinearGradient(30, 30, 70, 70);


    gradient.addColorStop(0, "white");
    gradient.addColorStop(1, "black");

    //draw a red rectangle
    context.fillStyle = "#ff0000";
    context.fillRect(10, 10, 50, 50);

    //draw a gradient rectangle
    context.fillStyle = gradient;
    context.fillRect(30, 30, 50, 50);
}                

径向渐变

var drawing = document.getElementById("drawing");
            
//make sure <canvas> is completely supported
if (drawing.getContext){

    var context = drawing.getContext("2d"),
    gradient = context.createRadialGradient(55, 55, 10, 55, 55, 30);


    gradient.addColorStop(0, "white");
    gradient.addColorStop(1, "black");

    //draw a red rectangle
    context.fillStyle = "#ff0000";
    context.fillRect(10, 10, 50, 50);

    //draw a gradient rectangle
    context.fillStyle = gradient;
    context.fillRect(30, 30, 50, 50);
}    

模式
绘制重复的图像
需要注意的是,模式是在原点开始的,只表示在某个特定的区域内显示重复的图像,而不是要从某个位置开始绘制重复图像
使用图像数据
getImageData获取指定区域的图像
putImageData把图像绘制到图像上
合成
全局属性globalAlpha和globalCompositionOperation
globalAlpha:绘制透明度

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消