`

canvas画渐变线条

 
阅读更多

index.html:

 

<!DOCTYPE HTML>
<html>
<style type="text/css">
#myCanvas {border: 1px solid #BEBEBE;}
</style>
<body>
    <canvas id="myCanvas" width="800" height="600">你的浏览器不支持 HTML5</canvas>
    <script src="index.js"></script>
</body>

</html>

 

Javascript:

(function(){ // 闭包,防止变量、方法重复
	var canvasDom = document.getElementById("myCanvas");
	var context = canvasDom.getContext("2d"); // 获取绘制功能的对象(context:上下文)
	
	drawradientLine(10, 10, 10+500, 10, 50, ['red', 'yellow', 'green', 'orange', '#FF00FF']);
        /**
	 * [drawradientLine 画颜色线性变化的线条]
	 * @param  {[type]} x1        [起点x坐标]
	 * @param  {[type]} y1        [起点y坐标]
	 * @param  {[type]} x2        [终点x坐标]
	 * @param  {[type]} y2        [终点y坐标]
	 * @param  {[type]} lineWidth [线条宽度]
	 * @param  {[type]} colors    [颜色数组,均匀分布的]
	 * @return {[type]}           [无]
	 */
	function drawradientLine(x1, y1, x2, y2, lineWidth, colors) {
		context.beginPath(); // 开始路径,如果没有这个和结束路径包围,所有线条都是最后那根线条的样式了
		context.moveTo(x1, y1); // 开始位置
		context.lineTo(x2, y2); // 画到此处
		context.lineWidth = lineWidth;
		
		var grd = context.createLinearGradient(x1, y1, x2, y2); //线性渐变的起止坐标
		for (var i=0; i<colors.length; i++) {
			grd.addColorStop(i / colors.length, colors[i]);
		}
		context.strokeStyle = grd;
		
		context.closePath(); // 结束路径,应与开始路径呼应(会不会导致内存泄露跟实现有关系)
		context.stroke();
	}
})();


 

 

分享到:
评论

相关推荐

    canvas动画 - 背景线条

    4. **颜色渐变**:可能使用了Canvas的渐变对象(LinearGradient或RadialGradient)来创建颜色过渡效果,让线条色彩更加丰富。 `demo.html`应该包含了上述的HTML和JavaScript代码示例,而`效果图 - 正常.gif`和`截图...

    html5 canvas五彩发光线条游走散开动画特效

    在这个“五彩发光线条游走散开动画特效”中,我们主要涉及了Canvas的一些核心概念和技术,包括路径绘制、颜色处理、动画帧更新以及事件处理。 首先,Canvas API提供了`beginPath()`、`moveTo()`、`lineTo()`等方法...

    html5 canvas酷炫的线条动画特效

    `beginPath()`开始一个新的路径,`moveTo(x, y)`移动到指定坐标,`lineTo(x, y)`画一条到新坐标的线,最后`stroke()`描绘出线条。 ```javascript ctx.beginPath(); ctx.moveTo(10, 10); ctx.lineTo(100, 100); ctx....

    html5 canvas鼠标跟随线条动画特效

    线条的颜色变化可以通过设置`strokeStyle`属性来实现,可以是固定颜色,也可以是渐变或随机颜色。例如,每绘制一条新线时,我们可以随机生成一个颜色: ```javascript var randomColor = 'rgb(' + Math.floor(Math....

    html5 canvas钢笔绘制线条创建导火线燃烧动画效果

    燃烧的部分可能通过改变线条的颜色或透明度来实现,这通常涉及到`fillStyle`或`strokeStyle`属性,以及渐变或者时间驱动的动画更新。每帧中,燃烧的部分会向前推进,直到整个线条“燃尽”。 CSS文件在这样的效果中...

    html5 canvas虚幻的线条背景动画

    6. 动态效果:为了增加视觉吸引力,可以添加动态效果,如线条的摇摆、闪烁、渐变等。这可能涉及到时间戳、速度变量和缓动函数(如ease-in-out)的应用。 7. 清除画布:在每一帧之前,通常需要使用`clearRect()`清除...

    HTML5 Canvas彩色渐变背景动画效果.zip

    Canvas是一个基于矢量图形的画布,通过JavaScript API可以进行像素级别的操作,包括绘制线条、形状、图像,甚至复杂的动画。在HTML中,你可以通过`&lt;canvas&gt;`标签来创建一个画布,并通过JavaScript的`canvas....

    andorid圆弧绘制,并随之贪色渐变Canvas

    在描述中提到的"画圆弧并且圆弧的颜色随之渐变",实现方式可能是这样的:在`onDraw()`方法内部,我们可能有一个循环,每次调用`drawArc()`时,都改变`Paint`的`Shader`中的颜色位置,使得颜色在圆弧的运动过程中逐渐...

    HTML5 Canvas画印章

    这些函数包括绘制线条、形状、图像以及应用渐变和阴影等。要创建印章,我们需要了解以下几个关键知识点: 1. **Canvas元素**:首先,在HTML文档中添加一个`&lt;canvas&gt;`元素,指定其id以便在JavaScript中引用。例如: ...

    HTML5 Canvas流动线条动画特效.zip

    开发者可以通过JavaScript的`CanvasRenderingContext2D`对象提供的方法来绘制图形,如线条、圆形、矩形等,并能进行填充、描边、渐变等操作。 在描述中提到的“透明飘动的丝带背景动画”,其实现方式可能包括以下...

    HTML5 Canvas线条背景动画.zip

    例如,`createLinearGradient()`可以创建一个线性渐变,通过`addColorStop()`定义各个颜色点,然后将此渐变应用于线条的`strokeStyle`属性。线宽变化可以通过在每次重绘时改变`lineWidth`来实现,而随机数生成则可以...

    Canvas画板钢笔绘制线条特效.zip

    开发者可能使用定时器(如`setInterval()`)来定期更新画面,每次迭代时缩短线条的长度,同时改变线条颜色,比如从亮橙色渐变到暗红色,模拟火焰熄灭的过程。此外,可能还会加入烟雾效果,通过绘制小颗粒并随时间...

    HTML5 Canvas酷炫线条动画背景特效

    3. **颜色和渐变**:可以使用`strokeStyle`属性设置线条的颜色,如果线条颜色在变化,可能使用到了颜色渐变,例如线性渐变(`createLinearGradient()`)或径向渐变(`createRadialGradient()`)。渐变可以为线条添加...

    HTML5 Canvas鼠标绘制线条特效.zip

    1. `createLinearGradient()`:创建一个线性渐变对象,可以用于填充或描边,实现线条的动态颜色变化效果。 2. `beginPath()`:开始一个新的路径,清空当前路径。 3. `moveTo(x, y)`:将路径移动到指定的坐标点(x, y...

    html5 canvas绘制随机游动线条动画特效

    通过在HTML中添加`&lt;canvas&gt;`标签,并用JavaScript来控制其上下文(`context`),我们可以绘制点、线、形状以及进行颜色填充、渐变等操作。 在描述中提到的随机游动线条动画,其核心技术可能包含以下几个方面: 1. ...

    HTML5 Canvas彩色发光线条波浪背景动画特效

    在这个特定的实例中,“HTML5 Canvas彩色发光线条波浪背景动画特效”是一个利用Canvas API创建的视觉效果,其特点在于动态的线条、色彩变化以及波浪式的运动模式,为网页增添了一种现代和科技感。 首先,我们来深入...

    canvas画板

    这个画板项目中,"铅笔"功能的实现可能是通过监听鼠标或触摸事件,计算出每次移动的坐标,然后在`canvas`上绘制连续的线条。这种线条的绘制可以借助`beginPath()`,`moveTo()`,`lineTo()`等方法来完成,而`stroke()...

    html5绘图Canvas线条动画特效

    在Canvas中,线条的样式可以通过`strokeStyle`属性来设定,它可以是颜色、渐变或者模式。`lineWidth`属性用来定义线条的宽度,`lineCap`和`lineJoin`则分别控制线条端点和连接处的样式。此外,`lineDashPattern`属性...

    html5 canvas炫酷线条动画特效

    5. **样式和效果**:为了达到“炫酷”的效果,可能还会应用一些额外的Canvas特性,如渐变、阴影、透明度变化等。这些可以通过`createLinearGradient`, `shadowBlur`, `globalAlpha`等方法设置。 总的来说,...

Global site tag (gtag.js) - Google Analytics