canvas 简单绘图

// canvas 简单例子
var canvas = document.getElementById('canvas');
if (canvas.getContext) {
    var context = canvas.getContext('2d');
    // 线宽
    context.lineWidth = 4;
    // 画笔颜色
    context.strokeStyle = 'red';
    // 填充色
    context.fillStyle = "red";
    // 线帽类型
    context.lineCap = 'butt'; // round, square
//    // 开始路径
//    context.beginPath();
//    // 起点
//    context.moveTo(10,10);
//    // 终点
//    context.lineTo(150,50);
//    // 绘制
//    context.stroke();
    
    // 矩形
//    context.beginPath();
//    context.strokeRect(10,10,70,40);
//    // 矩形的另一种方式
//    context.rect(10,10.70,40);
//    context.stroke();
    
    // 实心矩形
//    context.beginPath();
//    context.fillRect(10,10,70,40);
    // 另一种方式实心矩形
//    context.beginPath();
//    context.rect(10,10,70,40);
//    context.fill();
    
//    // 圆形
//    context.beginPath();
//    // 圆中心坐标x, 圆中心坐标Y, 圆弧半径, 起始角度,终止角度,是否逆时针
//    // 第4个参数和第五个参数是要传入的弧度,如果画30角度,需要将其转化为弧度 30 * Math.PI / 180
//    context.arc(100,100,70,0,130 * Math.PI / 180, true);
//    context.stroke();
//    context.fill();
    
//     // 圆角
//    context.beginPath();
//    context.moveTo(20,20);
//    context.lineTo(70,20);
//       // 为一条路径画弧度p1.x p1.y p2.x, p2.y 弧半径, 
//    context.arcTo(120,30,120,70, 50);
//    context.lineTo(120,120);
//    context.stroke();
    
//    // 擦除canvas 画板
//    context.beginPath();
//    context.fillRect(10,10,200,100);
    
//    // 擦除区域
//    context.clearRect(30,30,50,50);
     //  二次贝塞尔曲线
//      context.beginPath();
//      context.moveTo(100,100);
//      context.quadraticCurveTo(20,50,200,20);
//      context.stroke();
    
     // 三次贝塞尔曲线
//     context.moveTo(68,130);
//     var cX1 = 20;
//     var cY1 = 10;
//     var cX2 = 268;
//     var cY2 = 10;
//     var endX = 268;
//     var endY = 170;
//     context.bezierCurveTo(cX1, cY1, cX2, cY2, endX, endY);
//     context.stroke();
    
    // 利用clip指定绘图区域,指定绘图区域之后,只能在绘图区域中进行绘图擦欧总
    // 绘制圆形
    context.arc(100,100,40,0, 360 * Math.PI/ 180 , true);
    // 限制区域
    context.clip();
    // 开始尝试绘制其他
    context.beginPath();
    context.fillStyle = 'lightblue';
    // 结果矩形并没有显示出来
    context.fillRect(0,0,300,150);
}

转载于:https://my.oschina.net/wangdk/blog/124838

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值