使用Canvas画布结合JavaScript绘制以下图形,写出源代码和运行截图

作者&投稿:诸唐 (若有异议请与网页底部的电邮联系)
如何使用html5中的canvas标签,画一个圆及一个矩形~

Cavas的英文解释是画布,使用这个Html5的Canvas标签可以创建画布,结合JavaScript可以画出很多图形,我们先以画一个蓝色矩形为例,说明一下这个标签的使用方法,
首先需要建立一个HTML5的网页,方法是:
进入DW后,选择:文件-->新建
在弹出的对话框中选择文件类型为Html5
选择“创建”后,即会形成一个空白网页,选择“文件”--"保存“
起名为:juxing
这个名字可以依据自己的喜好起,但最好名字与网页内容相关,以后好找,另外一个需要注意的是,最好不用汉字。
我们将视图切换为”代码“视图
并将标题改为”画出矩形“
标题也可以依据自己的喜好进行设定,并不影响网页的运行。
Html是标记型语言,各种功能都需要在对应的标签里面才可以,所以我们首先需要添加标签。
我们只需输入<c,就会看到提示列表里出现我们所需要的标签canvas,按下回车键,即可完成输入。
之后,我们每一次按下空格、或输入相关字母,都会有提示列表,我们只需选择所需的项目,按下回车即可,并不需要完整输入字串,可以避免输入时的拼写错误。在本例中,只有引号内的”mycanvas“是需要完整输入的,其他部分的关键字都可以通过提示列表进行输入。
命令为:
只有Canvas标记是不能直接画出图来的,需要配合JavaScript语言,首先需要写出对应的程序标记。
Html语言中的标记都是成对出现的,我们为了避免错误,可以先将标记的起始、标记的结束写好
写好前后标记后,我们就可以在标记中使用JavaScript语言,调用Canvas标记,画出我们所需要图形了,方法是:
var canvas=document.getElementById('mycavas');
将变量canvas,赋值为我们之前在html中定义的画布”mycanvas,以方便JavaScript调用
var ctxt=canvas.getContext('2d');
将变量 ctxt赋值为利用刚定义的“canvas”返回的二维绘图环境对象,使用这个对象就可以绘图了
使用fillStyle方法设置颜色,是十六进制表示的三原色分量范围是从“#000000”至“FFFFFF”
ctx.fillStyle='#0066cc';
我们将颜色设置为一种蓝色,这个颜色也可以随自己喜好 更改。
ctx.fillRect(50,50,400,200);
填充的起始位置设置为(50,50),矩形宽度为400,高度为200
选择在浏览器中浏览后,即可看到我们所需要的矩形

使用JavaScript将图片拷贝进画布
要想将图片放入画布里,我们使用canvas元素的drawImage方法:
// Converts image to canvas; returns new canvas element
function convertImageToCanvas(image) {
var canvas = document.createElement("canvas");
canvas.width = image.width;
canvas.height = image.height;
canvas.getContext("2d").drawImage(image, 0, 0);

return canvas;
}

这里的0, 0参数画布上的坐标点,图片将会拷贝到这个地方。
用JavaScript将画布保持成图片格式
如果你的画布上的作品已经完成,你可以用下面简单的方法将canvas数据转换成图片格式:
// Converts canvas to an image
function convertCanvasToImage(canvas) {
var image = new Image();
image.src = canvas.toDataURL("image/png");
return image;
}

这段代码就能神奇的将canvas转变成PNG格式!
这些在图片和画布之间转换的技术可能比你想象的要简单的多。在以后的文章里,我会写一些将这些图片做不同滤镜处理的技术。



望采纳!!!!

<!DOCTYPE html>
<html>
<head>
</head>
<body align="center">
    <canvas id="drawing" width="400" height="400">A drawing of someing!</canvas>
    <script type="text/javascript">
        //绘制饼图
        var drawCircle = function(canvasId, data_arr, color_arr){
            var drawing = document.getElementById(canvasId);
            if(drawing.getContext) {
                var context = drawing.getContext('2d');
                var radius = drawing.height/2 -20,//半径
                    ox = radius +20, oy = radius +20;//圆心
                var width = 30, height = 10, //图例宽高
                    posX = ox * 2 +20, posY = 30;//图例位置
                var textX = posX + width + 5, textY = posY + 10;//文本位置
                var startAngle = 0, endAngle = 0;//起始、结束弧度
                context.strokeStyle = 'Purple';
                context.lineWidth = 3;
                context.strokeRect(0, 0, drawing.width, drawing.height);
                for(var i=0, len=data_arr.length; i<len; i++) {
                    //绘制饼图
                    endAngle += data_arr[i] * 2*Math.PI;
                    context.fillStyle = color_arr[i];
                    context.beginPath();
                    context.moveTo(ox, oy);
                    context.arc(ox, oy, radius, startAngle, endAngle, false);
                    context.closePath();
                    context.fill();
                    startAngle = endAngle;
                }

            }
        };

        var init = function(){
            var data_arr = [0.05, 0.25, 0.6, 0.1],
                color_arr = ['#00FF21', '#FFAA00', '#00AABB', '#FF4400'];
            drawCircle('drawing', data_arr, color_arr);
        };

        init();

    </script>
