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%以上!
  • 985和211副教授评职称认可的刊物推荐

    2024-11-28
    985和211院校的副教授评职称,对于个人学术声誉和职业发展是非常重要的,一般副教授发表期刊论文认可的刊物具有较高的学术水平和影响力。以下是对 985和211副教授评职称认可的刊物推荐 ,供大家参考: 1、SCI期刊 SCI期刊,即科学引文索引期刊,是国际学术界公认的权威
  • Sustainability期刊版面费多少

    2024-11-28
    《Sustainability》是一本由MDPI出版社出版的国际性、跨学科的开放获取学术期刊,专注于环境、文化、经济和社会可持续性的研究。那么, Sustainability期刊版面费多少 ? 从1900瑞士法郎上涨至2400瑞士法郎(约19266元人民币),适用于同行评审后接受的论文,该费用于
  • EI期刊论文查重的要求是什么

    2024-11-28
    能够在EI期刊论文发表论文,除了要有高质量的研究成果外,还要通过严格的查重审核。那么, EI期刊论文查重的要求是什么 ?详情如下: EI期刊作为国际学术期刊,对论文的原创性要求较高。查重作为确保论文原创性的手段,可有效避免学术不端行为发生,维护学术界的公平和
  • 评职称,国内高校认可scopus期刊吗?scopus期刊列表

    2024-11-28
    评职称,国内高校认可scopus期刊吗 ? 不同国内高校对scopus期刊评职称认可度可能存在一定的差异性。一些高校和科研机构确实认可scopus收录的期刊,尤其是研究生、博士生和教师晋升职称等方面,但也有一些高校是不认可的,因此在选择发表scopus期刊之前,一定要了解清
  • 解答SCI论文被语言拒稿的技巧

    2024-11-28
    对于国内作者来说,其中一大原因是语言表达,如sci论文出现大量的语法错误、中式英语表达,造成编辑或审稿人对文章内容的理解偏差,导致sci论文被拒稿。以下是 解答SCI论文被语言拒绝的技巧 ,希望能够帮助到你快速发表sci论文。 1、对sci论文专业润色和翻译 为了确保S
  • 中科院院士:94%中国科研SCI论文发表国外期刊,仅5.88%在国内期刊发表

    2024-11-18
    在2024上海科技与期刊高质量发展大会上,中国科学院院士、上海市科协主席张杰指出:2023年,我国科研人员共发表SCI(科学引文索引)论文73.96万篇,其中只有4.35万篇发表在国内期刊,占比5.88%,其余94.12%的论文都发表在国外期刊上。。 开幕式上,上海市科技期刊学会
  • 励志!安徽“扭扭车少年”在《Applied Intelligence》期刊上发表论文

    2024-11-15
    2024年11月, 张亮在国际人工智能领域高水平期刊《Applied Intelligence》(应用智能)上发表题为《Robot Motion Planning Algorithm Based on Deep Learning Optimization》(基于深度学习优化机器人运动规划的算法研究)的论文。 11月19日,张亮创办的公司首款外骨骼
  • 恭喜!《中国财政》入选长安街读书会学习核心来源期刊

    2024-11-14
    《中国财政》确实被正式选为长安街读书会干部学习的核心来源期刊之一。在2024年10月8日发布的《长安街读书会干部学习核心期刊目录》中,《中国财政》被列为核心期刊之一,其关注点在于中华民族现代文明。因此,可以确认《中国财政》正式入选长安街读书会干部学习核心来
  • 恭喜!上海科技期刊三本齐发,影响因子登顶学科王座

    2024-11-13
    据SCI数据库,2023年世界科技论文总数达248万篇,其中收录中国科技论文74万篇,数量居全球之首,占比30%;排名第二的美国,收录论文53万篇,占比21%。 目前,上海共有科技期刊358本,其中英文期刊82本,占比约20%,是全国平均的两倍;SCI期刊54本,其中Q1区期刊35本。
  • 西安交大:主办期刊《药物分析学报(英文)》入选百强榜单,总排名第七

    2024-11-12
    《2024中国英文科技期刊海外媒体传播影响力报告》的发布,彰显了中国科技期刊在国际舞台上的影响力。西安交通大学主办的《药物分析学报(英文)》(Journal of Pharmaceutical Analysis, JPA)在该报告中取得了显著成就,不仅成功进入百强榜单,而且取得了总排名第七的
回到顶部