html 图片 填充方式,HTML5 Canvas图片填充样式讲解

本篇教程探讨了HTML5  Canvas图片填充样式讲解,希望阅读本篇文章以后大家有所收获,帮助大家HTML5+CSS3从入门到精通 。

<

html>

canvas

*{

margin: 0;

padding: 0;

outline: none;

border: none;

}

#canvas{

width: 7rem;

margin: .25rem 0 0 1.5rem;

border: 1px solid black;

}

/**

* rem 布局初始化

*/

$(‘html‘).css(‘font-size‘, $(window).width()/10);

/**

* 获取 canvas 画布

* 获取 canvas 绘图上下文环境

*/

var canvas = $(‘#canvas‘)[0];

var cxt = canvas.getContext(‘2d‘);

/**

* 创建图片填充样式

* 一: createPattern( 图片对象, 重复方式 )

* 二: createPattern( canvas对象, 重复方式)

* 三: createPattern( 视频对象, 重复方式)

*/

/*

var img = new Image();

img.src = "../img/favicon.ico";

img.onload = function(){

var pattern = cxt.createPattern(img, "repeat");

cxt.fillStyle = pattern;

cxt.fillRect(0, 0, 1000, 600);

}

*/

var fiveStartPath = function(cxt){

cxt.beginPath();

var x = 0; y = 0;

for(var i = 0; i 

x = Math.cos((18+72*i)/180*Math.PI);

y = Math.sin((18+72*i)/180*Math.PI);

cxt.lineTo(x, 0-y);

x = Math.cos((54+72*i)/180*Math.PI)/2.0;

y = Math.sin((54+72*i)/180*Math.PI)/2.0;

cxt.lineTo(x, 0-y);

}

cxt.closePath();

}

var drawFiveStar = function(cxt, fiveStart){

cxt.save();

cxt.translate(fiveStart.offsetX, fiveStart.offsetY);

cxt.rotate(fiveStart.RotationAngle/180*Math.PI);

cxt.scale(fiveStart.Radius, fiveStart.Radius);

fiveStartPath(cxt);

cxt.fillStyle = "yellow";

cxt.fill();

cxt.restore();

}

var createCanvas = function(){

var canvas = document.createElement("canvas");

canvas.width = 100;

canvas.height = 100;

var cxt = canvas.getContext(‘2d‘);

var fiveStart = {

Radius: 50,

offsetX: 50,

offsetY: 50,

RotationAngle: 0

}

drawFiveStar(cxt, fiveStart);

return canvas;

}

var canvasBackground = createCanvas();

var patten = cxt.createPattern(canvasBackground, "repeat");

cxt.fillStyle = patten;

cxt.fillRect(0, 0, 1000, 600);

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标WEB前端HTML5/CSS3频道!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值