PHPでイメージ(JPEGまたはPNG)のイメージの向き(横または縦)を取得するにはどうすればよいですか?PHPでイメージの方向を取得する
私はユーザーが画像をアップロードできるPHPサイトを作成しました。サイズを小さくする前に、画像を適切に拡大するために画像の向きを知りたいと思います。
ありがとうございました!
PHPでイメージ(JPEGまたはPNG)のイメージの向き(横または縦)を取得するにはどうすればよいですか?PHPでイメージの方向を取得する
私はユーザーが画像をアップロードできるPHPサイトを作成しました。サイズを小さくする前に、画像を適切に拡大するために画像の向きを知りたいと思います。
ありがとうございました!
私はいつもこれをやった適用することができる作品を私のため
:
list($width, $height) = getimagesize('image.jpg');
if ($width > $height) {
// Landscape
} else {
// Portrait or Square
}
シンプルです。幅と高さを確認し、それらを比較して向きを取得してください。それに応じてサイズを変更します。本当にまっすぐ進む。あなたには、いくつかの正方形の箱の中に縦横比を維持するが、合うようにしようとしている場合は、このようなものを使用することができます
public static function fit_box($box = 200, $x = 100, $y = 100)
{
$scale = min($box/$x, $box/$y, 1);
return array(round($x * $scale, 0), round($y * $scale, 0));
}
を私は画像の幅は、景観のためとあれば肖像画のための長さよりも長い場合、あなたがチェックできると仮定します長さは幅よりも長い。
簡単なIF/ELSE
ステートメントでこれを行うことができます。
また、機能を使用できます。Imagick::getImageOrientation
私は一般のようなアルゴリズムをスケールダウン使用します。 ..
ここで、最大サイズは高さと幅の両方について120pxのように初期化されたものです。 。 。そのサムネイルがそのサイズを超えないようにする。 。 。これは、横または縦向きにかかわらず、であると一般的に
list($width, $height) = getimagesize("path/to/your/image.jpg");
if($width > $height)
$orientation = "landscape";
else
$orientation = "portrait";
http://php.net /manual/ja/imagick.getimageorientation.php –
これはjpg/png仕様の一部ではありません。それらはピクセルのグリッドです。あなたは、画像が身長よりも広いかどうかを確認することができますが、あまり意味はありません。 EXIFデータには方向付けデータが含まれています。 –