快乐十分钟开奖走势图-广东十分快乐开奖结果-广东快乐十分开奖查询

热门关键词: 快乐十分钟开奖走势图,广东十分快乐开奖结果,广东快乐十分开奖查询
您的位置:快乐十分钟开奖走势图 > 广东十分快乐开奖结果-web前端 >    译文出处

   译文出处

2019-11-19 04:34

知情SVG坐标系和转变:视窗,viewBox和preserveAspectRatio

2015/09/23 · HTML5 · SVG

原稿出处: SaraSoueidan   译文出处:Blueed(@Ivan_z3)   

SVG成分不像HTML成分相似由CSS盒模型管理。那使得大家得以进一层灵敏定位和转移那一个成分-可能一眼看上去不太直观。然则,生机勃勃旦您掌握了SVG坐标系和转变,操纵SVG会特不难何况很有意义。本篇散文中大家将研究决定SVG坐标系的最主要的八天本性:viewport, viewBox, 和 preserveAspectRatio

这是本连串三篇小说中的第生龙活虎篇,那篇小说商讨SVG中的坐标系和改变。

  • 精晓SVG坐标系和转变(第豆蔻梢头局地卡塔尔-viewport,viewBox,和preserveAspectRatio
  • 精晓SVG坐标系和转变(第二有个别卡塔 尔(阿拉伯语:قطر‎-transform属性
  • 精通SVG坐标系和转换(第三片段卡塔 尔(阿拉伯语:قطر‎-建设构造新视窗

为了使文中的开始和结果和表达更形象化,小编成立了三个相互影响演示,你能够私下更换viewBox 和 preserveAspectRatio的值。

在线案例

以那件事例只是最重要内容的一小部分,所以看完请重临继续阅读那篇文章

SVG画布

canvas是绘制SVG内容的一块空间或区域。理论上,画布在具备维度上皆以最棒的。所以SVG能够是大肆尺寸。然则,SVG通过有数区域展以后显示器上,那么些区域叫做viewport。SVG中不唯有视窗边界的区域会被裁切何况掩盖。

视窗

视窗是一块SVG可以预知的区域。你能够把视窗当作二个窗户,透过这么些窗户能够看见特定的风貌,景观恐怕完全,只怕独有大器晚成都部队分。

SVG的视窗相通访谈当前页面包车型大巴浏览器视窗。网页能够是别的尺寸;它能够超过视窗宽度,而且在超级多地方下都比视窗中度要高。然则,每一种时刻唯有部分网页内容是经过视窗可知的。

整整SVG画布可以知道照旧有的可以知道决议于那个canvas的尺码甚至preserveAspectRatio属性值。你今后无需操心那些;大家随后交涉论越多的细节。

你能够在最外层<svg>要素上接收widthheight质量评释视窗尺寸。

<!-- the viewport will be 800px by 600px --> <svg width="800" height="600"> <!-- SVG content drawn onto the SVG canvas --> </svg>

1
2
3
4
<!-- the viewport will be 800px by 600px -->
<svg width="800" height="600">
    <!-- SVG content drawn onto the SVG canvas -->
</svg>

在SVG中,值能够带单位也无法不带。八个不带单位的值能够在客户空间中通过客户单位声称。假使值通过客户单位声称,那么那个值的数值被以为和px单位的数值形似。那代表上述例子将被渲染为800px*600px的视窗。

你也足以应用单位来表明值。SVG支持的长短单位有:emexpxptpccmmmin和比重。

借让你设定最外层SVG成分的宽高,浏览器会建构起来视窗坐标系和起头顾客坐标系。

开首坐标系

初始视窗坐标系是二个创设在视窗上的坐标系。原点(0,0)在视窗的左上角,X轴正向指向右,Y轴正向指向下,初步坐标系中的二个单位等于视窗中的五个”像素”。那一个坐标体系雷同于通过CSS盒模型在HTML成分上创设的坐标系。

初始客户坐标系是确立在SVG画布上的坐标系。那几个坐标系风流洒脱开始和视窗坐标系完全大器晚成致-它自身的原点位于视窗左上角,x轴正向指向右,y轴正向指向下。使用viewBox特性,初步顾客坐标体系-也称脚下坐标系,或利用中的顾客空间-能够产生与视窗坐标系区别等的坐标系。大家在一下节中切磋哪边更换坐标系。

到现在终结,大家还不曾评释viewBox属性值。SVG画布的客户坐标种类和视窗坐标体系完全平等。

下图中,视窗坐标系的”标尺”是深翠绿的,客户坐标系(viewBox卡塔 尔(阿拉伯语:قطر‎的是月光蓝的。由于它们在此个时候完全雷同,所以八个坐标系列重合了。图片 1

地方SVG中的鹦鹉的外框边界是200个单位(这一个事例中是200个像素)宽和300个单位高。鹦鹉基于开始坐标系在画布中绘制。

新顾客空间(即,新当前坐标系卡塔 尔(阿拉伯语:قطر‎也足以经过在容器成分或图表成分上行使transform天性来声称转变。大家就要这里篇小说的第二片段谈谈关于转换的原委,越来越多细节在第三部分和结尾巴部分分中探究。

viewBox

本身爱好把viewBox明亮为“真实”坐标系。首先,它是用来把SVG图形绘制到画布上的坐标系。那个坐标系能够高于视窗也能够低于视窗,在视窗中得以完全可以看到或局地可以知道。

在前边的章节里,这一个坐标系-客商坐标系-和视窗坐标系完全生龙活虎致。因为我们未有把它注脚成任何坐标系。那正是怎么全数的一向和制图看起来是依附视窗坐标系的。因为我们若是创建视窗坐标系(使用widthheight卡塔 尔(阿拉伯语:قطر‎,浏览器默许创造一个完全相似的客商坐标系。

您能够选取viewBox属性注解自个儿的客商坐标系。假如你筛选的顾客坐标连串和视窗坐标连串宽高比(高比宽卡塔 尔(阿拉伯语:قطر‎相似,它会延长来适应整个视窗区域(一分钟内我们就来说个例证卡塔 尔(英语:State of Qatar)。不过,假设你的用户坐标系宽高比分化,你能够用preserveAspectRatio性能来声称整个系统在视窗内是或不是可以预知,你也得以用它来声称在视窗中怎么样稳固。大家会在下个章节里钻探这豆蔻梢头情状的内部原因和例子。在自此生可畏章里,大家只谈谈viewBox的宽高比相符视窗的景观-在这里些事例中,preserveAspectRatio不发生潜移默化。

在我们批评那些事例前,大家想起一下viewBox的语法。

viewBox语法

viewBox天性接受多少个参数值,包蕴:<min-x>, <min-y>, width 和 height

CSS

viewBox = <min-x> <min-y> <width> <height>

1
viewBox = <min-x> <min-y> <width> <height>

<min-x> 和 <min-y> 值决定viewBox的左上角,widthheight操纵视窗的宽高。这里要专心视窗的宽高不自然和父<svg>要素的宽高同样。<width><height>值为负数是不合规的。值为0的话会禁绝元素的渲染。

在乎视窗的宽度也能够在CSS中安装为任何值。比如:设置width:100%会让SVG视窗在文档中自适应。无论viewBox的值是多少,它会酷炫为外层SVG成分总计出的大幅度值。

设置viewBox的例子如下:

<!-- The viewBox in this example is equal to the viewport, but it can be different --> <svg width="800" height="600" viewBox="0 0 800 600"> <!-- SVG content drawn onto the SVG canvas --> </svg>

1
2
3
4
<!-- The viewBox in this example is equal to the viewport, but it can be different -->
<svg width="800" height="600" viewBox="0 0 800 600">
    <!-- SVG content drawn onto the SVG canvas -->
</svg>

黄金年代经您在此之前在任什么地方方见到过viewBox,你只怕会看出有的分演讲您能够用viewBox属性通过缩放也许转移使SVG图形转换。那是真的。作者将深切索求何况告诉你以致足以应用viewBox来切割SVG图形。

理解viewBox和视窗之间差别最棒的法子是亲自观望。所以让大家看某件事例。大家将从viewBox和viewport的宽高比相符的例子开首,所以大家还无需浓烈摸底preserveAspectRatio

与viewport宽高比相似的viewBox

大家从二个归纳的例证伊始。那一个事例中的viewBox的尺寸是视窗尺寸的五成。在这么些事例中大家不改过view博克斯的原点,所以<min-x><min-y>都设置成0。viewBox的宽高是viewport宽高的二分一。那表示大家维持宽高比。

<svg width="800" height="600" viewBox="0 0 400 300"> <!-- SVG content drawn onto the SVG canvas --> </svg>

1
2
3
<svg width="800" height="600" viewBox="0 0 400 300">
    <!-- SVG content drawn onto the SVG canvas -->
</svg>

所以,viewBox="0 0 400 300"到底有啥样用吗?

  • 它注解了四个特定的区域,canvas横跨左上角的点(0,0)到点(400,300)
  • SVG图像被这一个区域裁切
  • 区域被拉伸(相同缩放效果卡塔 尔(阿拉伯语:قطر‎来充满整个视窗。
  • 客商坐标系被映射到视窗坐标系-在这里种景色下-叁个客户单位等于多个视窗单位。

上边包车型地铁图纸显示了在我们例子中把上边的viewBox应用到<svg> 画布中的效果。白灰单位代表视窗坐标系,栗色坐标系代表viewBox树立的顾客坐标系。

图片 2

任何在SVG画布中画的开始和结果都会被对应到新的顾客坐标系中。

自个儿快乐像谷歌(Google卡塔尔国地图相似通过viewBox把SVG画布形象化。在谷歌地图中您能够在一定区域缩放;那么些区域是唯大器晚成可以预知的,并且在浏览器视窗中按百分比增添。可是,你精晓地图的结余部分还在这里边,不过不可以看见因为它高于视窗的边界-被裁切了。

现今让我们试着改换<min-x><min-y>的值。都安装为100。你能够设置成任何你想要的值。宽高比照旧和视窗的宽高比同样。

<svg width="800" height="600" viewBox="100 100 200 150"> <!-- SVG content drawn onto the SVG canvas --> </svg>

1
2
3
<svg width="800" height="600" viewBox="100 100 200 150">
    <!-- SVG content drawn onto the SVG canvas -->
</svg>

添加viewBox="100 100 200 150"的功力和后边例子中平等都以裁切的遵守。图形被裁切然后拉伸来充满整个视窗区域。

图片 3

再叁遍,客商坐标系被映射到视窗坐标系-200顾客单位映射为800视窗单位由此各种客户单位等于七个视窗单位。结果像您看看的那样是放手的效能。

其余注意,在此个时候,为<min-x><min-y>宣示非0的值对图纸有转移的功力;越发极度的是,SVG 画布看起来发展拉伸一百个单位,向左拉伸一百个单位(transform="translate(-100 -100)")。

真正,作为正式表达,viewBox属性的熏陶在于顾客代理自动抬高适当的改动矩阵来把客户空间中现实的矩形映射到内定区域的疆界(经常是视窗卡塔尔”

那是多个很棒的求证大家事先早就涉嫌的原委的艺术:图形被裁切然后被缩放以适应视窗。这几个表明随着扩张了三个申明:“在大器晚成都部队分气象下客商代理在缩放转变之外部供给要追加八个平移调换。比如,在最外层的svg成分上,借使viewBox属性对<min-x><min-y>声称非0值得那么就须求活动转换。”

为了更加好示范移动转换,让大家试着给<min-x><min-y>增加-100。移动作效果果相仿transform="translate(100 100)";那意味着图形会在切割和缩放后运动到右下方。回看尾数首个裁切尺寸为400*300的例子,增加新的不算<min-x><min-y>值,新的代码如下:

<svg width="800" height="600" viewBox="-100 -100 300 200"> <!-- SVG content drawn onto the SVG canvas --> </svg>

1
2
3
<svg width="800" height="600" viewBox="-100 -100 300 200">
    <!-- SVG content drawn onto the SVG canvas -->
</svg>

给图形增多上述viewBox transformation的结果如下图所示:图片 4

注意,与transform属性不一样,因为viewBox机关抬高的tranfomation不会默化潜移有vewBox属性的要素的x,y,宽和高级属性。因而,在上述例子中显得的含有width,heightviewBox属性的svg元素,widthheight性子代表加多viewBox 转变从前的坐标系中的值。在上述例子中你能够见到伊始(浅绛红卡塔 尔(阿拉伯语:قطر‎viewport坐标系以至在<svg>上运用了viewBox特性后还是未有影响。

意气风发边,像tranform性情相像,它给全数其余属性和后代成分建立了二个新的坐标系。你还足以观望在上述例子中,客商坐标系是新建设构造的-它不是维系像开首客户坐标系和使用viewBox前的视窗坐标系相符。任何<svg>后代会在此个的客商坐标系中固定和规定尺寸,实际不是始于坐标系。

末段三个viewBox的例子和前几个好像,不过它不是切割画布,大家将在viewport里扩充它并看它怎么影响图形。大家将宣示一个宽高比视窗大的viewBox,并依然保持viewport的宽高比。大家在下意气风发章里探究不一致的宽高比。

在这里个例子中,大家将viewBox的尺寸设为viewport的1.5倍。

<svg width="800" height="600" viewBox="0 0 1200 900"> <!-- SVG content drawn onto the SVG canvas --> </svg>

1
2
3
<svg width="800" height="600" viewBox="0 0 1200 900">
    <!-- SVG content drawn onto the SVG canvas -->
</svg>

当今客商坐标系会被放大到1200*900。它会被映射到视窗坐标系,顾客坐标系中的每叁个单位水平方向上等于视窗坐标系中的viewport-width / viewBox-width,竖直方向上等于viewport-height / viewBox-height。那意味,在此种场合下,每贰个客户坐标系中的x-units分外viewport坐标系中的0.66x-units,每种客户y-unit映射成0.66的viewport y-units。

当然,明白那个最佳的艺术是把结果视觉化。viewBox被缩放到适应下图所示的viewport。因为图形在画布里基于新的顾客坐标系绘制的,并非视窗坐标系,它看起来比视窗小。图片 5

到近日甘休,大家具有的事例的宽高比都和视窗黄金时代致。可是风度翩翩旦viewBox中宣示的宽高比和视窗中的不生龙活虎致会发出怎么着吗?例如,试想大家把视窗的尺码设为1000*500。宽高比不再和视窗的相近。在例子中使用viewBox="0 0 1000 500"的结果如下图:图片 6

客商坐标系。因而图形在视窗中牢固:

  • 整个viewBox适于视窗。
  • 保持viewBox的宽高比。viewBox从没有过被拉伸来覆盖视窗区域。
  • viewBox在视窗中国水力电力对外公司平垂直居中。

那是暗中认可表现。那用什么决定表现吧?若是我们想退换视窗中viewBox的地点吗?那就要求运用preserveAspectRatio属性了。

preserveAspectRatio属性

preserveAspectRatio质量强制统风姿浪漫缩放比来保持图形的宽高比。

假如你用差异于视窗的宽高比定义顾客坐标系,固然像我们在头里的事例中观察的那样浏览器拉伸viewBox来适应视窗,宽高比的不等会变成图形在少数方向上扭转。所以假如上四个事例中的viewBox被拉伸以在富有矛头上适应视窗,图形看起来如下:图片 7

当给viewBox设置0 0 200 300的值时扭曲总体上看(明显那非常不理想卡塔 尔(阿拉伯语:قطر‎,这些值稍低于视窗尺寸。小编有意接收那几个尺寸进而让viewBox十分鹦鹉边界盒子的尺寸。要是浏览器拉伸图像来适应整个视窗,看起来会像上边这样:图片 8

preserveAspectRatio性子令你能够在保持宽高比的情状下强制统生机勃勃viewBox的缩放比,並且只要不想用暗中认可居中你能够证明viewBox在视窗中之处。

preserveAspectRatio语法

preserveAspectRatio的法定语法是:

JavaScript

preserveAspectRatio = defer? <align> <meetOrSlice>?

1
preserveAspectRatio = defer? <align> <meetOrSlice>?

它在其余建设构造新viewport的要素上都灵验(大家会在这里个类别的下后生可畏部分切磋这些主题材料卡塔 尔(英语:State of Qatar)。

defer宣称是可选的,何况唯有当您在<image>上添加preserveAspectRatio才被用到。用在任何别的因素上时它都会被忽视。<images>本人不在此篇作品的切磋范围,大家有的时候跳过defer本条选项。

align参数注明是不是强制统生机勃勃放缩,倘若是,对齐方法会在viewBox的宽高比不切合viewport的宽高比的情况下生效。

如果align值设为none,例如:

JavaScript

preserveAspectRatio = "none"

1
preserveAspectRatio = "none"

图片不在保持宽高比而会缩放来适应视窗,像大家在地点五个例子中观望的那样。

任何全数preserveAspectRatio值都在保险viewBox的宽高比的情况下强制拉伸,並且钦赐在视窗内什么对齐viewBox。我们会简介align的值。

末段叁特性质,meetOrSlice也是可选的,暗中认可值为meet。那一个脾性表明整个viewBox在视窗中是还是不是可以知道。借使是,它和align参数通过两个或多少个空格分隔。举个例子:

JavaScript

preserveAspectRatio = "xMinYMin slice"

1
preserveAspectRatio = "xMinYMin slice"

那么些值第生机勃勃当即起来只怕很素不相识。为了让它们更易于精晓和精通,你能够把meetOrSlice的值类比于background-sizecontaincover值;它们极度相近。meet类似于containslice类似于cover。上边是种种值的定义和意义:

meet(默认值)

根据以下两条准侧尽恐怕缩放成分:

  • 维持宽高比
  • 整个viewBox在视窗中可以见到

在此个场馆下,倘诺图形的宽高比不相符视窗,一些视窗会当先viewBox的边界(即viewBox制图的区域会小于视窗卡塔尔国。(在viewBox大器晚成节查看最终的事例。卡塔 尔(阿拉伯语:قطر‎在此个景况下,viewBox的边界被含有在viewport中使得边界满意。

那么些值相仿于background-size: contain。背景图片在保持宽高比的景观下尽大概缩放并保险它切合背景绘制区域。纵然背景的长度宽度比和动用的因素的长度宽度比不平等,部分背景绘制区域会并没有背景图片覆盖。

slice

在维系宽高比的境况下,缩放图形直到viewBox蒙面了整个视窗区域。viewBox被缩放到正好覆盖视窗区域(在四个维度上卡塔 尔(阿拉伯语:قطر‎,但是它不会缩舍弃马里尼奥出那一个范围的片段。换来说之,它缩放到viewBox的宽高能够刚巧完全覆盖视窗。

在此种情形下,若是viewBox的宽高比不合乎视窗,风流洒脱部分viewBox会扩充超过视窗边界(即,viewBox制图的区域会比视窗大卡塔尔。这会促成有的viewBox被切片。

你能够把那个类比为background-size: cover。在背景图片的状态中,图片在保持本人宽高比(怎么着卡塔尔国的景况下缩放到宽高能够完全覆盖背景定位区域的相当小尺寸。

所以,meetOrSlice被用来声称viewBox是还是不是会被完全富含在视窗中,可能它是或不是应当尽量缩放来蒙蔽全部视窗,甚至表示部分的viewBox会被“slice”。

譬喻说,若是大家证明viewBox的尺寸为200*300,何况选取了meetslice值,保持align值为浏览器暗中认可,每种值的结果会看起来如下:图片 9

align参数使用9个值中的三个大概为none。任何除none之外的值都用来保险宽高比缩放图片,并且还用来在视窗中对齐viewBox

当使用百分比率时,align值相仿于background-position。你可以把viewBox充任背景图像。通过align定位和background-position的例外在于,不一样于通过多个与视窗相关的点来声称叁个特定的viewBox值,它把具体的viewBox“轴”和呼应的视窗的“轴”对齐。

为了明白每一种align值的意义,我们将首先介绍每五个“轴”。

还记得viewBox<min-x><min-y>值吗?我们将使用它们来定义viewBox中的”min-x”和”min-y”轴。其余,我们将定义八个轴“max-x”和”max-y“,各自通过<min-x> + <width> 和 <min-y> + <height>来定位。最终,我们定义四个轴”mid-x”和”mid-y”,依照<min-x> + (<width>/2) 和 <min-y> + (<height>/2)来定位。

那样做是还是不是让事情更眼花缭乱了啊?要是是这样,让大家看一下底下的图样来看一下每种轴代表了何等。在此张图片中,<min-x>和 <min-y>值都设置为0。viewBox被安装为viewBox = "0 0 300 300"图片 10

地点图片中的深翠绿虚线代表视窗的mid-xmid-y轴。大家将对它们赋一些值来对齐viewBoxmid-xmid-y轴。对于视窗,min-x的值等于0min-y值也就是0max-x值等于viewBox的宽度,max-y的值等于中度,mid-xmid-y意味着了上升的幅度和惊人的中间值。

对齐的取值蕴含:

none

不强制统少年老成缩放。若是须要的话,在不合并(即不保持宽高比卡塔尔国的意况下缩放给定元素的图像内容直到元素的分界盒完全相称是视窗矩形。

换句话说,假如有供给的话viewBox被拉伸或缩放来完全适应整个视窗,不管宽高比。图形只怕会扭转。

(注意:如果<align>的值是none,可选的<meetOrSlice>值无效。)

xMinYMin

  • 强制统意气风发缩放
  • 视窗X轴的最小值对齐成分viewBox<min-x>
  • 视窗Y轴的最小值对齐成分view博克斯的<min-y>
  • 把那些类比为backrgound-position: 0% 0%;

xMinYMid

  • 强制统黄金年代缩放。
  • 视窗X轴的最小值对齐成分viewBox<min-x>
  • 视窗Y轴的中档值来对齐成分的view博克斯的中间值。
  • 把这一个类比为backrgound-position: 0% 50%;

xMinYMax

  • 强制统黄金时代缩放。
  • 视窗X轴的最小值对齐成分viewBox<min-x>
  • 视窗X轴的最大值对齐成分的viewBox<min-y>+<height>
  • 把那个类比为backrgound-position: 0% 100%;

xMidYMin

  • 强制统后生可畏缩放。
  • 视窗X轴的中间值对齐成分的viewBox的X轴中间值。
  • 视窗Y轴的中间值对齐成分的viewBox的 <min-y>
  • 把那几个类比为backrgound-position: 50% 0%;

xMidYMid (默认值)

  • 强制统风华正茂缩放。
  • 视窗X轴的中间值对齐成分的viewBox的X轴中间值。
  • 视窗Y轴的中间值对齐成分的viewBox的Y轴中间值。
  • 把这一个类比为backrgound-position: 50% 50%;

xMidYMax

  • 强制统黄金时代缩放。
  • 视窗X轴的中间值对齐成分的viewBox的X轴中间值。
  • 视窗Y轴的最大值对齐成分的viewBox<min-y>+<height>
  • 把这一个类比为backrgound-position: 50% 100%;

xMaxYMin

  • 强制统生龙活虎缩放。
  • 视窗X轴的最大值对齐成分的viewBox的 <min-x>+<width>
  • 视窗Y轴的最小值对齐成分的viewBox<min-y>
  • 把那么些类比为backrgound-position: 100% 0%;

xMaxYMid

  • 强制统意气风发缩放。
  • 视窗X轴的最大值对齐元素的viewBox的 <min-x>+<width>
  • 视窗Y轴的中间值对齐成分的viewBox的Y轴中间值。
  • 把这几个类比为backrgound-position: 100% 50%;

xMaxYMax

  • 强制统大器晚成缩放。
  • 视窗X轴的最大值对齐元素的viewBox的 <min-x>+<width>
  • 视窗Y轴的最大值对齐成分的viewBox的 <min-y>+<height>
  • 把那些类比为backrgound-position: 100% 100%;

故而,通过动用preserveAspectRatio属性的alignmeetOrSlice值,你能够表明是或不是统风流倜傥缩放viewBox,是还是不是和视窗对齐,在视窗中是或不是整个可以预知。

有时候,取决于viewBox的尺码,一些值大概会变成相符的结果,比如在以前viewBox="0 0 200 300"的例证中,一些对齐完全用了不相同的align值。那时候就要设置meetOrSlice的值为meet来保证viewBox包含在viewport内。图片 11

假若大家把meetOrSlice的值改成slice,区别的值大家将收获区别的结果。注意viewBox是什么拉伸来覆盖全体视窗的。x轴被拉伸到用200单位来隐瞒视窗800单位。为了完成那么些目标,并且维持viewBox的宽高比,y轴在尾部被“裁切”,可是你能够想象它在视窗中中度上的延长。图片 12

当然,不同的viewBox值看起来分歧于大家这里用的200*300。为了维持简洁,大家不再列举愈来愈多的例证,你能够看作者创造的片段相互作用演示来支持你越来越好地形象化精晓viewBoxpreserveAspectRatio在不相同值下的成效。你能够在一下节中查占星互作用演示例子的链接。

唯独在这里早前,笔者想要提示您放在心上要是<min-x> 和 <min-y>值改变,那么mid-xmid-ymax-x, 和 max-y的值也会时有发生改造。你可以在互相演示中退换那个值来查看轴以至相关联的viewBox的对齐格局的退换。

上边图片突显了定位轴的任务为viewBox = "100 0 200 300"时的成效。和早先用同生龙活虎的例子,可是大家把<min-x>的值设为100并非事先的0。你可以设置成任何你想要的值。注意min-xmid-x, 和 max-x轴是何许转移的。这里运用的preserveAspectRatio值为暗中同意的xMinYMin meet,意味着mid-*轴和视窗轴的高级中学级对齐。图片 13

互相演示

要理解viewport, viewBox, 以至不一致的preserveAspectRatio值是什么行事的最佳方法是可视化的言传身教。

鉴于这一个指标,作者成立了叁个简洁明了的相互演示,你能够校正那些属性的值来查阅新值招致的结果。图片 14

在线案例

本人梦想那篇随笔在扶植您明白SVG viewport, viewBox, 和 preserveAspectRatio 内容时有功用。倘令你想要明白更加多关于SVG坐标系的从头到尾的经过,例如嵌套坐标系,创设贰个新的坐标系以致SVG中的转变,继续阅读这一应有尽有接下去的有些。感激您的读书!

2 赞 1 收藏 评论

图片 15

本文由快乐十分钟开奖走势图发布于广东十分快乐开奖结果-web前端,转载请注明出处:   译文出处

关键词: