Je suis nouveau au SVG
, donc désolé si c'est un peu une question noob. J'essaie de comprendre comment obtenir une image à afficher avec toute la largeur et la hauteur de l'image référencée. J'utilise D3.js
pour construire un graphique et je veux qu'un logo apparaisse dans le coin. Le problème est que l'image href
sera définie à l'aide de javascript, donc l'image référencée n'est jamais une largeur ou une hauteur fixe. Ce que je veux, c'est l'image à afficher dans sa largeur et sa hauteur, et non pas à l'échelle. Ce que j'espérais, c'est la possibilité de définir automatiquement la largeur et la hauteur de l'image en fonction de son contenu, par exemple en définissant les attributs width
et height
sur auto
. Cependant, cela ne fait que montrer que l'image n'est pas affichée.Largeur et hauteur automatique pour l'image SVG
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');
Comment pourrais-je aller sur la spécification que l'image SVG width
et height
doivent être déterminées de façon dynamique en fonction de la taille de l'image référencée?
Y at-il une raison pour laquelle vous n'utilisez pas simplement une balise img? – Wex
Salut Wex. Vous voulez dire une balise 'html'' img'? Je préférerais garder la solution dans SVG si possible. Aimerait l'image incorporée dans le 'SVG' pour le graphe en cours de construction. – BruceHill
duplicata possible de [Ne supporte pas SVG largeur automatique et la hauteur pour les images?] (Http://stackoverflow.com/questions/16080273/doesnt-svg-support-auto-width-and-height-for-images) –