`
cakin24
  • 浏览: 1389056 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

请您先登录,才能继续操作

Canvas 线性渐变

阅读更多
一 介绍
渐变可以填充在矩形, 圆形, 线条, 文本等等, 各种形状可以自己定义不同的颜色。
以下用来设置Canvas的线性渐变:
createLinearGradient(x,y,x1,y1) - 创建线条渐变。
当我们使用渐变对象,必须使用两种或两种以上的停止颜色。
addColorStop()方法指定颜色停止,参数使用坐标来描述,可以是0至1。
使用渐变,设置fillStyle或strokeStyle的值为渐变,然后绘制形状,如矩形,文本,或一条线。
 
二 代码
<!DOCTYPE html>
<html>
<head>
	<meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" />
	<meta http-equiv="Content-Type" content="text/html; charset=GBK" />
	<title> 线性渐变 </title>
</head>
<body>
<h2> 线性渐变 </h2>
<canvas id="mc" width="400" height="280"
	style="border:1px solid black"></canvas>
<script type="text/javascript">
	// 获取canvas元素对应的DOM对象
	var canvas = document.getElementById('mc');
	// 获取在canvas上绘图的CanvasRenderingContext2D对象
	var ctx = canvas.getContext('2d');
	ctx.save();
	ctx.translate(30 , 20);
	// 创建线性渐变
	lg = ctx.createLinearGradient(0 , 0 , 160 , 80);
	// 向线性渐变上添加颜色
	lg.addColorStop(0.2 , "#f00");
	lg.addColorStop(0.5 , "#0f0");
	lg.addColorStop(0.9 , "#00f");
	// 设置使用线性渐变作为填充颜色
	ctx.fillStyle = lg;
	// 填充一个矩形
	ctx.fillRect(0 , 0 , 160 , 80);
	// 恢复坐标系统
	ctx.restore();
	// 平移坐标系统
	ctx.translate(280 , 160)
	ctx.beginPath();
	// 添加圆弧
	ctx.arc(0 , 0  , 80 , 0 , Math.PI * 2 , true);
	ctx.closePath();
	ctx.lineWidth = 12;
	// 再次创建线性渐变
	lg2 = ctx.createLinearGradient(-40 , -40 , 80 , 50);
	// 向线性渐变上添加颜色
	lg2.addColorStop(0.1 , "#ff0");
	lg2.addColorStop(0.4 , "#0ff");
	lg2.addColorStop(0.8 , "#f0f");
	// 设置使用线性渐变作为边框颜色
	ctx.strokeStyle = lg2;
	ctx.stroke();
</script>
</body>
</html>
 
三 运行结果

 
  • 大小: 10.4 KB
1
0
分享到:
评论

相关推荐

    讲解HTML中canvas线性渐变的使用方法中代码图片

    该资源是讲解HTML中canvas线性渐变的使用方法中代码图片,需要的可以直接下载无需任何费用,希望能得到您得认可与支持

    Android LinearGradient 线性渐变渲染

    一、LinearGradient 线性渐变渲染 1、设置 2 个颜色的渐变 3、设置多个颜色的渐变 二、LinearGradient 线性渐变渲染重要参数分析 1、正常渲染 2、设置多个渐变颜色渲染 3、设置渲染方向 4、设置 Shader.TileMode....

    canvas画渐变线条

    在创建渐变线条时,我们需要使用到`createLinearGradient()`或`createRadialGradient()`方法,它们可以创建线性渐变和径向渐变对象。 线性渐变是颜色从一个方向平滑过渡到另一个方向。要创建线性渐变,我们可以这样...

    2.16 canvas中的线性渐变|canvas填充样式(渐变色与纹理)|Canvas图形、动画、游戏开发从入门到精通全系列课程

    2.16_canvas中的线性渐变|canvas填充样式(渐变色与纹理)|Canvas图形、动画、游戏开发从入门到精通全系列课程

    canvas画矩形(包括渐变)

    这篇博客"canvas画矩形(包括渐变)"探讨了如何使用Canvas API来绘制矩形,并且介绍了如何创建和应用线性渐变效果。在本文中,我们将深入探讨这些概念,以帮助你更好地理解和运用它们。 首先,Canvas API提供了两个...

    HTML5 Canvas像素渐变背景动画效果.zip

    线性渐变(Linear Gradient)是从一个方向到另一个方向逐渐变化的颜色,而径向渐变(Radial Gradient)则是从一个圆心向四周扩散的颜色变化。在这个例子中,很可能是使用了线性渐变,因为它更适合创建背景动画的连续...

    Canvas 文本填充线性渐变的使用详解

    在 Canvas 中对文本填充水平或垂直的线性渐变可以轻易实现,而带角度的渐变就复杂很多;就好像下面这样,假设文本矩形宽为 W, 高为 H, 左上角坐标为 X, Y。 猜想与答案 给出两个答案: 正确答案是图二,因为这样得...

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

    `Shader`是Android图形系统中的一个重要接口,用于定义复杂的颜色模式,如线性渐变、径向渐变或位图纹理。对于线性渐变,我们可以使用`LinearGradient`类,指定起始颜色、结束颜色以及渐变的方向。然后,将这个`...

    使用canvas来完成线性渐变和径向渐变的功能的方法示例

    线性渐变:大致分为两步 这里又会使用到canvas的两个新的函数。 第一步 : 使用一个新的函数createLinearGradient( xstart,ystart,xend,yend );var linearGrad = context.createLinearGradient(xstart,ystart,xend,y...

    js+HTML5实现canvas多种颜色渐变效果的方法.docx

    在Canvas API中,我们使用`createLinearGradient()`方法来创建线性渐变对象。以下是一个创建线性渐变的例子: ```javascript var ctx = document.getElementById('myCanvas').getContext('2d'); var grd = ctx....

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

    线性渐变沿着一条直线从一个颜色平滑过渡到另一个颜色,而径向渐变则从一个圆心向外扩散,颜色从中心点逐渐变化到边缘。 jQuery是一个广泛使用的JavaScript库,它简化了DOM操作、事件处理、动画效果和Ajax交互。在...

    JavaScript+html5 canvas绘制渐变区域完整实例

    创建线性渐变,我们需要调用canvas绘图上下文的createLinearGradient方法,该方法需要指定渐变开始点和结束点的坐标。创建了渐变对象之后,我们就可以通过调用addColorStop方法来为渐变定义颜色节点和它们的位置了。...

    微信小程序基于canvas渐变实现的彩虹效果示例

    本文将详细讲解如何使用微信小程序中的canvas元素结合线性渐变和圆形渐变技术,来实现炫酷的彩虹效果。 首先,Canvas API 提供了 `createLinearGradient()` 和 `createCircularGradient()` 两个方法来创建渐变。`...

    Linear_Gradient-Generator

    这个"Linear_Gradient-Generator-master"项目很可能包含了一个完整的JavaScript库或代码片段,用于生成CSS3线性渐变或Canvas线性渐变。用户可以通过调用相关函数并提供参数,轻松地在自己的项目中应用各种定制的线性...

    JavaScript canvas绘制渐变颜色的矩形

    渐变颜色的实现是通过创建一个线性渐变对象,并将其设置为填充样式(fillStyle)。 首先,我们需要获取到`&lt;canvas&gt;`元素并创建2D渲染上下文。这可以通过调用`document.querySelector`来选择canvas元素,然后调用`...

    canvas动画 - 背景线条

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

    HTML5 Canvas渐变色圆形动画特效.rar

    2. 渐变色:在Canvas中,可以创建线性渐变(`createLinearGradient()`)和径向渐变(`createRadialGradient()`)。渐变对象允许你定义多个颜色停止点,从而在图形上创建平滑过渡效果。在本特效中,渐变色可能被用在...

    javascript线性渐变一

    在上述文件中,作者介绍了javascript在线性渐变方面的应用及其发展。首先指出,javascript处理图像的能力其实很强,但由于历史上的浏览器大战和Adobe收购Macromedia,导致了SVG(可缩放矢量图形)技术的发展受限。在...

Global site tag (gtag.js) - Google Analytics