Canvas和SVG对比

本文对比了HTML5中的Canvas和SVG两种前端绘图方式。Canvas适用于2D图形和动画,依赖JavaScript进行绘制,具有高性能但交互处理较复杂。SVG是矢量图形,支持直接图形交互,提供更好的图像质量和兼容性,但在处理大量图形时性能较低。选择哪种技术应根据具体需求如性能、交互性和图像质量来决定。
摘要由CSDN通过智能技术生成

【前端】Canvas和SVG对比

一、Canvas和SVG前端绘图方式介绍

Canvas 的绘图方式

Canvas api 提供了一个通过js 和HTML 元素 Canvas 元素绘制图形的方式。
Canvas api 主要用于2d 图形,而同样使用canvas 的webgl api 则用于绘制一键加速的2d 和 3d 图形。

canvas 只支持两种图形的绘制,矩形和路径,其他复杂的图形是通过一条或多条路径组合而成。

路径绘制 api

  • beginPath(): 拿起笔
  • moveTo(x, y): 落笔
  • lineTo(x, y): 从落笔处,到(x, y) 画一条直线
  • stroke(): 通过线条来绘制轮廓
  • fill(): 填充
Svg 的绘图方式

SVG 可伸缩矢量图形(Scalable Vector Graphics)

SVG 有一些预定义的形状元素

矩形<rect> 
圆形 <circle>
圆 <ellipse> 
线<line> 
折线 <polyline> 
多边形 <polygon> 
路径<path>

用起来和DOM元素一样

<rect width
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值