我遇到了一个问题,我想将多个 svg 缩放到给定的宽度和高度。每个 svg 元素都需要缩放到宽度和高度。我必须使用 viewbox 属性,但它不起作用。我使用了几个代数公式来计算比例因子,但无济于事。
此外,SVG 的宽度和高度设置为 100%,因此计算比例因子将是可行的方法,但简单的公式如下:
desiredWidth / svgWidth and desiredHeight / svgHeight
不工作。为了得到svg的宽度和高度,我使用了getBoundingClientRect
方法。上面的公式不起作用的原因是两个相似的 svg 在它们是相同的“符号”但具有不同的宽度和高度的意义上需要缩放到相同的期望宽度和期望高度。上面的公式不会缩放到相同的宽度和高度,即使它们看起来相同(相同的期望宽度、期望高度和“符号”)。
这是一个示例小提琴:http: //jsfiddle.net/k_ken/eZP4x/2/
非常感谢您对此的任何帮助或建议。