goback
月期刊咨询网
当前位置:首页>>计算机网络论文>>正文

计算机论文辨析Canvas绘图机制的优劣


所属栏目:计算机网络论文
发布时间:2014-09-23 13:19:41  更新时间:2014-09-23 13:52:40

已签订领域:化学工程/制药,医学题目:**作为抗癌剂***催化剂**取代苯丙***SCI四区 直击了解更多选题

已签订领域:环境科学-公共卫生题目:用**电***生物传感器**癌症**SCI二区 直击了解更多选题

已签订领域:环境科学-公共卫生题目:**氧化石墨烯纳米***材料的生物传感器***结肠癌生物**癌胚****SCI二区 直击了解更多选题

已签订领域:环境科学-公共卫生题目:聚合物纳米***a-硫辛酸***在神经炎症***应用***临床分析SCI二区 直击了解更多选题

已签订领域:计算机视觉/遥感/智能驾驶/汽车题目:**深度学习***高分辨率遥感***车辆检***SCI三区 直击了解更多选题

已签订领域:企业管理题目:社会交流***领导***倾向***方向SSCI,SCI三区,二区 直击了解更多选题

已签订领域:企业管理题目:**中小企业社交媒体****可持续绩效***因素探析SSCI,SCI三区,二区 直击了解更多选题

已签订领域:环境科学,公共卫生题目:利用硫氨酸***石墨烯纳米***电化学***传感器实现癌胚抗原***SCI二区 直击了解更多选题

已签订领域:环境科学,公共卫生题目:基于抗***纳米复合***高性能***早起癌症诊断***SCI二区 直击了解更多选题

已签订领域:经济,能源题目:***政治冲突****绿色金融、金融**、气***化***SCI四区 直击了解更多选题

已签订领域:经济,能源题目:冲***中能源不安全对***和环境***SCI四区 直击了解更多选题

已签订领域:教育题目:大学生***社交媒体***成绩影响***SSCI三区 直击了解更多选题

已签订领域:教育题目:巴基斯坦***学习实施的***的**SSCI二区 直击了解更多选题

已签订领域:教育题目:大学生对****下网络教学**思***SSCI二区 直击了解更多选题

已签订领域:教育题目:**教师和学生对影响***医疗**效果的****看法SSCI三区 直击了解更多选题

已签订领域:计量经济学题目:**货币、黄金、**和美国***的波动***相互依赖性:**数据的分析SSCI一区 直击了解更多选题

已签订领域:计量经济学题目:东南亚***内**趋同***中等收入**:新**的***SSCI二区 直击了解更多选题

已签订领域:建筑,历史题目:历史景点在***旅游发***中的***影响**(**研究:**历史***)SSCI,SCI一区 直击了解更多选题

已签订领域:领导力,管理题目:量化**领导对角色绩效***响:**冲突与工作自主性***作用SCI二区 直击了解更多选题

已签订领域:信息技术,教育题目:数字***环境对学生学习成绩***:游戏**和***现实在教育***作用SSCI四区 直击了解更多选题

已签订领域:信息技术,教育题目:信息技术***续决策之间的***:创新***识的**作用SSCI二区 直击了解更多选题

已签订领域:信息技术,教育题目:课程**对大学生***发展的影响:学习习惯和***的***作用SSCI一区 直击了解更多选题

已签订领域:信息技术,教育题目:信息技术***与可持续决策**:高等***学生认知***作用SSCI二区 直击了解更多选题

已签订领域:计算机,英语教学题目:英语****学**与人工智能****学习SCI三区 直击了解更多选题

已签订领域:计算机,音乐题目:评价**和音乐**对学生成绩***的影响SCI三区 直击了解更多选题

已签订领域:人体工程,心理学题目:基于预先处理模型***模式人体工程学***女生肌肉骨骼***预防行为*** 直击了解更多选题

已签订领域:人体工程,心理学题目:制定一个***人体工程学**,以识别、优先考虑***职业压力源的*** 直击了解更多选题

已签订领域:人体工程,心理学题目:多重工作**压力和工作***:***工效学方法的混合方法*** 直击了解更多选题

