热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

html5--5-13渐变色

html5--5-13渐变色学习要点掌握渐变色的绘制方法渐变色绘制方法createLinearGradient()创建线性渐变crea

html5--5-13 渐变色

 

学习要点

    掌握渐变色的绘制方法

渐变色绘制方法

    1. createLinearGradient() 创建线性渐变
      • createLinearGradient(x1,y1,x2,y2)---颜色渐变的起始坐标和终点坐标
      • addColorStop(位置,"颜色值")---0表示起点...插入点...1表示终点,配置颜色停止点
    2. createRadialGradient(x1,y1,r1,x2,y2,r2,) 创建放射状/环形的渐变
    3. ....


文字的绘制方法

    1. strokeText("文字",x,y,maxWith) 绘制(描边)空心文字
    2. fillText("文字",x,y,maxWith) 绘制实心
    3. 字体样式:fOnt="大小 字体 ..."


矩形的绘制方法

    1. rect(x,y,w,h)创建一个矩形
    2. strokeRect(x,y,w,hx,y,w,h) 绘制矩形(无填充)
    3. fillRect(x,y,w,h) 绘制"被填充"的矩形
    4. stroke() 绘制已定义的路径
    5. fill()绘制一个实心的(带填充的图形)


Canvas的路径方法

    1. moveTo() 定义绘制路径的起点(在直线中就是定义直线的起点)
    2. lineTo() 添加一个新点,(在我们的直线案例中就是定义直线的终点,但是后边继续绘制的话,它就变成中间点)
    3. stroke() 绘制已定义的路径
    4. fill()绘制一个实心的(带填充的图形)
    5. beginPath() 用来创建新的路径
    6. closePath() 从当前点回到起始点的来封闭路径
    7. arc(x,y,r,开始角度,结束角度,true/false) :创建圆弧/曲线(用于创建圆形或部分圆)


