PHP と Qiniu クラウド ストレージ インターフェイスを使用して画像のトリミングとスケーリングを実現する方法
はじめに:
インターネットの急速な発展に伴い、画像処理は日常生活で無視できない部分になりました。発達。画像処理の過程では、画像のトリミングや拡大縮小などの操作を実行する必要が生じることがよくあります。この記事では、PHP と Qiniu クラウド ストレージ インターフェイスを組み合わせて画像のトリミングとズームを実現する方法とコード例を紹介します。
1. 背景の紹介
2. 実装方法
<?php require 'vendor/autoload.php'; // 引入七牛云SDK use QiniuAuth; use QiniuStorageBucketManager; $accessKey = 'YOUR_ACCESS_KEY'; $secretKey = 'YOUR_SECRET_KEY'; $bucket = 'YOUR_BUCKET'; $auth = new Auth($accessKey, $secretKey); $bucketManager = new BucketManager($auth); $key = 'image.jpg'; // 待裁剪的图片key $newKey = 'new_image.jpg'; // 裁剪后保存的图片key $width = 200; // 裁剪后的宽度 $height = 150; // 裁剪后的高度 $x = 100; // 裁剪起始点的横坐标 $y = 100; // 裁剪起始点的纵坐标 $ops = 'imageView2/1/w/' . $width . '/h/' . $height . '/x/' . $x . '/y/' . $y; list($ret, $err) = $bucketManager->fetch($bucket . ':' . $key, $bucket, $newKey, $ops); if ($err !== null) { echo '裁剪失败:' . $err->message(); } else { echo '裁剪成功'; } ?>
分析:
コードでは、まず Qiniu Cloud SDK パッケージを導入し、認証と BucketManager オブジェクト。
次に、切り出す画像キー、切り抜き後に保存する画像キー、切り抜き後の開始点の幅、高さ、水平・垂直座標を定義します。
操作文字列 ops を結合することで、クロップ用のパラメータを設定します。
最後に、BucketManager の fetch メソッドを呼び出し、トリミング パラメータとストレージ スペース関連の情報を渡して、画像をトリミングします。
<?php require 'vendor/autoload.php'; // 引入七牛云SDK use QiniuAuth; use QiniuStorageBucketManager; $accessKey = 'YOUR_ACCESS_KEY'; $secretKey = 'YOUR_SECRET_KEY'; $bucket = 'YOUR_BUCKET'; $auth = new Auth($accessKey, $secretKey); $bucketManager = new BucketManager($auth); $key = 'image.jpg'; // 待缩放的图片key $newKey = 'new_image.jpg'; // 缩放后保存的图片key $scale = 0.5; // 缩放比例 $ops = 'imageView2/0/q/75|imageslim|slim'; list($ret, $err) = $bucketManager->fetch($bucket . ':' . $key, $bucket, $newKey, $ops); if ($err !== null) { echo '缩放失败:' . $err->message(); } else { echo '缩放成功'; } ?>
分析:
コードでは、Qiniu Cloud SDK パッケージも導入し、認証と BucketManager オブジェクト。
スケーリングする画像キー、スケーリング後に保存する画像キー、およびスケーリング率を定義します。
操作文字列 ops を結合することで、スケーリング パラメーターが設定されます。
最後に、BucketManager の fetch メソッドを呼び出し、スケーリング パラメーターとストレージ スペース関連の情報を渡し、画像のスケーリングを実行します。
3. 概要
この記事では、PHP と Qiniu クラウド ストレージ インターフェイスを組み合わせて画像のトリミングとスケーリングを実現する方法を紹介し、対応するコード例を示します。 Qiniu Cloud の強力なストレージおよび処理機能を使用することで、開発者は画像のトリミングやズームなどのさまざまな操作を簡単に実行して、より優れた画像表示効果をユーザーに提供できます。この記事が、開発者が日々の開発で遭遇する画像処理の問題の解決に役立つことを願っています。
参考資料:
以上がPHP と Qiniu クラウド ストレージ インターフェイスを使用して画像をトリミングおよびズームする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。