已签订领域:数学,经济题目:数学模型***结构调整和经济转型****研究 直击了解更多选题

已签订领域:数学,经济题目:***时间**数学模型在***媒体营销**中的应用*** 直击了解更多选题

已签订领域:数学,经济题目:***时间**模型在***物流运**能力***研究 直击了解更多选题

已签订领域:数学,经济题目:碳****经济的数学模型****研究 直击了解更多选题

已签订领域:农村经济题目:农****社区**发展***分**SCI四区 直击了解更多选题

已签订领域:农村经济题目:创业***对乡村****发展的****SCI四区 直击了解更多选题

已签订领域:农村经济题目:农村创业****的空间*****究SCI四区 直击了解更多选题

已签订领域:医学,电化学题目:纳米颗粒*****及其在癌症****和重金属*****检测中的应用SCI三区 直击了解更多选题

已签订领域:医学,电化学题目:基于*****前列腺癌药物氟****检测方法的*****腺癌治疗SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:气海***********金纳米颗粒的新型****************粘土及其对胃癌********************抗癌SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:基于抗***********GCE纳米***********材料的高性能*******************早期癌症SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:用******电化学生物传感器*****癌症***************SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:基于*****石墨烯纳米****材料的生物传感******用于测定结肠*****生物*****SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:聚合***纳米复合电极*****疏辛酸电化学检测*********SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:利用****酸/**糖**石墨烯纳米复合修饰的电化学*****SCI二区 直击了解更多选题

已签订领域:环境能源,绿色投资题目:环境能源、绿色投资、城市化和环境类方向SCI三区 直击了解更多选题

已签订领域:计算机,英语教学题目:英语教学**人工智能***习SCI 直击了解更多选题

已签订领域:计算机,音乐题目:评价**和音乐形式*学生***影响SCI三区 直击了解更多选题

已签订领域:经济,绿色投资题目:***能源效率***化之间的***SCI三区 直击了解更多选题

已签订领域:经济政策题目:***阐明**印度经济***的关系SCI三区 直击了解更多选题

已签订领域:经济,金融题目:***国家的能源***重***SCI 直击了解更多选题

已签订领域:经济,金融投资题目:***融新之间***直接投资***SCI三区 直击了解更多选题

已签订领域:经济,数学,统计学,管理学题目:非***想重限制下***袭评价***SSCI四区 直击了解更多选题

已签订领域:经济,数字,管理学题目:基干***生产系统***SSCI四区 直击了解更多选题

已签订领域:农业,土壤科学题目:不同***有机覆盖***养分循环SSCI 直击了解更多选题

已签订领域:电力与能源系统,管理题目:pv***氢定价的***随***型稀SSCI,SCI二区 直击了解更多选题

已签订领域:建筑规划,计算机题目:使用***因子分析法***可持续***SCI三区 直击了解更多选题

已签订领域:工程技术,纺织工程,材料科学题目:甘***淀粉酶的提取***退浆中的应用SCI四区 直击了解更多选题

已签订领域:渔业,鱼类生理学题目:饲料***镉毒性的交互***生长***病理学***SCI二区 直击了解更多选题

已签订领域:渔业,鱼类生理学题目:****鱼水源***起的生******SCI三区 直击了解更多选题

已签订领域:金融,环境经济题目:*****预算在能效、绿色***的作用SCI 直击了解更多选题

已签订领域:应用数学/计算物理题目:***非线性库***自相位调制***SCI三区 直击了解更多选题

已签订领域:计算机,医学检测题目:***COVID-19***力***算法***决策SCI三区 直击了解更多选题

已签订领域:计算机,物联网,智慧城市题目:基于***物联网****算法SCI三区 直击了解更多选题

  摘 要: 通过比较SVG和Canvas两种绘图机制,辨析了使用Canvas在网页中绘图方案的优缺点。使用一个在线写字本案例,论述了Canvas捕获用户的鼠标事件根据用户输入来绘图的过程。最后总结了Canvas绘图的特性以及应用前景。

  关键词: 计算机论文投稿,Canvas,绘图,写字本,事件

  Discussion about Canvas drawing scheme with example of notebook

  Li Anqin

  (Network Technology Department of South-China Institute of Software Engineering, Guangzhou, Guangdong 510990, China)

  Abstract: By comparing two different drawing mechanisms between the SVG and the Canvas, the merits and drawbacks of Canvas scheme drawing pictures on web page are analyzed. With the example of notebook on Windows, the process of drawing picture through catching the user's input and mouse events is discussed. The features and application prospect of Canvas drawing scheme are summarized.

  Key words: Canvas; drawing; notebook; event

  0 引言

  Canvas API是HTML5规范中在浏览器中绘图的程序接口,它为开发人员提供了一套二维绘图系统,在Canvas画布上融合javascript可以动态地生成和展示各种图像和动画,从而进行各种手机游戏开发、图表制作以及动态横幅广告展示等。在此之前,开发人员若要在浏览器中绘图,只能使用Adobe的 Flash和SVG(Scalable Vector Graphics,可伸缩矢量图形),然而使用Flash的解决方案需要借助Flash Player插件来实现,而此插件不停地更新版本,这也会对用户造成一定的困扰。本文分析了完全靠浏览器实现的Canvas与SVG这两种绘图方案的区别,以一个在线写字本为例,阐述采用Canvas API在浏览器中根据用户输入进行绘图的方法的优劣。

  1 SVG和Canvas绘图技术比较

  SVG全称是Scalable Vector Graphics,即可伸缩矢量图形,是使用XML来描述二维图形和绘图程序的语言[1]。同Canvas API一样,SVG是一套在客户端生成绘图的解决方案,相比在服务器端生成的绘图技术来说,在客户端生成的绘图技术充分利用客户端浏览器这个强大的工具,不需要预先在服务器上读取和分析数据,可以有效地减轻服务器的压力,降低带宽的损耗,从而提高绘图的效率。Canvas和SVG都是基于 javascript脚本的解决方案,两者的区别在于:

  ⑴ Canvas绘制的图像是由一组二维像素网格来表示的栅格图形,而SVG绘制的矢量图形是基于图形本身的几何特征来表示的[2],因此,除非需要对Canvas区域重新渲染,否则使用Canvas绘制的图像在放大或缩小时会失真;

  ⑵ 从搜索引擎角度来看,SVG绘图中的文本能被搜索引擎获取,而Canvas中的文本实际上是图像的一部分,不能被搜索引擎识别;

  ⑶ SVG将画布中的元素作为HTML的一部分,同DOM API构成了一个矢量的绘图API,而Canvas不属于网页HTML的DOM结构或任何的命名空间,也不能直接检测鼠标单击了图像的哪个点,因此需要借助鼠标坐标在图像中的定位来实现。

  综上所述,相比起SVG绘图来说,Canvas仍具有一些明显的不足,但是HTML5规范中使用的是Canvas绘图机制,说明其仍具有一定的优势,如:Canvas没有将画布中的的元素作为对象进行存储,不需要在浏览器中大量地添加各种DIV元素,因此HTML代码较简洁,执行效率较好。另外,对于开发人员来说,Canvas入门较简单,而学习SVG需要有比较扎实的浏览器编程基础。

  2 Canvas绘图的应用

  Canvas绘图的应用非常广泛,既可以绘制静态的展示性的统计图表,也可以根据用户输入进行交互式的绘图,包括各种矩形、弧形、不规则图形等,为 HTML5的游戏开发提供了丰富的创意空间,也使交互性的设计成为了可能。下面就以用户输入来绘图的记事本为例说明Canvas绘图的过程。

  Canvas API是通过在网页上绘制一个矩形画布来实现绘图的,因此首先需要在网页中添加Canvas的矩形区域,设置其位于浏览器的最上层,添加CSS样式规则为 “z-index:3”,使其能捕获用户的鼠标动作,并预先定义好它的长宽,否则如果在CSS或JS中二次定义的话,会使图形发生按比例缩小或放大的情况 [3]。其次,在javascript标签中使用getContext(“2d”)方法来获取二维平面图的上下文环境,就类似于画家手中拿的画笔,使用这个对象,就可以使用Canvas程序中的代码接口实现各种图形的绘制。Canvas标签的代码如下:

  在记事本中允许用户自己定义画笔的颜色和粗细,采用HTML5中type="range"的input标签可以创建允许用户设置笔触粗细的滑动条,使用type="color"的input输入框创建控制笔触颜色的选择器。这里将灰色文字作为用户描画的蓝本,置于Canvas对象的下一层,即“z- index:2”,将田字格的背景置于最底层,即“z-index:1”,建立修改画笔属性的表单,实现的界面如图1所示。

  通过给Canvas对象增加三个事件监听器,获得用户在田字格中使用鼠标写字的动作,根据用户鼠标的位置来判断用户写字的笔划。其代码总结如表1所示。

  首先,用户按下鼠标表示开始绘图,这是一个瞬间的事件,为MouseDown的事件添加名为“drawStart”函数,在该函数中使用全局变量记录下用户点击鼠标的坐标位置作为绘图的起点;用户在移动鼠标(MouseMove)时,添加名为“drawLine”的事件,在该事件中获取用户设定的笔触大小和颜色以进行绘图,此事件会随着用户鼠标位置的移动不停地被执行;最后,用户松开鼠标时(MouseUp)为Canvas对象添加名为 “drawEnd”的事件,通知浏览器停止绘图。其中移动鼠标时绘图的核心代码如下:

  drawWord=function(x1, y1, x2, y2) {

  var c=document.getElementById("myWrite");

  if (c && c.getContext("2d")) {

  var cxt=c.getContext("2d");

  //根据鼠标的位置

  cxt.beginPath();

  cxt.moveTo(x1, y1);

  cxt.lineTo(x2, y2);

  cxt.closePath();

  //开始画线,根据用户的选择来设置线条属性

  cxt.lineWidth=$("#lineWidth").val();

  cxt.strokeStyle=$("#lineColor").val();

  cxt.stroke();

  }

  };

  同时,用户点击其他文字的时候采用Canvas API的clearRect()的方法清除用户先前的绘图痕迹,重新开始一副新的绘图,最终实现效果如图2所示。

  通过以上案例可以看出,使用Canvas绘图代码较为简单,有网页设计基础的人员都能够掌握,它可以模拟逼真的鼠标写字的效果,通过捕获鼠标的坐标可以准确定位画笔的位置,并提供个性化的画笔属性的选择。但是也存在一定的缺陷,如果用户移动鼠标过快,则呈现出的线条不够流畅,线性只是单调的矩形,不能根据用户按住鼠标的力度调整线条粗细等。但是上述情况在大多浏览器绘图机制中都存在,因此有待浏览器绘图技术的进一步发展来改善。需要注意的是,Canvas绘图在不同的浏览器中的支持情况不同,本案例在下述浏览器中的测试情况如表2所示。

  说明:“×”表示不支持,“○”表示能够正确的呈现

  3 结束语

  Canvas绘图是HTML5这个新的标准中推出的绘图程序接口,它可以不借助于任何插件,根据用户输入进行绘图,实现良好的交互效果。它基于客户端 javascript脚本来实现,结合HTML5的其他技术可以实现兼容不同移动平台的移动游戏开发、数据图表展示以及在线绘图等功能。虽然相比于 SVG,它还存在一定的不足,但是随着浏览器实现技术的提升以及人们对Web应用的需求变得越来越高,它一定会展现出良好的应用前景。

  参考文献:

  [1] 万本庭,陈明.基于SVG的矢量图形库管理模型[J].计算机工程,

  2006.2:65-67

  [2] Peter Lubbers[荷],Brian Albers[美],Frank Salim[美]著,柳靖,李杰,刘

  淼译.HTML5程序设计(第二版)[M].人民邮电出版社,2012.

  [3] Brian P.Hogan[美]著,李杰,刘晓娜,朱嵬译.HTML5和CSS3实例教



月期刊平台服务过的文章录用时间为1-3个月,依据20年经验,经月期刊专家预审通过后的文章,投稿通过率100%以上!
  • 推荐法学人必看的容易投稿核心期刊

    2026-05-25
    法学核心期刊普遍难投,所谓容易是相对的通常指审稿较严但接受面较宽、对青年学者或实务选题较友好、或审稿周期较短的期刊,而非门槛低。为了确保论文发表发表核心期刊,论文选题前沿、文献综述、规范性,质量为王,远比挑选容易投稿期刊,以及抄袭、低水平综述或表格
  • 政工类核心期刊有哪些

    2026-05-23
    政工类核心期刊论文整体较难发表,不仅仅是门槛高、竞争激烈,政工属热门但版面稀缺领域,审稿严、重复率要求高、创新性与理论深度要求强,对于职称晋升或业绩考核的人员来说,发表一篇高质量核心期刊非常重要。下面一起看看 政工类核心期刊有哪些 。 1、《学校党建与
  • 好投会计与经管类核心期刊汇总

    2026-05-22
    会计与经管类核心期刊众多,为了能够顺利毕业/职称晋升,作者在选择期刊时,需要综合多种因素考量,选择一本好投稿、审稿快、录用率和高认可度的核心期刊投稿。以下是大家介绍的 好投会计与经管类核心期刊汇总 ,供选刊参考: 《财务与会计》北大核心+AMI扩展 由财政部
  • 比较好发的医学科技核心期刊

    2026-05-21
    医学领域的科研者和临床医生,想要将研究成果高效顺利的发表在学术影响力和认可度高的科技核心期刊上,必须了解投稿目标期刊的审稿速速、录用率和收稿范围等。以下是为大家推荐的 5本比较好发的医学科技核心期刊 ,供选刊的你做参考: 1、《安徽医学》 作为安徽省医学
  • 推荐容易发的党建类期刊

    2026-05-20
    发表党政论文是学校党政领导、党务干部、宣传干部、学工干部、思想政治理论课教师和辅导员等提升综合素质、塑造专业形象、拓宽职业路径以及促进学术交流的重要手段。而且还可晋升正副高职称和评奖评优等,以下为大家 推荐容易发的党建类期刊 ,供参考: 1、《学校党建
  • 最新!法医刘良的新书《真相不会沉默》狂卖20万册及科研成就

    2026-05-12
    近日,65岁法医刘良的新书《真相不会沉默》上市不足一月,销量突破20万册,他签售时签到手抽筋,还幽默调侃以后可以做成门神,他表示大家愿意看,是因为需要真实的内容。 法医刘良的主要成就 科研成就 1、科研综述 刘良长期从事法医病理学和法医毒理学科研和司法鉴定工
  • 最新!南通一中学教师论文查重率91.9%,校方回应:属实

    2026-05-14
    近日,江苏南通一中学教师论文涉嫌抄袭引发社会关注。5月8日,南通市崇川初级中学发布通报称,网友反映的情况属实,申请取消其已取得的学术荣誉;三年内不得评聘高一级职称,不得参与岗位晋升,不得参与评先评优;按有关规定对其进行党纪政纪处分。 事件的核心细节,处
  • 最新动态!美国计算机协会(ACM)2026年全面开放获取(Open Access,OA)

    2026-04-01
    自2026年1月1日起, 美国计算机协会(Association for Computing Machinery,ACM)数字图书馆中所有ACM出版物及相关资料将全面开放获取(Open Access,OA),以确保全球读者可免费、即时地获取计算机领域的前沿研究成果。此次ACM出版方式的重大转型,将对我校师生未来
  • 2026年中科院期刊分区表不再更新怎么办?有高校明确:暂用2025年分区表认定

    2026-03-31
    近日,中国科学院文献情报中心(以下简称中科院文献中心)发布声明,宣布将不再更新、发布推出已有22年的期刊分区表。国内高校及科研机构该如何因应引起学界关注。 3月30日,电子科技大学图书馆在官网发布了《关于2026年发表论文中科院分区查询方式的说明》:近日,中
  • 最新!2026年中国科学院文献情报中心:发布声明,不再更新与发布期刊分区表

    2026-03-28
    自2026年起, 中国科学院文献情报中心(以下简称文献中心)将不再更新与发布期刊分区表。 我们将继续开展学术资源评价方法的研究与探索,积极服务国内外学术交流与出版生态建设。 多年来,期刊分区表工作得到了广大用户的持续关注与支持。在此,我们谨致以诚挚的感谢!
回到顶部