PHP で 90 度または 180 度回転した画像をアップロードしたい場合は、このチュートリアルが役に立ちます。 imagecreatefrompng()、imagerotate()、imagepng() 関数を使用して、PNG 画像を回転してサーバーに保存します。JPEG 画像も同様です。
次のコード例では、PHP で指定した画像を 90 度回転して保存し、名前を「myUpdateImage.png」に変更する方法を紹介します。 「myUpdateImage.jpeg」の実装メソッド。
png の例は次のとおりです。
<?php $fileName = "002.png"; $degrees = 90 ; $source = imagecreatefrompng($fileName); $rotate = imagerotate ($source,$degrees,0); imagepng($rotate,"myUpdateImage.png"); print_r('图像已成功保存。');
jpeg の例は次のとおりです。
<?php $fileName = "001.jpeg"; $degrees = 90; $source = imagecreatefromjpeg($fileName); $rotate = imagerotate($source, $degrees, 0); imagejpeg($rotate, "myUpdateImage.jpeg"); print_r('图像已成功保存。'); ?>
機能の紹介:
imagecreatefrompng() 関数 ファイルまたは URL から新しい画像を作成します。
imagecreatefrompng ( string $filename ) : resource
imagecreatefrompng() 指定されたファイル名から取得した画像を表す画像識別子を返します。
パラメータのファイル名は、PNG 画像のパスを表します。戻り値は、成功すると画像リソースが返され、失敗するとFALSEが返されます。
1. imagerotate() 関数 指定された角度で画像を回転します
imagerotate ( resource $image , float $angle , int $bgd_color [, int $ignore_transparent = 0 ] ) : resource
指定された角度で画像を回転します。 bgd_color は、回転後に隠れない部分の色を指定します。
回転の中心は画像の中心であり、回転された画像はターゲット画像のサイズに合わせて縮小されます。エッジは切り取られません。
パラメータ image は、イメージ作成関数 (imagecreatetruecolor() など) によって返されるイメージ リソースを表します。
angle、回転角度は、画像を反時計回りに回転する度数です。
bgd_color、指定された回転によってカバーされない領域の色を示します。
2、ignore_transparent、ゼロ以外の値に設定すると、透明色は次のようになります。無視されます (そうでない場合は保持されます)。
戻り値は回転された画像リソースを返すか、失敗した場合は FALSE を返します。
3. imagejpeg() 関数 画像をブラウザまたはファイルに出力します。
imagejpeg ( resource $image [, string $filename [, int $quality ]] ) : bool
imagejpeg() イメージ image から filename をファイル名とした JPEG 画像を作成します。
パラメータ image、画像作成関数 (imagecreatetruecolor() など) によって返される画像リソース。
filename、ファイルが保存されるパス。設定されていない場合、または NULL の場合、元の画像ストリームが直接出力されます。このパラメータを省略して品質パラメータを指定する場合は、NULL を使用します。
quality はオプションで、範囲は 0 (最低の品質、小さいファイル サイズ) から 100 (最高の品質、最大のファイル サイズ) です。デフォルトは、IJG のデフォルトの品質値 (約 75) です。
戻り値、成功した場合は TRUE、失敗した場合は FALSE。
関連する推奨事項: "PHP チュートリアル "
この記事は、PHP で画像を回転して保存する方法について説明しています。困っている友人に役立つことを願っています。
以上がPHPで画像を回転して保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。