ホームページ >バックエンド開発 >PHPチュートリアル >PHP gd ライブラリはサーバー側の画像トリミングとサムネイルを実装します

PHP gd ライブラリはサーバー側の画像トリミングとサムネイルを実装します

WBOY
WBOYオリジナル
2016-07-25 09:13:14950ブラウズ

例として、PHP での画像のトリミングには、主に gd ライブラリの imagecopyresampled メソッドが使用されます。 画像のトリミングの例: PHP gd ライブラリはサーバー側の画像トリミングとサムネイルを実装します

最終的にトリミングされた写真:PHP gd ライブラリはサーバー側の画像トリミングとサムネイルを実装します2

点線のボックスはトリミングされる画像で、最終的には幅 100 の画像として保存されます。 コード:

  1. $src_path = '1.jpg';
  2. //ソース画像のインスタンスを作成します
  3. $src = imagecreatefromstring(file_get_contents($src_path));
  4. //左上をトリミングします領域の隅 点の座標
  5. $x = 100;
  6. $y = 12;
  7. //トリミング領域の幅と高さ
  8. $width = 200;
  9. $height = 200;
  10. //幅と最終的に保存された画像の高さとソース 比例する必要があります。そうでない場合は変形します
  11. $final_width = 100;
  12. $final_height =round($final_width * $height / $width);
  13. //トリミングされた領域を次の場所にコピーします新しい画像を選択し、ソースとターゲットの幅と高さに応じて続行します。ズームまたはプルアップします
  14. $new_image = imagecreatetruecolor($final_width, $final_height);
  15. imagecopyresampled($new_image, $src, 0, 0, $x, $y, $final_width, $final_height, $width, $height);
  16. //出力画像
  17. header('Content-Type: image/jpeg');
  18. imagejpeg($new_image);
  19. imagedestroy($src);
  20. imagedestroy($new_image);
コードをコピー

実際、座標が (0,0) で、トリミングされた領域の幅と高さがソース画像の幅と高さと一致する場合、サムネイルを生成する機能です。 要約する ここでは、サーバー側関数である PHP での画像のトリミングの例のみをリストします。 クライアントが必要とする場合は、互換性が非常に高い jquery プラグイン imageAreaSelect をお勧めします。



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。