php画矢量图,SVG(可缩放矢量图形)基本图形绘制方法与path路径命令

本文介绍了SVG(可缩放矢量图形)的基本概念和优势,并通过PHP展示了如何绘制SVG图形,包括直线、矩形、圆形、椭圆、折线、多边形、文本以及路径命令如M/m、L/l、H/h、V/v、Z/z、A/a、Q/T、C/S等。同时,文章提到了SVG的CSS样式属性,强调了其在图标和小图形制作中的应用。
摘要由CSDN通过智能技术生成

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

用于描述二维矢量图形的一种图形格式

很早之前SVG就出现了

相比于canvas,它更适合作一些小图标icon等等

HTML5支持内联SVG

它的优点如下:可伸缩

可通过文本编辑器创建和修改

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

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

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

canvas是js动态绘图,而svg是XML文档来描述绘图

svg-icon网址:传送门

下面我们来看一下如何使用svg绘图

创建svg

和canvas类似,首先需要在html文档中创建标签

也可以指定width与height属性

(canvas与svg如果不指定宽高,默认300×150)

不过它还有另外一种使用的形式(viewbox属性),可以看看我的另一篇文章:传送门

接下来的图形绘制和canvas很像了,就多解释了

区别是以XML标签的形式写在svg标签内部

而且为svg的css样式指定宽高不会使它等比缩放

基本图形绘制

直线

x1,y1 起始坐标

x2,y2 终点坐标

还需要指定css样式才能够画出来line { stroke: #000;}

(样式属性参考canvas环境对象中的属性)

98f583f06fc6e538a42532ae0d985dba.png

矩形

x,y 矩形起始坐标

width,height 矩形宽高

rx,ry 矩形圆角rect { stroke: #000; fill: transparent;}

这里要注意矩形有默认的样式 fill: #000;

下面的也都一样

1bef64cdacaadbb577c43f144de722ba.png

圆形

r 半径

cx,cy 圆心坐标circle { stroke: #000; fill: transparent;}

8c288faa792b6b471a90ea6e30780fae.png

椭圆

rx,ry 长半径/短半径

cx,cy 圆心坐标circle { stroke: #000; fill: transparent;}

90069e890c380ba0adf0e6e77c8ed285.png

折线

points指定折线经过的点

横纵坐标空格隔开

多个坐标间逗号隔开polyline { stroke: #000; fill: transparent;}

e25c558c56c0669427e4ec59f78f0209.png

多边形

和上面的折线差不多

只不过它的终点会连接起点

形成闭合的效果

类似于canvas中的closePath()polygon { stroke: #000; fill: transparent;}

da5f9c1200162bb3b0eb84c9280296fe.png

文本

hello world!

x,y 文本起始坐标(左下)text { font-size: 30px;}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值