Я новичок в SVG
, поэтому извините, если это немного вопрос о noob. Я пытаюсь понять, как получить изображение для отображения с полной шириной и высотой ссылочного изображения. Я использую D3.js
для построения графика, и я хочу, чтобы логотип появился в углу. Проблема в том, что изображение href
будет установлено с помощью javascript, поэтому ссылка на изображение никогда не будет фиксированной шириной или высотой. То, что я хочу, - это изображение для отображения в нем полной ширины и высоты, а не масштабирования или уменьшения. На что я надеялся - это возможность автоматически устанавливать ширину и высоту изображения на основе его содержимого, например, устанавливать атрибуты width
и height
на auto
. Однако это приводит к тому, что изображение не отображается.
d3.select("body")
.append("svg")
.attr('id','mySVG')
.attr({
"width": "100%",
"height": "100%"
})
.attr("viewBox", "0 0 " + width + " " + height )
.attr("preserveAspectRatio", "none");
d3.select('#mySVG')
.append('image')
.attr('image-rendering','optimizeQuality')
.attr('height','auto') <--- This does not work
.attr('width','auto') <--- This does not work
.attr('xlink:href', logoUrl)
.attr('x','0')
.attr('y','0');
Как я могу указать, что изображение SVG width
и height
должно быть динамически определено на основе указанного размера изображения?