2016-05-18 26 views
2

私はsvgタグ内に画像を持っています。 イメージの幅(または高さ)を変更すると、高さ(または幅)も比率を維持するように変更されます。 しかし、私は高さ(または幅)の新しい値を得ることができません。ここサイズ変更後にsvgイメージを実際のサイズにする

例: https://plnkr.co/edit/NrovrUKAv8KRGLPdjDpG?p=preview

我々はものの幅と高さは、幅のみ値の変化を低減していることがわかります。 d3jsを使って高さを取得しようとしましたが、値は変わりません。

d3.select("image").attr("height")

+1

できません両方の値を再計算するだけですか? –

答えて

2

は、画像の高さが低下しているように見えますが、実際にはフレームに調整し、それだけで自動的にchanging width * 219にまたがっそのわずかな方法ではありません。さらに簡単な例では、800*600 image a wallpaper in 1920*768 screenを作成しようとすると何が起こりますか?実際に画像が占有されている画面の量を確認するには、下の画像を確認してください。

enter image description here

あなたが本当にあなたのPICのサイズを変更したい場合、あなたはそれに応じても、あなたの高さを変更し、両方の値を再計算する必要があります。ここでは

var height = parseInt(d3.select("image").attr("height")); 
    d3.select("image").attr("height", height/2); 

exampleです。

関連する問題