蒙狼科技logo
设为首页| 联系我们
咨询热线: 13917498722
  您的位置: 首页 > 网站资讯 > 如何使用SVG生成超酷的页面预加载素描动画效果

如何使用SVG生成超酷的页面预加载素描动画效果

发布日期:2017/7/15
摘要: 1 SVG简介 可缩放矢量图形是基于可扩展标记语言(标准通用标记语言的子集),用于描述二维矢量图形的一种图形格式。它由万维网联盟制订,是一个开放标准。 2 SVG的特点 与其他图像格

 

  1 SVG简介

  可缩放矢量图形是基于可扩展标记语言(标准通用标记语言的子集),用于描述二维矢量图形的一种图形格式。它由万维网联盟制订,是一个开放标准。

  2 SVG的特点

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

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

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

  SVG 是可伸缩的

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

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

  3 浏览器支撑

  Internet Explorer 9、Firefox、Opera、Chrome 以及 Safari 支撑内联 SVG。Internet Explorer 8或更早版本,可通过安装Adobe SVG Viewer以支撑SVG。

  4 SVG 标签

  SVG 代 码以 元素开始,包括开启标签 和关闭标签 。这是根元素。 width 和 height 属性可设置此 SVG 文档的宽度和高度。version 属性可定义所使用的 SVG 版本,xmlns 属性可定 义 SVG 命名空间。

  5 SVG 制作素描线动画举例

  1)首先画一条素描线 如图:

  

 

 

  素描线的参数可以使用工具生成,

  2)SVG实现素描的动画及原理

  stroke-dasharray = "100 10" stroke-dashoffset = "0"

  stroke-dasharray定义了生成线段长度,及其线段和线段之间的缝隙 ,这里包含两个参数

  stroke-dashoffset定义了从那个位置开始渲染生成线段

  3)使用CSS3来实现素描动画效果

  /*定义keyframe动画*/ /* 添加动画到path元素 */ .path{ stroke-dasharray: 265.07; stroke-dashoffset: 265.07; animation: dash 3s linear infinite; /* 支撑chrome */ -webkit-animation: dash 3s linear infinite; } @keyframes dash{ from{ stroke-dashoffset: 265.07; /* 这里是svg图形中素描线长度,可以使用js获取 */ } to{ stroke-dashoffset: 0; } } /* 支撑chrome浏览器 */ @-webkit-keyframes dash{ from{ stroke-dashoffset: 265.07; /* 这里是svg图形中素描线长度,可以使用js获取 */ } to{ stroke-dashoffset: 0; } }

  4)使用javascript来调节动画效果的参数

  /*定义相关javascript*/ var current_frame, //定义当前帧 total_frames, //定义悉数帧数 path, //定义svg中的path元素 length, //定义path所生成的素描长度 handle; //定义javascript动画句柄 path = document.getElementById('path'), length = path.getTotalLength(); //定义初始化方法 var init = function(){ current_frame = 0; total_frames = 160; path.style.strokeDasharray = length + ' ' + length; //定义dasharray path.style.strokeDashoffset = length; //定义dashoffset handle = 0; } //定义现实的动画绘制方法 var draw = function(){ var progress = current_frame/total_frames; if(progress>1){ //这里定义完成动画 window.cancelAnimationFrame(handle); }else{//否则使用reqeuestAnimationFrame来生成动画 current_frame++; path.style.strokeDashoffset = Math.floor(length*(1 - progress)); handle = window.requestAnimationFrame(draw); } } //定义一个重新运行方法 var rerun = function(){ init(); draw(); } //页面加载即运行 rerun();

  这里主要定义初始化方法和动画绘制的方法,window.requestAnimationFrame(draw);

  来生成动画。

  5)我们选用极客标签的logo,作为原始图片,坐标参数用 Inkscape 工具生成。

  

 

  当运行动画绘制程序的时候,各条线安装设定的体例进行绘制,我们就看到特别很是酷的预加载动画了。







其他相关文章
  • Photoshop打造梦幻的紫色树林美女图片(1)
  • 如何将网站推广营销发挥的淋淋尽致
  • 如何吸引蜘蛛频繁的光顾自己的网站
  • 配色应用色彩学
  • 企业建站之后还需要做哪些工作?
  • PS人相教程!Photoshop合成唯美的水下人像设计教程




  • 企业网站后台使用
    购物网站后台使用
    网站产品图片的处理



    农业银行支付
    建设银行支付
    邮政储蓄银行支付



    企业网站建设
    整站建设
    购物网站



    企业网站建设建议
    注册适合自己的域名
    什么是虚拟主机




    售前咨询QQ: 838821345
    售后服务QQ: 464698733
    应急手机:13917498722


    微信扫一扫
    添加24小时微信客服


    邮箱:lang@MENGL.CN
    地址:上海宝山区城银路555弄2号楼3楼
    ICP备案:沪ICP备12042844号-3
     沪公网安备:31011402002917号
    做网站 | 企业网站建设 | 上海做网站 | 企业网站制作 | 做网站的公司 | 关于蒙狼 | 整站建设 | 购物网站 | 企业网络营销 | 成功案例 | 加盟代理 | 在线订单
    服务区域: 临港新区做网站 徐汇做网站 闵行做网站 长宁做网站 虹口做网站 黄浦做网站 卢湾做网站 静安做网站 浦东做网站 杨浦做网站 普陀做网站 闸北做网站 宝山做网站 嘉定做网站 松江做网站 昆山做网站
    Copyright 2012-2025 上海蒙狼网络科技有限公司 WWW.MENGL.CN All Rights Reserved