| 函数(方法)名 | 代码示例 | | 附注: 1.)所有函数中使用到的数字参数必须为 整数,而不能为含有小数的数字(浮点数)、字符或者字符串。举个例子,输入的值永远是字符串,而通过 JavaScript 计算而来的可能是浮点数。可以通过 JavaScript 的 parseInt() 或者 Math.round() 方法将参数转换为整数。 例如: jg.setStroke(parseInt(document.MyForm.Linewidth.value)); 2.)考虑到坐标是在像素之间,而不是在其之上,因此画笔将在给定坐标的右下方停止。 | setColor("#HexColor"); 指定画“笔”的颜色。一旦设定,之后的每次绘制都会使用该颜色,直到再次调用 setColor() 指定别的颜色。使用的值必须用引号("")包起来,并且形如 "#rrggbb"(就像在 HTML 中使用的那样)。也可以使用 HTML 中定义的颜色名字(例如 "maroon") | jg.setColor("#ff0000"); 等同于 jg.setColor("red"); | setStroke(Number); 指定画“笔”的粗细和形状。一旦设定,之后的每次绘制都会使用该设置,直到再次调用 setStroke() 指定别的设置。默认的厚度为 1 px。 如果要使用点线(虚线),调用 setStroke() 方法时使用 Stroke.DOTTED 参数。使用该参数后,画笔的厚度将始终为 1 像素。 | jg.setStroke(3); 或者 jg.setStroke(Stroke.DOTTED); | drawLine(X1, Y1, X2, Y2); 从第一对坐标到第二对坐标画一条线。线的厚度为 1 px 或最近通过 setStroke() 方法指定的厚度。 | jg.drawLine(20,50,453,40); | drawPolyline(Xpoints, Ypoints); 一组线段连接起来形成的拆线。Xpoints 和 Ypoints 是用来指定 x 和 y 坐标的数组,如下所示: var Xpoints = new Array(x1,x2,x3,x4,x5); var YPoints = new Array(y1,y2,y3,y4,y5); 你也可以遵循 JavaScript 的规则使用其他名字的变量来代替 Xpoints 和 Ypoints 提供参数。 线的厚度为 1 px 或最近通过 setStroke() 方法指定的厚度。 | var Xpoints = new Array(10,85,93,60); var YPoints = new Array(50,10,105,87); jg.drawPolyline(Xpoints,Ypoints); | drawRect(X, Y, width, height); 一个空心的矩形。X 和 Y 指定了左上角的坐标。线的厚度为 1 px 或最近通过 setStroke() 方法指定的厚度。 | jg.drawRect(20,50,70,140); | fillRect(X, Y, width, height); 一个填充了的矩形。X 和 Y 指定了左上角的坐标。 | jg.fillRect(20,50,453,40); | drawPolygon(Xpoints, Ypoints); 绘制一个空心的多边形。Xpoints 和 Ypoints 数组用来指定多边形每个顶点的 x 和 y 坐标,如下所示: var Xpoints = new Array(x1,x2,x3,x4,x5); var Ypoints = new Array(y1,y2,y3,y4,y5); 即使第一个顶点和最后一个顶点并不是同一个,多边形也会自动闭合。 线的厚度为 1 px 或最近通过 setStroke() 方法指定的厚度。 | var Xpoints = new Array(10,85,93,60); var Ypoints = new Array(50,10,105,87); jg.drawPolygon(Xpoints, Ypoints); 你也可以遵循 JavaScript 的规则使用其他名字的变量来代替 Xpoints 和 Ypoints 提供参数。 | fillPolygon(Xpoints, Ypoints); 绘制一个填充了的多边形。参数与 drawPolygon() 方法相同 | jg.fillPolygon(new Array(10,85,93,60), new Array(50,10,105,87)); | drawEllipse(X, Y, width, height); 绘制一个空心的椭圆。参数指定的是被椭圆包围的矩形,X 和 Y 指定的是矩形的左上角,而不是椭圆的中心。线的厚度为 1 px 或最近通过 setStroke() 方法指定的厚度。 | jg.drawEllipse(20,50,70,140); 或 jg.drawOval(20,50,70,140); | fillEllipse(X, Y, width, height); 绘制一个填充了的椭圆。参数指定的是被椭圆包围的矩形,X 和 Y 指定的是矩形的左上角,而不是椭圆的中心。 | jg.fillEllipse(20,50,71,141); 或 jg.fillOval(20,50,71,141); | fillArc(X, Y, width, height, start-angle, end-angle); 绘制一个饼形图。开始角度和结束角度可以是整数或带小数点的值。与 drawEllipse() 和 fillEllipse() 方法类似,X 和 Y 指定的是矩形的左上角。 | jg.fillArc(20,20,41,12,270.0,220.0); | setFont("font-family", "size+unit", Style); 这个方法可以在调用 drawString() 方法之前用来指定文字的字体、大小和样式。参数的值与在 HTML 中使用的相同,而且必须用引号("")包起来。 可用的文字样式有: Font.PLAIN 表示普通样式(没有加粗,没有斜体) Font.BOLD 表示粗体 Font.ITALIC 表示斜体 Font.ITALIC_BOLD 或 Font.BOLD_ITALIC 表示上述两者的组合 | 示例:参见下面的 drawString() | drawString("Text", X, Y); 在指定的 X 和 Y 坐标的位置输出文本。与 Java 不同,这些坐标指定的是第一行文本的左上角。传递给 drawString() 方法的文本必须用引号("")包起来。 给定文本中未经过转码的 HTML 标签将会被正常解释。例如,"Some Text<br>more Text" 会导致换行。 | jg.setFont("arial","15px",Font.ITALIC_BOLD); jg.drawString("Some Text",20,50); | drawStringRect("Text", X, Y, Width, Alignment); 与 drawString 相同。允许设定显示文本矩形的宽度,以及指定文本水平对齐方式。文本对齐的值必须为字符串,且为下列之一: "left"、"center"、"right" 或 "justify"。 | jg.setFont("verdana","11px",Font.BOLD); jg.drawStringRect("Text",20,50,300,"right"); | drawImage("src", X, Y, width, height); 在指定的位置绘制图片。"src" 参数用来指定图片路径,width 和 height 参数允许任意拉伸图片 另外 drawImage() 还可以接受第六个参数用来在 image 标签中插入一个事件处理器。例如: jg.drawImage('anImg.jpg',8,5,95,70,'onmouseover="YourFunc()"'); | jg.drawImage("friendlyDog.jpg", 20,50,100,150); | paint(); 必须调用此方法在在页面内绘制图形。为了性能的优化,应避免在短时间内进行不必要的调用。 应避免以下情况的出现: jg.drawEllipse(0, 0, 100, 100); jg.paint(); jg.drawLine(200, 10, 400, 40); jg.paint(); ... 下列情况将会更快: jg.drawEllipse(0, 0, 100, 100); jg.drawLine(200, 10, 400, 40); /*...更多绘制操作... */ jg.paint(); | jg.paint(); | clear(); 所有通过 Graphics JavaScript 类库创建的内容(特指画布里的内容)都会被删除。画布中默认的内容(非脚本创建的内容)将不会发生变化,即不会被更改,也不会被删除。 | jg.clear(); 所有在 "myCanvas" 中通过脚本创建的内容都会被删除(假设 "myCanvas" 是创建 'jg' 对象时指定的 DIV) | setPrintable(true); 默认的情况下,绘制形状是行不通的,因为浏览器的默认设置会绘制时阻止背景颜色。通过调用 setPrintable() 方法时使用 true 参数可以允许 wz_jsgraphics.js 绘制图形。 (至少是 Mozilla/Netscape 6+ 和 IE)。当然,在渲染速度上会有些许减少(大概要慢 10% 到 25% 左右)。 | jg.setPrintable(false); 参数 false 将设置 wz_jsgraphics.js 为不可绘制模式。受益与此,渲染速度将有略微提升。 | |