zoukankan      html  css  js  c++  java
  • 微信小程序 canvas 操作存码( 建议收藏 )

    存码

    有补充联系我,或在下方评论补充

    代码片段

    const text = obj => { //插入文字
     return new Promise((resolve, reject)=>{
    	obj.ctx.save();
    	obj.ctx.fillStyle=obj.color||"blue";
    	obj.ctx.font=obj.font||"20px 楷体";
    	obj.ctx.fillText(obj.content||"你还没输入内容", obj.x, obj.y)
    	obj.ctx.restore();
    	obj.ctx.draw(true);
    	resolve('操作成功');
     })
    }
    const image = obj => {
    	return new Promise((resolve, reject)=>{
    		obj.ctx.save();
    		obj.ctx.drawImage(obj.image, obj.x, obj.y, obj.w, obj.h);
    		obj.ctx.restore();
    		obj.ctx.draw(true);
    		resolve('操作成功');
    	})
    }
    const imageRound = obj => {
    	return new Promise((resolve, reject)=>{
    		obj.ctx.save();
    		obj.ctx.beginPath();
    		obj.ctx.moveTo(obj.x+obj.r,obj.y);
    		obj.ctx.arcTo(obj.x+obj.w,obj.y,obj.x+obj.w,obj.y+obj.h,obj.r);
    		obj.ctx.arcTo(obj.x+obj.w,obj.y+obj.h,obj.x,obj.y+obj.h,obj.r);
    		obj.ctx.arcTo(obj.x,obj.y+obj.h,obj.x,obj.y,obj.r);
    		obj.ctx.arcTo(obj.x,obj.y,obj.x+obj.w,obj.y,obj.r);
    		obj.ctx.lineWidth = 0;//线条的宽度
    		obj.ctx.strokeStyle = "#FFFFFF";//线条的颜色
    		obj.ctx.stroke();
    		obj.ctx.clip();
    		obj.ctx.drawImage(obj.image, obj.x, obj.y, obj.w, obj.h);
    		obj.ctx.closePath();
    		obj.ctx.restore();
    		obj.ctx.draw(true);
    		resolve('操作成功');
    	})
    }
    const background = obj => {
    	return new Promise((resolve, reject)=>{
    		obj.ctx.save();
    		obj.ctx.fillStyle = obj.color||"black";
    		obj.ctx.fillRect(obj.x,obj.y,obj.w,obj.h)
    		obj.ctx.restore();
    		obj.ctx.draw(true);
    		resolve('操作成功');
    	})
    }
    // 用法
    // background({
    // 	ctx:context,
    // 	x:0,
    // 	y:0,
    // 	color:"red",
    // 	w:100,
    // 	h:100
    // });
    // text({
    // 	ctx:context,
    // 	content:"内容",
    // 	color:"blue",
    // 	font:"20px 楷体",
    // 	size:20,
    // 	x:0,
    // 	y:20
    // })
    // image({
    //    ctx:context,
    //    image:"http://img.doutula.com/production/uploads/image/2020/11/28/20201128547822_AareNy.jpg",
    //    x:50,
    //    y:50,
    //    w:50,
    //    h:50
    // });
    // imageRound({
    // 	ctx:context,
    // 	image:"http://img.doutula.com/production/uploads/image/2020/11/28/20201128547822_AareNy.jpg",
    // 	x:50,
    // 	y:50,
    // 	w:50,
    // 	h:50,
    // 	r:25
    // });
    export {
    	text,image,imageRound,background
    }
    
  • 相关阅读:
    又见博弈
    两道来自CF的题
    温习及回顾
    笔试面试总结
    Python Cha4
    初学ObjectiveC
    设计模式汇总(三)
    转贴XML的写法建议
    让从Objec中继承的类也拥有鼠标事件
    关于异常处理的一些看法
  • 原文地址:https://www.cnblogs.com/1748sb/p/14331008.html
Copyright © 2011-2022 走看看