HTML5--Canvas

 * Canvas

   * 绘制图形

     * 绘制文字

       * 方法

         * fillText(text,x,y) - 实心文字

          * text - 绘制的文字内容

          * x和y - 绘制的坐标值

        * strokeText(text,x,y) - 空心文字

       * 属性

         * font - 类似于CSS中的font属性

        * textAlign - 设置文字的水平方向对齐

          * left - 左对齐

          * center - 水平居中

          * right - 右对齐

        * textBaseline - 设置文字的垂直方向对齐

          * top - 顶部对齐

          * middle - (垂直)居中对齐

          * bottom - 底部对齐

          * hanging - 悬挂基线

          * alphabetic - 字母基线

         * 注意

          * 无论是水平方向还是垂直方向对齐,基准线对齐,并不是文字对齐

          * 无论是水平方向还是垂直方向对齐,并不是必要的属性(不使用也是可以的)

     * 阴影效果

       * shadowColor - 设置阴影颜色

       * shadowOffsetX - 设置水平方向阴影

       * shadowOffsetY - 设置垂直方向阴影

       * shadowBlur - 设置阴影的模糊程度

     * 创建路径

       * (标识)方法

         * beginPath() - 表示开始创建路径

        * closePath() - 表示结束创建路径

       * 设置方法

         * rect(x,y,width,height) - 设置矩形形状

          * x和y - 设置矩形的左上角坐标值

          * width和height - 设置矩形的宽度和高度

        * arc(x,y,radius,startAngle,endAngle,direction) - 设置圆形形状

          * x和y - 设置圆形的圆心坐标值

          * radius - 设置圆形的半径

          * startAngle和endAngle - 设置圆形的起始位置

          * direction - 按照顺时针或逆时针绘制

       * 绘制方法

         * stroke() - 绘制轮廓

        * fill() - 绘制填充

     * 绘制线条(直线和折线、多边形) - 创建路径

       * moveTo(x,y) - 设置这条线的起点坐标值

       * lineTo(x,y) - 设置这条线的终点(折点)坐标值

   * 设置线条

     * lineWidth - 设置线条的宽度

       * 默认值为1(px)

     * lineCap - 设置线条端点的形状

       * butt - 默认值,平直

       * round - 圆角

       * square - 正方向

     * lineJoin - 设置两条线焦点的形状

       * miter - 默认值,尖角

       * round - 圆角

       * bevel - 斜角

     * miterLimit - 配合lineJoin使用

       * lineJoin设置为miter,该属性值设置尖角的延伸范围

 * Canvas处理图片

   * 绘制图片

     * drawImage(img,x,y) - 按照图片原大小加载

       * img - 当前加载(绘制)的图片

       * x和y - 绘制图片的坐标值(左上角)

     * drawImage(img,x,y,width,height) - 按照指定大小加载图片

       * img - 当前加载(绘制)的图片

       * x和y - 绘制图片的坐标值(左上角)

       * width和height - 设置绘制图片显示的宽度和高度

     * 注意

       * 必须保证图片加载完毕(onload事件)后,再绘制图片

   * 平铺图片

     * createPattern(img,type)

       * img - 平铺的图片

       * type - 平铺的方式

         * repeat - 平铺

        * no-repeat - 不平铺

        * repeat-x - 水平方向平铺

        * repeat-y - 垂直方向平铺

     * 注意

       * 必须保证图片加载完毕(onload事件)后,再绘制图片

   * 切割图片

     * clip() - 切割(按照创建路径使用)

   * 画布方法

     * scale(x,y) - 缩放(缩小或放大)

       * x - 表示水平方向的缩放

       * y - 表示垂直方向的缩放

       * 参数的取值

         * 如果为1的话,表示不缩放(原大小)

        * 如果小于1的话,表示缩小

        * 如果大于1的话,表示放大

     * translate(x,y) - 重新定位(x,y)

       * x和y - 新的坐标值

       * 注意 - x和y是相对于上次定位坐标值

     * rotate(旋转角度) - 旋转画布

       * 公式为 degrees * Math.PI / 180;

 * Chart.js - Canvas的JS库

   * 作用 - 提供各种图表

   * 如何使用

     * 在HTML页面中引入Chart.js文件

     * 在HTML页面中定义<canvas>元素

     * 在javascript代码中

       * 获取<canvas>元素

       * 创建画布对象

         var context = canvas.getContext("2d");

       * 通过画布对象,创建Chart对象

         var chart = new Chart(context);

       * 利用Chart对象调用API方法

         var data = [];

        chart.Pie(data);

   * 提供6种图表

     * 柱状图 - Bar(data,options)

     * 饼状图 - Pie(data,options)

     * 曲线图 - Line(data,options)

     * 环形图 - Doughnut(data,options)

     * 雷达图 - Radar(data,options)

     * 极地区域图 - PolarArea(data,options)

 * 作业

   * 位置、大小、颜色都随机的圆形

   * 将Chart.js其他4种图表实现一遍

 * 扩展内容

   * 前端Web开发时,建议使用以下几种浏览器

     * Chrome - 两个版本 - 版本更新过于频繁

       * 开发版本

         * 功能较新

        * 不稳定

       * 正式版本

         * 功能较旧

        * 稳定

       * Chrome OS

     * Firefox - 两个版本

       * 开发版本 - (开发)功能多

       * 正式版本

       * FireFox OS - 移动操作系统

         * 开发使用HTML|CSS|JAVASCRIPT

     * Safari

  * 内向问题

    * 面试 - 你认为你的性格,是外向还是内向?

      * 内向 - 沟通能力比较差,团队协作出问题

      * 外向 - 担心工作时,不够专心

    * 良好的沟通能力

      * 程序员 - 形成程序员思维

      * 都是学习和培养

  * Markdown编辑器

    * 支持Markdown文件的扩展名为".md"

  * 前面的内容忘记

    * 个人建议 - 在案例中复习

原文地址:https://www.cnblogs.com/baiyanfeng/p/5042889.html