ホームページ >PHPフレームワーク >ThinkPHP >thinkphp フレームワークに画像の回転とトリミング機能を実装する方法
ステップ 1: thinkphp フレームワークをインストールする
thinkphp フレームワークを独自の開発で使用したい場合は、当然、それを独自のプロジェクトにインストールする必要があります。 thinkphp のインストールは非常に簡単で、解凍した圧縮パッケージをプロジェクトのルート ディレクトリに直接移動するだけです。移動後、プロジェクト内のエントリ ファイルindex.phpを変更するだけで、thinkphpの使用を開始できます。
ステップ 2: thinkphp に画像処理クラスを導入する
thinkphp フレームワークに画像処理クラスを導入して、主にスケーリング、トリミング、トリミングなどの基本的な処理方法を含む画像を操作します。回転 。この記事では、その中でも回転クロップに焦点を当てます。
次のコードをコントローラーに追加して、画像処理クラスを導入します。
use think\Image;
ステップ 3: 画像の回転とトリミングの実装
回転トリミングとは、回転することです。画像 トリミングと組み合わせた操作も実装が非常に簡単です。この記事の最も難しい部分は、rotateCrop 関数のコード実装です。
/** * 旋转并裁剪图片操作 * @param string $image 被操作图片路径 * @param int $width 裁剪宽度 * @param int $height 裁剪高度 * @param int $degree 旋转角度 * @return bool|string 处理后保存的文件路径或者false **/ public function rotateCrop($image, $width, $height, $degree) { $image = Image::open($image); $image->rotate($degree)->crop($width, $height)->save($image); return $image->save() ? $image->getPathName() : false; }
この関数では、画像パス、トリミング幅、トリミング高さ、回転角度の 4 つのパラメータを渡す必要があります。画像パスは必須パラメータであり、他の 3 つのパラメータはオプションのパラメータです。幅と高さのデフォルトはゼロです。つまり、トリミングは実行されません。回転角度のデフォルトも 0 で、これは回転が実行されないことを意味します。
これらの操作の中で最も重要なのは、回転とトリミングの操作です。Image::open($image) 関数は、画像オブジェクトを開き、オブジェクト内のrotate() メソッドと Crop() メソッドを呼び出して、回転とトリミングを実行します。最後に、save() メソッドは画像を保存して出力します。
ステップ 4: 効果をテストする
最後にコードをテストしましょう。次のコードをコントローラーに追加します。
$image = 'image/test.jpg'; $width = 200; $height = 300; $degree = 90; $test = $this->rotateCrop($image, $width, $height, $degree); echo '<img src="'.$test.'" />';
上記のコードでは、$image はターゲット画像パス、$width と $height はテスト トリミング パラメーター、$degree はテスト回転パラメーターです (実行後)。 rotateCrop() 関数は保存された画像パスを返し、最終的にそれをページに表示します。すべてが正しいことを確認したら、ページをリロードすると、処理された写真を閲覧できるようになります
以上がthinkphp フレームワークに画像の回転とトリミング機能を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。