アプリ版:「スタンプのみでお礼する」機能のリリースについて

画像の縦横比固定の計算方法。

プログラムで画像を縦横比固定でサイズ計算したいのですがどのように計算すればいいのでしょうか?
画像を縦横比固定で画面サイズに合わせて拡大縮小したいと思っています。
調べてみたのですが、調べ方が悪かったのか見つけることが出来ませんでした。

カテゴリは数学になるとは思うのですが、プログラムでの計算なのでこちらにしました。
プログラムでなくても、計算方法が分かればいいので、文章のみでも構いません。

A 回答 (2件)

(´・ω・`)ん?



■■1

■■■■2^2
■■■■

■■■■■■3^2
■■■■■■
■■■■■■

面積は比率の二乗に比例する。
    • good
    • 0

縦横比固定で拡大縮小するには、単純に 縦横同じ値をかけ算するだけです。



※ 縦 w,横 hの画像を縦横ともに a (>0)倍したときの縦横比は
aw : ah = w : h
で元の画像の縦横比と同じ


「画面に合わせて」の意味が曖昧なのですが
・ある画面サイズ(画面A)を元に、別の画面サイズ(画面B)で、画像の占める割合を同じにする

a=[画面Bの幅] ÷ [画面Aの幅]
あるいは
a=[画面Bの高さ] ÷ [画面Aの高さ]

・画像の大きさ=画面サイズ(画面B)にする(フルスクーンの状態)

a=[画面Bの幅] ÷ [画像の幅]
あるいは
a=[画面Bの高さ] ÷ [画像の高さ]

元にするサイズ(画面A、または画像)の縦横比と、表示する画面Bの縦横が違う場合は
次のうちから選ぶことになります。
・とにかく高さを合わせる。横端が表示しきれなかったり、足りなかったりする
・とにかく幅を合わせる。上下端が表示しきれなかったり、足りなかったりする
・全部表示することを優先する。縦、横両方の倍率を求めて小さい方を採用。採用されなかった方の端が足りない。
・拡大することを優先する。縦、横両方の倍率を求めて大きい方を採用。採用されなかった方の端が切れる。
・面積比で。 a=sqrt( ([画面Bの幅] × [画面Bの高さ]) ÷ ([画面Bの幅] × [画面Bの高さ]) ) 端が表示しきれなかったり、足りなかったりする
    • good
    • 1
この回答へのお礼

回答ありがとうございます。

出来ました。
質問文が曖昧だったのはすみませんでした。
画面の比率と画像の比率が違っても画面に画像が縦横比固定で画像全てが表示されるサイズに
計算したいということです。
a=[画面Bの幅又は高さ] ÷ [画像の幅又は高さ]というのは間違っていなかったのですが、
それ以外の計算が間違っていました。

数時間(数十時間かもしれません)考えても出来なかったので助かりました。
ありがとうございました。

お礼日時:2010/08/08 17:27

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!