</body>
</html>


jmGraph 支持小程序的canvas库
https://github.com/jiamao/jmgraph
可以试下这个库,每个方块都可以做成一个对象,像操作dom一样。


如何在 HTML5 画布上绘图
步骤1: 在 HTML 中设置画布,创建一个引用,并获取上下文对象 画布在 HTML 中通过 <canvas> 标签定义。与其他标签类似,<canvas> 的属性(如宽度和高度)作为特性输入。假设你希望创建一个宽 500 像素、高 500 像素的画布,并将其命名为“can1”,稍后在 JavaScript 中引用它时将用到。 在HTML 文档中输入 <canvas...

canvas的使用 <canvas> 标记绘图
大多数 Canvas 绘图 API 都没有定义在 <canvas> 元素本身上,而是定义在通过画布的getContext() 方法获得的一个“绘图环境”对象上。Canvas API 也使用了路径的表示法。但是,路径由一系列的方法调用来定义,而不是描述为字母和数字的字符串,比如调用 beginPath() 和 arc() 方法。一旦定义了路径,...

创建ugui控件后unity系统会自动创建canvas画布和
在 Unity 3D 中创建的三维物体是Transform,而 UI 控件的Rect Transform 组件是UI控件的矩形方位,其中的PosX、PosY、PosZ 指的是 UI 控件在相应轴上的偏移量。UI 控件除了Rect Transform 组件外,还有一个Canvas Renderer(画布渲染)组件。UGUI Canvas 画布 Canvas画布是摆放所有 UI 元素的区域,在...

如何用Canvas绘制多种图形
使用Canvas说了这么多,Canvas 究竟是个啥?英文中 Canvas 的意思是“画布”,不过这里说的 Canvas 是 HTML5 中新出的一个元素,开发者可以在上面绘制一系列图形。Canvas 在 HTML 文件中的写法很简单:<canvas id="canvas" width="宽度" height="高度"><\/canvas>其中id 属性是所有 HTML 元素都可以用的,Canvas ...

Html5中Canvas画布:我设置画布大小为:100*100px,但是用浏览器预览时却...
亲:给canvas设置长宽,要这样写:<canvas width="100" height="100"><\/canvas> 把#nh{width:100;height:100;}这两个css设置去掉吧 温馨提示:1.还有一点就是,设置css时,长宽需要给个单位,如:#nh{width:100px; height:100px;} 2.js语句,后头加上分号,养成好习惯 ...

canvas简介以及常用性能优化
HTML5 的 Canvas 元素使用 JavaScript 在网页上绘制图像。 画布是一个矩形区域,您可以控制其每一像素。 Canvas 拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。 Canvas 是逐像素进行渲染的。 在 Canvas 中,一旦图形被绘制完成,它就不会继续得到浏览器的关注。如果其位置发生变化...

画布英文
canvas 基本解释:n. 帆布;油画(布)vt. 用帆布覆盖 adj. 帆布制的 canvas 变化形式:复数: canvases 第三人称单数: canvases 过去式: canvased 过去分词: canvased 现在分词: canvasing canvas 用法和例句:The blank canvas is often painted with unfounded suspicions .这块空白的画布就免...

