问题描述
我正在使用d3库在Angular中构建一个简单的SVG,但我无法进行扩展。
我在https://css-tricks.com/scale-svg/上对SVG进行了大量阅读,我选择采用在viewBox
内构建SVG,然后应用width
和{ {1}}个属性。
检查SVG时,我发现它占用了height
和100px
的指定width
,但是height
本身仍然是原始大小。 / p>
但是!如果不是通过代码设置SVGElements
和width
,而是通过在height
中将SVG编辑为HTML来修改width
和height
(即:{ {1}}),然后完美缩放!
我在这里做了个pl:https://plnkr.co/edit/kYcTocJzi6eA59Yj?preview-第一个SVG通过代码设置了Dev Tools
和width="100px" height="100px"
,而第二个SVG没有设置它们,因此您可以如果需要,可以在width
中进行尝试:)
感谢您的时间!
解决方法
In SVG, viewBox 是驼峰式的,但是您键入了视图 b ox:
const svg2 = d3.select(this.svgContainerRef2.nativeElement)
.append('svg')
.attr('viewBox',`0 0 ${circleRadius * 2} ${circleRadius * 2}`);