绘制直线段流程:

    1. 在HTML5文档中添加canvas元素,并且设置的宽高和ID
    2. 在canvas元素中添加提示语句,让不支持canvas的浏览器能够显示友好的提示语句
    3. 添加script元素
    4. 获取画布/设置绘图绘图环境:此为固定语句,暂时记住、了解即可,后续课程还会继续讲解
      1. 指定线宽:lineWidth= 数值
      2. 指定颜色:strokeStyle=颜色值(只适用用轮廓,线段等,填充色用:fillStyle=颜色值
    5. 设定起点:moveTo(x坐标,y坐标)
    6. 设定终点:lineTo(x坐标,y坐标)
    7. 开始绘制:stroke()


绘制矩形流程:

    1. 在HTML5文档中添加canvas元素,并且设置的宽高和ID
    2. 在canvas元素中添加提示语句,让不支持canvas的浏览器能够显示友好的提示语句
    3. 添加script元素
    4. 获取画布/设置绘图绘图环境:此为固定语句,暂时记住、了解即可,后续课程还会继续讲解
      • 绘制空心矩形
        1. 指定线宽:lineWidth= 数值
        2. 指定轮廓颜色:strokeStyle=颜色值(只适用用轮廓,线段等,填充色用:fillStyle=颜色值
        3. 设定矩形的基本参数:strokeRect(x,y;width,height)
      • 绘制填充矩形
        1. 指定填充颜色:fillStyle=颜色值(只适用用轮廓,线段等,填充色用:fillStyle=颜色值
        2. 设定矩形的基本参数:fillRect(x,y;width,height)


绘制圆

  1. 在HTML5文档中添加canvas元素,并且设置的宽高和ID
  2. 在canvas元素中添加提示语句
  3. 添加script元素
  4. 获取画布/设置绘图绘图环境
  5. 指定线宽:lineWidth= 数值
  6. 指定颜色:fill/strokeStyle=颜色值(只适用用轮廓,线段等,填充色用:fillStyle=颜色值
  7. 设定圆的基本参数:
    • 圆心的坐标:x,y
    • 圆的半径:数值
    • 起始弧度和终止弧度:角度值1,角度值2
    • 绘制方向:true(逆时针)/false(顺时针)
  8. 开始绘制:stroke()/fill()

 

实例

 1 doctype html>
 2 <html>
 3 <head>
 4 <meta charset="utf-8">
 5 <title>无标题文档title>
 6 head>
 7 
 8 <body>
 9 body>
10 html>DOCTYPE html>
11 <html lang="en">
12 <head>
13     <meta charset="UTF-8">
14     <title>Documenttitle>
15     <style type="text/css">
16         canvas{background: #A9A9A0}
17     style>
18 head>
19 <body>
20     <canvas id="mycanvas" width="500px" height="300">
21         您的浏览器暂不支持HTML5的canvas元素!!
22     canvas>
23     <script type="text/Javascript">
24         //定义变量获取画布DOM
25         var canvas=document.getElementById("mycanvas");
26         //设置绘画环境为2d
27         var context=canvas.getContext("2d");
28 
29         //渐变色
30         //1、设置渐变色
31         var gradient=context.createRadialGradient(50,150,5,470,150,100);
32         //添加渐变色中的颜色
33         gradient.addColorStop(0,"#000000");
34         gradient.addColorStop(0.2,"#FF0000");
35         gradient.addColorStop(0.4,"#00FF00");
36         gradient.addColorStop(0.6,"#0000FF");
37         gradient.addColorStop(0.8,"#FF00FF");
38         gradient.addColorStop(1,"#FFFFFF");
39         //2、用设置好的渐变色来填充我们的日常图形就好
40         context.fillStyle=gradient;
41         context.fillRect(50,50,400,230);
42 
43         //给扇子加渐变色
44     script>
45 
46     <canvas id="mycanvas2" width="500px" height="300" >
47         您的浏览器暂不支持HTML5的canvas元素!!
48     canvas>
49     <script type="text/Javascript">
50         //定义变量获取画布DOM
51         var canvas=document.getElementById("mycanvas2");
52         //设置绘画环境为2d
53         var context=canvas.getContext("2d");
54 
55         //渐变色
56         //1、设置渐变色
57         var gradient=context.createRadialGradient(250,150,10,250,150,100);
58         //添加渐变色中的颜色
59         gradient.addColorStop(0,"#000000");
60         gradient.addColorStop(0.2,"#FF0000");
61         gradient.addColorStop(0.4,"#00FF00");
62         gradient.addColorStop(0.6,"#0000FF");
63         gradient.addColorStop(0.8,"#FF00FF");
64         gradient.addColorStop(1,"#FFFFFF");
65         //2、用设置好的渐变色来填充我们的日常图形就好
66         context.fillStyle=gradient;
67         context.arc(250,150,100,0,Math.PI*2);
68         context.fill();
69         //给扇子加渐变色
70     script>
71 body>
72 html>
View Code

 


推荐阅读
  • 在本文中,我将向你介绍如何使用HTML5自定义数据属性。我还将向你介绍一些开发人员在工作中经常使用的优秀实例。为什么需要自定义数据属性?很多时候我们需要存储一些与不同DOM元素相关联的 ... [详细]
  • 如何在HTML中获取鼠标的当前位置
    本文介绍了在HTML中获取鼠标当前位置的三种方法,分别是相对于屏幕的位置、相对于窗口的位置以及考虑了页面滚动因素的位置。通过这些方法可以准确获取鼠标的坐标信息。 ... [详细]
  • JavaScript和HTML之间的交互是经由过程事宜完成的。事宜:文档或浏览器窗口中发作的一些特定的交互霎时。能够运用侦听器(或处置惩罚递次来预订事宜),以便事宜发作时实行相应的 ... [详细]
  • 本文总结了在编写JS代码时,不同浏览器间的兼容性差异,并提供了相应的解决方法。其中包括阻止默认事件的代码示例和猎取兄弟节点的函数。这些方法可以帮助开发者在不同浏览器上实现一致的功能。 ... [详细]
  •   html5中template用法,html5标签  一、HTML5template元素初面  模板元素,基本上可以确定 ... [详细]
  • 示例代码托管在:http:www.github.comdashnowordsblogs博客园地点:《大史住在大前端》原创博文目次华为云社区地点:【你要的前端打怪晋级指南】[TOC] ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 本文介绍了绕过WAF的XSS检测机制的方法,包括确定payload结构、测试和混淆。同时提出了一种构建XSS payload的方法,该payload与安全机制使用的正则表达式不匹配。通过清理用户输入、转义输出、使用文档对象模型(DOM)接收器和源、实施适当的跨域资源共享(CORS)策略和其他安全策略,可以有效阻止XSS漏洞。但是,WAF或自定义过滤器仍然被广泛使用来增加安全性。本文的方法可以绕过这种安全机制,构建与正则表达式不匹配的XSS payload。 ... [详细]
  • React基础篇一 - JSX语法扩展与使用
    本文介绍了React基础篇一中的JSX语法扩展与使用。JSX是一种JavaScript的语法扩展,用于描述React中的用户界面。文章详细介绍了在JSX中使用表达式的方法,并给出了一个示例代码。最后,提到了JSX在编译后会被转化为普通的JavaScript对象。 ... [详细]
  • Android实战——jsoup实现网络爬虫,糗事百科项目的起步
    本文介绍了Android实战中使用jsoup实现网络爬虫的方法,以糗事百科项目为例。对于初学者来说,数据源的缺乏是做项目的最大烦恼之一。本文讲述了如何使用网络爬虫获取数据,并以糗事百科作为练手项目。同时,提到了使用jsoup需要结合前端基础知识,以及如果学过JS的话可以更轻松地使用该框架。 ... [详细]
  • 第8章 使用外部和内部链接
    8.1使用web地址LearnAboutafricanelephants. ... [详细]
  • 前端监控数据网络(要求阻拦)
    所谓web,纵然你我素未谋面,便知志趣相投;深居简出,亦知天下之大。01—为何阻拦要求如今的web运用,大都是经由过程要求(http)去猎取资本,拿到资本后再显现给用户,一个页面中 ... [详细]
  • 新版本在线体验地点已上线,迎接体验?—2017-01-14喜好就Star,不只是Fork;想要分享的结果才是驱动力,而手艺仅仅是一种要领。TP-adminTP-admin即基于Th ... [详细]
  • Iamtryingtoachievethearrowpointingupwards..iamtryingtoachieveitinmycssiamnotabl ... [详细]
  • HTML5-web通信之 Cross-Document Messaging(XDM) & Channel Messaging
    在学习跨域,转载几篇好的博客,以后有深刻理解再自己总结吧。HTML5web通信(跨文档通信通道通信)简介byzhangxinxufromhttp:www.zhang ... [详细]
author-avatar
prince小乀朱
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有