canvas初探2

2.2 canvas的绘图环境

canvas仅仅只是一个绘图的容器,其内存在一个绘图环境,该环境对象提供了全部的绘图功能。

目前canvas的绘图环境是2d,但canvas规范在着手准备支持其他类型的绘图环境,例如,3d绘图——WebGL。

2d绘图环境

调用2d绘图环境的代码,

canvas.getContext("2d");

2d绘图环境的属性

属性 简介
canvas 指向该绘图环境所属的canvas对象。该属性常见的用途就是获取canvas的宽度和高度,分别调用context.canvas.width与context.canvas.height。
fillstyle 指定该绘图环境在后续的图形填充操作中所使用的颜色、渐变色或图案
font 设定在调用绘图环境对象的fillText()或strokeText()方法时所使用的字体
globalAlpha 全局透明度设定,它可以取0(完全透明)~1.0(完全不透明)之间的值。浏览器会将每个像素的Alpha值与该值相乘,在绘制图像时也是如此。
globalCompsiteOperation 该值决定了浏览器将某个物体绘制在其他物体之上时,所采用的绘制方式。
lineCap 该值告诉浏览器如何绘制线段的端点。可以指定以下3个值中的任意一个:butt、round、square。默认为butt
lineWidth 该值决定了在canvas中绘制的线段的屏幕像素宽度。它必须是一个非负、非无穷的double值。默认为1.0
lineJoin 告诉浏览器在两条线段相交时如何绘制焦点。可取值:bevel、round、miter(默认值)。
miterLimit 告诉浏览器如何绘制miter形式的线段焦点
shadowBlur 该值决定了浏览器该如何延伸阴影效果。值越高,阴影效果延伸的越远。该值不是指阴影的像素长度,而是代表高斯模糊(Gaussian blur)方程式中的参数值。它必须是一个非负非无穷量的double值,默认为0
shadowColor 该值告诉浏览器使用何种颜色绘制阴影。通常使用半透明色作为该属性的值,以便让后面的背景能显示出来
shadowOffsetX 以像素为单位,指定阴影效果的水平方向偏移量
shadowOffsetY 以像素为单位,指定阴影效果的垂直方向偏移量
strokeStyle 指定了对路径进行扫描所用的绘图风格。该值可被设定为某个颜色、渐变色或图案
textAlign 决定了以fillText()或strokeText()方法进行绘制时,所画文本的水平对齐方式
textBaseline 决定了以fillText()或strokeText()方法进行绘制时,所画文本的垂直对齐方式

3d绘图环境——WebGL

它是一种3D绘图标准,这种标准允许把JavaScript和OpenGL ES 2.0结合在一起,让WebGL可以为HTML5 canvas提供硬件3D加速渲染,开发人员可以借助系统显卡在浏览器里更加流畅地展示3D场景和模型,还可以创建复杂的导航和数据视觉化。

由于还是一菜鸟,还没学到WebGL,所以在此就不详述了。

时间: 2024-08-24 05:22:58

canvas初探2的相关文章

canvas初探3:画方画圆

绘制矩形的方法,strokeRect().fillRect()及clearRect(). 方法 描述 strokeRect(double x,double y,double w,double h) 使用如下属性,为指定的矩形描边:● strokeStyle● lineWidth● lineJoin● miterLimit如果宽度(w 参数)或高度(h 参数)有一个为0的话,那么该方法将会分别绘制一条竖线或横线.如果两者都为0,那不会绘制任何东西 fillRect(double x,double

Canvas初探

虽然自己身为后端工程师,但仍然有一颗前端的??,尤其是游戏前端.所以最近在试着学习如何用js编写html5游戏,并看了一个简单的‘俄罗斯方块’的js游戏源码,结论有以下几点. 1.图像效果实现可以基于canvas 和 css 两种,估计多数的js游戏开发引擎也是这样的. 2.Js写些简单好玩的游戏所需要的环境很简单:浏览器,Js文件编辑器,一个发布html静态网页的WebServer. 这里简单说下学习Canvas的一些东东,网上看找了个教程网站:http://javascript.ruanyi

canvas初探(HTML5)

<!DOCTYPE html> <html> <head> <title>first page</title> </head> <body> <!--定义一个canvas--> <canvas id="mycanvas" width="200" height="200"></canvas> </body> <s

PostMessage / html5

PostMessage PostMessage加Key_Event模拟组合键 http://user.qzone.qq.com/14958306/blog/1409662802 PostMessage 组合键解决方案 - 网游闲人的日志 - 网易博客http://blog.163.com/zhi_qi/blog/static/754202052008616101542645/ PostMessage到底能不能发送组合键? - 『 提问交流 』 - AUTOIT CN AutoIt中文论坛|acn

Canvas标签初探

学了一点基础知识,感觉好神奇,全部练习代码 <html> <head> <meta http-equiv=Content-Type content="text/html;charset=utf-8"> <title>Canvas element size: 600 x 300, Canvas drawing surface size: 600 x 300</title> <style> body { backgro

初探canvas

canvas是html5新增的一个专用于图形处理的标签,利用canvas可以实现大部分图形操作canvas的一些基本操作与其他图形编程工具类似,包含:各种形状的边框.路径绘制和填充,画布属性调整,样式调整等:一.canvas环境构建进入html编辑环境即可.在body中添加canvas标签[html] <body> <canvas id="canvas1" width="400px" height="200px"><

Android中Canvas绘图基础详解(附源码下载)

Android中,如果我们想绘制复杂的自定义View或游戏,我们就需要熟悉绘图API.Android通过Canvas类暴露了很多drawXXX方法,我们可以通过这些方法绘制各种各样的图形.Canvas绘图有三个基本要素:Canvas.绘图坐标系以及Paint.Canvas是画布,我们通过Canvas的各种drawXXX方法将图形绘制到Canvas上面,在drawXXX方法中我们需要传入要绘制的图形的坐标形状,还要传入一个画笔Paint.drawXXX方法以及传入其中的坐标决定了要绘制的图形的形状

基于HTML Canvas实现“指纹识别”技术

作者:zhanhailiang 日期:2015-01-31 说明 所谓指纹识别是指为每个设备标识唯一标识符(以下简称UUID).诸如移动原生的APP都可以通过调用相关设备API来获取相应的UUID.但是浏览器内WebAPP受限于运行环境无法直接防部设备API,此时需要通过其它方法来设置UUID. 基于持久化Cookie生成UUID 原理 当用户访问一个网站时,网站可以在用户当前的浏览器Cookie中种入含有UUID的Cookie,并通过这个信息将用户所有行为(浏览了哪些页面?搜索了哪些关键字?对

网页三维地图技术初探

根据是否需要加载地图服务器中的资源将网页三维地图技术分为两大类: 一.需要服务器配合的 1.cesiumjs    网址:http://www.cesiumjs.org 许可证:Apache 2.0 license 可以在调整经纬度,但是不能调整人眼的视角,也就是地球的轴线不能在显示器的平面中旋转. 优点:可以绘制三维数据,圆柱圆锥.卫星 2.openwebglobe 网址:http://www.openwebglobe.org/ 许可证:Open source licenced under M