使用Canvas画布结合JavaScript绘制以下图形,写出源代码和运行截图_百 ...
<!DOCTYPE html><html><head><\/head><body align="center"> <canvas id="drawing" width="400" height="400">A drawing of someing!<\/canvas> <script type="text\/javascript"> \/\/绘制饼图 var drawCircle = function(canvasId, data_arr, color_arr){ var drawing = docu...

使用Canvas实现贝塞尔曲线显示以及控制
贝塞尔曲线 场景:创建简易的绘图工具,实现控制画布上的四个锚点的拖拽修改已经绘制的曲线图,通过注释实时显示锚点的具体实时坐标,并通过反色清楚的显示控制点的位置 要求: 1. 创建一个512*512的canvas画布 2. 在该画布上任意创建四个锚点,使用贝塞尔曲线进行连接 3. 可在画布上自由拖拽上面...

canvas制作海报怎么传到微信-支付宝&微信小程序Canvas生成图片_百度...
canvas微信小程序如何导入个人微信 在小程序里,我们知道分享功能只有分享到微信好友或者群,无法直接分享到朋友圈,但是我们可以生成分享图片,然后保存到相册,在发布朋友圈从相册选择图片,所以关键是如何生成需要的图片,使用canvas画布即可实现。canvas是微信小程序里的原生组件,相关属性及注意事项可参考小程序官方...

杜尔伯特蒙古族自治县13390262027: 如何使用html5中的canvas标签,画一个圆及一个矩形 -
芷琪复方: Cavas的英文解释是画布,使用这个Html5的Canvas标签可以创建画布,结合JavaScript可以画出很多图形,我们先以画一个蓝色矩形为例,说明一下这个标签的使用方法, 首先需要建立一个HTML5的网页,方法是: 进入DW后,选择:文件-->...

杜尔伯特蒙古族自治县13390262027: Java应用程序中定义了Canvas然后怎么在里面绘图 -
芷琪复方: <canvas id="myCanvas"></canvas><script type="text/javascript"> var canvas=document.getElementById('myCanvas'); var ctx=canvas.getContext('2d'); ctx.fillStyle='#FF0000'; ctx.fillRect(0,0,80,100);</script> 用js画

杜尔伯特蒙古族自治县13390262027: Java中如何在Canvas对象中画图? -
芷琪复方: 晚上给你代码,你也可以给个邮件,给你发一个复要点的画图小程序

杜尔伯特蒙古族自治县13390262027: 如何用Canvas绘制多种图形 -
芷琪复方: HTML5 的标准已经出来好久了,但是似乎其中的 Canvas 现在并没有在太多的地方用到.一个很重要的原因是,Canvas 的标准还没有完全确定,不适合大规模用在生产环境.但是,Canvas 的优点也是很明显的,例如在绘制含有大量元素的图...

杜尔伯特蒙古族自治县13390262027: java 用canvas或其他控件画出image -
芷琪复方: 图片要预先加载的 再在绘图的事件中,绘上去

杜尔伯特蒙古族自治县13390262027: java canvas画围棋棋盘 -
芷琪复方: 展开全部/*首先,应用程序必须为 Canvas 类创建子类,以获得有用的功能(如创建自定义组件).必须重写 paint 方法,以便在 canvas 上执行自定义图形. 以下是代码*/ import java.awt.Canvas; import java.awt.Font; import javax.swing.*; public ...

杜尔伯特蒙古族自治县13390262027: html5用canvas怎么实现动画效果 -
芷琪复方: 方法/步骤 素材准备,基本框架的建立. 这里我们让一个有字的图片从左到右运动起来. 1.素材:图片一张. 2.框架的建立(如下图)3.将图片素材引入网页. 4.定义canvas标签,获取canvas的上下文. 5.定义一个画图片的函数,使用canavs绘图API里面的drawImage来完成.6.写一个更新的函数,因为我们要让他动起来,所以每时刻绘制的地方都不一样.注意:这儿要用clearRect,这个函数,主要是为了清空画布.7.写定时函数,每隔0.2秒就更新一次,重新绘制.我们来看看最终的效果和所有代码吧!

杜尔伯特蒙古族自治县13390262027: java怎么传canvas上画出的图像 -
芷琪复方: 准备好图片后,调用 repaint 在 public void paint(Graphics g) 中画图

杜尔伯特蒙古族自治县13390262027: 微信小程序的canvas画布功能怎么用 -
芷琪复方: 微信小程序中有一个功能是canvas画布功能,那么这个功能该怎么用呢?下面的教程就是关于微信小程序的canvas画布功能怎么用的,一起来看看吧.微信小程序中有一个功能是canvas画布功能,那么这个功能该怎么用呢?下面的教程就是关于微信小程序的canvas画布功能怎么用的,一起来看看吧.canvas画布,你可以理解为有一张白布,你可以在画布上画出不同形状、颜色、粗细的图形.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网