2016-08-15 2 views
0

ロードされたsvgのアスペクト比を取得する方法はありますか?私はpreserveAspectRatioプロパティに入るスケーリングを知りたいと思っています。 documentationmeetためと述べている:アスペクト比が SVGのアスペクト比を取得する方法は?

  • 保存さ

    • さらに他 基準を満たしながら、全体のビューボックスは、
    • ビューボックスを極力スケールアップされたビューポート内の表示され

    プロパティがJSで何とか知っているアスペクト比を取得する方法はありますか?で説明したように

  • +1

    を提供することが可能です:

    var svg = document.querySelector('svg'); var box = svg.viewBox.baseVal; 

    ことからアスペクト比を取得するだけの簡単な数学を必要としますあなたが開発しているhtml/jsコードの例? [良い質問をするにはどうすればいいですか](http://stackoverflow.com/help/how-to-ask) - 「他の人が問題を再現できるようにする」を参照してください。そうでなければ、多くのことは明らかではありません。私はそれが人々が答えるのを止めたと思う。たとえば、質問の「svg」の下にある意味は何ですか?それはSVGタグですか?またはタグで読み込まれたsvg形式の画像。または、他の何か?だからコンテキストは素晴らしいだろう。 –

    +1

    フィードバックいただきありがとうございます。私は本質的に同じ質問である私の答えを見つけることができた:http://stackoverflow.com/questions/29798288/retrieving-the-aspect-ratio-of-an-svg-image – poliu2s

    +1

    これは[ * "svg " *(/ q/29798288)の縦横比を取得していて、閉じられていないはずです。この質問はviewBox属性で決まるSVGのアスペクト比に関するものですが、質問にリンクされるのはSVG内の ''要素の寸法/アスペクト比に関するものです。これらは全く異なる問題です。 – altocumulus

    答えて

    2

    これは、ビューボックスの値を取得するのはとても簡単ですPhrogz」answer"Obtaining an original SVG viewBox via javascript"に:

    var aspectRatio = box.width/box.height; 
    
    +0

    これは正しくありません。アスペクト比は単に 'box.width/box.height'です。 –

    +0

    @PaulLeBeauそうです、ヒントありがとう!私が何度もt/lとb/rコーナーの座標として4つのviewBoxの値を解釈しているので、私は恥を知っていました。 – altocumulus

    関連する問題