进阶Web教程:HTML5内联SVG

开课吧开课吧锤锤2021-04-07 15:28

    网络前端高薪的诱惑,学习门槛低,不管是学生党还是工作者,都渴望凭借自己的能力,空闲的时间,去学前端。也许是一种爱好,也许是一种想从事的工作。但它真的那么简单吗?现在,初级前端的工作,已接近饱和,并处于供过于求的状态,企业更需要的是具备扎实的基础,至少具备后端技能的前端开发工程师。已不像之前所说的美工,美工了。在许多大企业中,前端开发岗位是独立的,需要专业技能。

    HTML5内联SVG

    HTML5支持内联SVG。

web

    什么是SVG?

    SVG指可伸缩矢量图形(ScalableVectorGraphics)

    SVG用于定义用于网络的基于矢量的图形

    SVG使用XML格式定义图形

    SVG图像在放大或改变尺寸的情况下其图形质量不会有损失

    SVG是万维网联盟的标准

    SVG优势

    与其他图像格式相比(比如JPEG和GIF),使用SVG的优势在于:

    SVG图像可通过文本编辑器来创建和修改

    SVG图像可被搜索、索引、脚本化或压缩

    SVG是可伸缩的

    SVG图像可在任何的分辨率下被高质量地打印

    SVG可在图像质量不下降的情况下被放大

    浏览器支持

    web

    InternetExplorer9+,Firefox,Opera,Chrome,和Safari支持内联SVG。

    把SVG直接嵌入HTML页面

    在HTML5中,您能够将SVG元素直接嵌入HTML页面中:

<!DOCTYPE html>
<html>
<body>
 
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="190">
  <polygon points="100,10 40,180 190,60 10,60 160,180"
  style="fill:lime;stroke:purple;stroke-width:5;fill-rule:evenodd;">
</svg>
 
</body>
</html>

    结果:

    抱歉,你的浏览器不支持内联SVG.

    SVG与Canvas两者间的区别

    SVG是一种使用XML描述2D图形的语言。

    Canvas通过JavaScript来绘制2D图形。

    SVG基于XML,这意味着SVGDOM中的每个元素都是可用的。您可以为某个元素附加JavaScript事件处理器。

    在SVG中,每个被绘制的图形均被视为对象。如果SVG对象的属性发生变化,那么浏览器能够自动重现图形。

    Canvas是逐像素进行渲染的。在canvas中,一旦图形被绘制完成,它就不会继续得到浏览器的关注。如果其位置发生变化,那么整个场景也需要重新绘制,包括任何或许已被图形覆盖的对象。

    Canvas与SVG的比较

    下表列出了canvas与SVG之间的一些不同之处。

Canvas SVG
  • 依赖分辨率
  • 不支持事件处理器
  • 弱的文本渲染能力
  • 能够以 .png 或 .jpg 格式保存结果图像
  • 最适合图像密集型的游戏,其中的许多对象会被频繁重绘
  • 不依赖分辨率
  • 支持事件处理器
  • 最适合带有大型渲染区域的应用程序(比如谷歌地图)
  • 复杂度高会减慢渲染速度(任何过度使用 DOM 的应用都不快)
  • 不适合游戏应用

    以上就是进阶Web教程:HTML5内联SVG的全部内容,更多的Web教程尽在开课吧广场Web教程频道。

有用
分享
全部评论快来秀出你的观点
登录 后可发表观点…
发表
暂无评论,快来抢沙发!
云开发实战特训营