見出し画像

画像が納まりきらない場合の対処/アスペクト比についての考え方 プログラミング学習

パソコン画面のアスペクト比が、画面に映したい画像のアスペクト比より大きい場合、画像の方が縦に長いことになります。

両者の物差しとなるアスペクト比は、
アスペクト比=横高さで表されるからです。

元々パソコン画面と同じサイズの画像であったとします。

ここからパソコン画面のアスペクト比の方を大きくするには、画像の高さを大きくする必要があります。

こうすると、画像の高さの方が画面より高く、画面に入りきらない状態になります。

この場合に画像を表示させたいのであれば、画像を表示させるための幅、高さは次のように設定します。

①高さは、パソコン画面から必要な余白分を差し引いたサイズ。

②幅は、①で設定した高さにアスペクト比を乗じたサイズ。
のように設定します。

if(windowAspectRatio > imageAspectRatio){
  dispHeight = windowHeight -padding;
  dispWidth = dispHeight * imageAspectRatio;
};

アスペクト比の大小関係が逆の場合も、配置する画像の縦、横どちらが大きいかを基準に考えるといいと思います。

①表示するディスプレイの横が決まれば、

②アスペクト比=横高さから、

ディスプレイ高さ=横/アスペクト比で求めることができます。

この記事が気に入ったらサポートをしてみませんか?