imagerotate

指定された角度で画像を回転する

説明

GdImagefalse imagerotate(GdImage $image, float $angle, int $background_color)

画像 image を、 angle で指定された角度だけ回転します。

回転の中心は画像の中心です。 回転後の画像の大きさは、もとの大きさと異なる可能性があります。

パラメータ

image

imagecreatetruecolorのような画像作成関数が返す GdImage オブジェクト。

angle

回転角度。これは、画像を反時計回りに回転させるときの度数を表します。

background_color

回転後、カバーされない部分の色。

戻り値

回転させた画像オブジェクトを返します。失敗した場合に false を返します。

変更履歴

バージョン 説明
8.3.0 使われていなかった ignore_transparent が、完全に削除されました。
8.0.0 成功時には、 この関数は GDImage クラスのインスタンスを返すようになりました。 これより前のバージョンでは、 resource を返していました。
8.0.0 image は、 GdImage クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、有効な gd resource が期待されていました。
8.0.0 使われていなかった ignore_transparent は、 bool を期待するようになりました。 これより前のバージョンでは、数値型を期待していました。

例1 画像を 180 度回転する

この例は、画像を 180 度 - 上下逆さまに回転します

<?php
// ファイルと回転角
$filename = 'test.jpg';
$degrees = 180;

// コンテントタイプ
header('Content-type: image/jpeg');

// 読み込み
$source = imagecreatefromjpeg($filename);

// 回転
$rotate = imagerotate($source, $degrees, 0);

// 出力
imagejpeg($rotate);

// メモリの解放
imagedestroy($source);
imagedestroy($rotate);
?>

上の例の出力は、 たとえば以下のようになります。

出力例 : 画像を 180 度回転する

注意

注意:

この関数は、imagesetinterpolation で設定した補間方式の影響を受けます。

参考

  • imagesetinterpolation