“SVG相关”目录存档

搞懂SVG/Canvas中nonzero和evenodd填充规则

2018年10月3日,星期三

nonzero evenodd缩略图

只要是路径填充,都有两种规则,nonzero和evenodd,无论是SVG中的路径填充,还是Canvas中的路径填充,如果还有其他和路径相关的技术(甚至设计软件),也离不开这两种填充规则。换句胡说,这是超越各种语言,普世通用的技能点。下面,看看我能不能用足够精简的语言,尽可能让大家都搞懂这两种路径填充规则。

阅读全文…

学习了,CSS中内联SVG图片有比Base64更好的形式

2018年08月19日,星期日

CSS内联SVG文章头图

难免的,我们需要在CSS中内联SVG图形,以前我都是把SVG文件转换成Base64格式然后内嵌,最近发现,这并不是最好的方法,最好的方法是使用部分转义的SVG原始代码,兼容IE9+,而且颜色什么的可以直接在CSS中修改。这种方法具体真容是什么?有兴趣可以进去看下。其中有个炸裂的SVG在线压缩合并工具,相信你会喜欢的。

阅读全文…

借助SVG文字尺寸自动缩放甚至突破Chrome 12px限制

2018年03月24日,星期六

文字大小尺寸跟着容器的尺寸变化。这对于一些需要尺寸自适应的slogon内容就很实用,例如移动端320~414宽度间的自适应。纯CSS可以实现,但如果局部自适应实现就比较麻烦,canvas则效果不好,SVG实现则兼顾两者的优点……

阅读全文…

CSS, SVG和canvas分别实现文本文字纹理叠加效果

2018年02月27日,星期二

本文这里所说的叠加,就是混合模式中的叠加,也就是说,本文要实现的效果是,文字本身的颜色和纹理进行叠加,而非直接填充纹理。

CSS, SVG和canvas都能实现类似的效果,我们一个一个来看一下……

阅读全文…

小tips: 0学习成本实现HTML元素粘滞融合效果

2017年12月21日,星期四

元素粘滞融合效果很酷,看上去很难实现,实际上实现却非常容易,几乎0学习成本,一起来看看究竟吧!

阅读全文…

深入理解SVG feDisplacementMap滤镜及实际应用

2017年12月14日,星期四

借助SVG feDisplacementMap滤镜可以实现非常有意思的水波效果。本文深入介绍feDisplacementMap滤镜的作用原理,同时展示其在实际项目中可以大规模实际应用的潜力。

阅读全文…

照片位图转SVG矢量图片JS工具primitive.js等简介

2017年11月30日,星期四

primitive是相对来说比较有名的将照片图片使用几何图形重建的工具。基于原始的这个primitive项目算法,很多开发人员拓展了Java版本,react版本等。自然也有JavaScript版本,就是本文要介绍的primitive.js。以及还会介绍其他一些位图转矢量图JS。

阅读全文…

SVG <foreignObject>简介与截图等应用

2017年08月4日,星期五

SVG图形表现非常给力,但是对于纯粹的文本展示却很吃力,例如希望文字到边缘可以自动换行,结果SVG却很难做到,对于XHTML而言这可以说是天生的理所当然的特性,那有没有什么办法让SVG元素中的文本也如同普通的HTML和CSS那样自动换行呢,有,那就是SVG的<foreignObject>元素!

阅读全文…

【翻译】借助SVG实现背景透明JPG图片

2017年03月9日,星期四

人物往往色彩丰富,有时候会遇到需要背景透明的场景,结果PNG24图片尺寸太大,PNG8质量太差,JPG尺寸最小效果还好,但是背景又不透明,有没有什么办法就有JPG的小尺寸好效果,同时背景透明呢?本文的处理技巧可能会对你解决相关问题提供一些思路。

阅读全文…

SVG精简压缩工具svgo简介和初体验

2016年02月29日,星期一

SVG文件,尤其从各种变假期导出的SVG,通常包含大量的无用信息,例如编辑器源信息,注释,因此元素,默认或者非最优值,以及其他一些不会影响渲染结果的可以移除或转换的内容。

有没有什么工具可以简化这些信息呢,有,不妨试试本文介绍的svgo.

阅读全文…