Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何用维度接近SVG_Svg_Vector Graphics - Fatal编程技术网

如何用维度接近SVG

如何用维度接近SVG,svg,vector-graphics,Svg,Vector Graphics,我想画一个篮球场在SVG图像中缩放 我有一本书 如何使用现实生活中的尺寸创建SVG图像,并按比例缩小输出以适应任意图像大小,如300px×300px? 编辑:为了进一步澄清,我想画出现实生活中5英寸的画线。我是否将5英寸作为我的“单位”,然后将所有其他单位乘以这个单位?如果篮球场有94英尺长,你想将其按比例绘制到300像素以内,然后根据你的目标尺寸计算出比例。300 / 94 = 3.19. 使用该数字确定比例(包括绘制线的宽度) 抛开像拉斐尔这样的框架不谈,你能不能在一个中画出整个球场(或者

我想画一个篮球场在SVG图像中缩放

我有一本书

如何使用现实生活中的尺寸创建SVG图像,并按比例缩小输出以适应任意图像大小,如300px×300px?


编辑:为了进一步澄清,我想画出现实生活中5英寸的画线。我是否将5英寸作为我的“单位”,然后将所有其他单位乘以这个单位?

如果篮球场有94英尺长,你想将其按比例绘制到300像素以内,然后根据你的目标尺寸计算出比例。300 / 94 = 3.19. 使用该数字确定比例(包括绘制线的宽度)

抛开像拉斐尔这样的框架不谈,你能不能在一个
中画出整个球场(或者用英寸作为单位),然后将整个球场围在一个
中,放大或缩小以适应300像素?
元素有多种转换可用。SVG在这方面非常擅长,您可以在根图形中使用熟悉的度量。

我遇到的问题是-您的计算结果是94英尺除以300像素。。。为了得到以英寸为单位的绘制线宽度,我将乘以(5/12)*3.19?我可能会以英寸为单位计算所有尺寸。这将使它更容易。(94 * 12) / 300 = 3.76. 然后你将所有的尺寸单位英寸除以3.76。5in=1.33px。你可以用1:1英寸到像素的比例画出整个东西,然后缩放它。您正在为此使用框架或库吗?我真的很喜欢Raphaeljs。实际上,我正在使用cairo——虽然与它没有特别的联系,所以我最终可能会使用另一个svg库。谢谢你的帮助,我计划今天晚些时候测试一下,很乐意帮忙。我得去开罗看看。有这么多很酷的库和框架,但时间太少。。。