ホームページ バックエンド開発 PHPチュートリアル PHP の GD ライブラリと関連関数

PHP の GD ライブラリと関連関数

Jun 22, 2023 pm 08:52 PM
php 関数 gdライブラリ

GD ライブラリと PHP の関連関数

GD ライブラリは、PHP 言語の非常に強力なグラフィック ライブラリであり、画像の処理、画像やサムネイルの動的生成などに使用できます。この記事では、GD ライブラリの関連概念と共通機能を紹介します。

  1. GD ライブラリのインストール

GD ライブラリを使用する前に、ライブラリがシステムにインストールされていることを確認する必要があります。コマンド ラインに次のコマンドを入力すると、GD ライブラリがインストールされているかどうかを確認できます:

php -m | grep -i gd
ログイン後にコピー

「gd」が出力される場合は、GD ライブラリがインストールされていることを意味し、出力が空の場合は、 GD ライブラリを置き換えるには、次のコマンドを使用する必要があります。システムにインストールされています:

sudo apt-get install php7.2-gd
ログイン後にコピー
  1. GD ライブラリの基本概念

GD ライブラリはオープン ソースです画像の処理や画像、サムネイルなどの生成に使用できるクロスプラットフォームのグラフィック ライブラリ。 GD ライブラリは画像を処理するときに、画像をピクセルのコレクションに変換し、各ピクセルを処理します。通常、画素には赤、緑、青の 3 つの色値が含まれており、これら 3 つの色値を処理することでさまざまな色の画像を得ることができます。

  1. GD ライブラリのよく使われる関数

GD ライブラリには非常に便利な関数が多数用意されており、よく使われる関数をいくつか紹介します。

3.1. imagecreatetruecolor()

imagecreatetruecolor 関数は、次のように宣言される True Color イメージを作成するために使用されます:

resource imagecreatetruecolor ( int $width , int $height )
ログイン後にコピー

$width と $height は、画像の幅と高さ、戻り値は画像リソース ハンドルです。

次は、imagecreatetruecolor 関数を使用して 300x200 の赤い四角形を作成する例です:

<?php
// 创建一个300x200的真彩色图像
$img = imagecreatetruecolor(300, 200);

//定义红色
$red = imagecolorallocate($img, 255, 0, 0);

//在图像上画一个填充了红色的矩形
imagefilledrectangle($img, 0, 0, 300, 200, $red);

//将图像输出到浏览器
header('Content-type: image/png');
imagepng($img);

//释放图像资源
imagedestroy($img);
?>
ログイン後にコピー

3.2. imagecreatefromjpeg()

imagecreatefromjpeg 関数は、300x200 の赤い四角形を作成するために使用されます。 JPG画像ファイルからの赤い四角 読み込んだ画像リソースハンドルは以下のように宣言されています。

resource imagecreatefromjpeg ( string $filename )
ログイン後にコピー

このうち$filenameはJPG画像ファイル名、戻り値は画像リソースハンドルです。

次は、imagecreatefromjpeg 関数を使用して JPG 画像ファイルを読み取り、拡大縮小する例です:

<?php
//从文件中创建一个图像资源
$src_image = imagecreatefromjpeg('source.jpg');

//获取原始图像的宽和高
list($src_width, $src_height) = getimagesize('source.jpg');

//创建一个新的缩放后的图像资源
$dst_image = imagecreatetruecolor(100, 100);

//将原始图像按照比例缩放到新的图像资源中
imagecopyresampled($dst_image, $src_image, 0, 0, 0, 0, 100, 100, $src_width, $src_height);

//将图像输出到浏览器
header('Content-type: image/png');
imagepng($dst_image);

//释放图像资源
imagedestroy($src_image);
imagedestroy($dst_image);
?>
ログイン後にコピー

3.3. imagecopymerge()

imagecopymerge 関数は次の目的で使用されます。画像を別の画像に重ねて、透明度を設定します。その宣言は次のとおりです。

bool imagecopymerge ( resource $dst_im , resource $src_im , int $dst_x , int $dst_y , int $src_x , int $src_y , int $src_w , int $src_h , int $pct )
ログイン後にコピー

ここで、$dst_im はターゲット画像リソース ハンドル、$src_im はソース画像リソース ハンドル、$dst_x と $dst_y です。ターゲット画像の座標の開始点、$src_x と $src_y はソース画像の開始座標、$src_w と $src_h はソース画像の幅と高さ、$pct は透明度、範囲は 0- 100。

次は、関数 imagecopymerge を使用して、別のベースマップ内の円形イメージをカバーする例です。

<?php
//从文件中创建一个底图
$bg_image = imagecreatefrompng('bg.png');

//从文件中创建一个圆形图像
$circle_image = imagecreatefrompng('circle.png');

//获取圆形图像的宽和高
list($circle_width, $circle_height) = getimagesize('circle.png');

//定义透明度为60%
$pct = 60;

//将圆形图像复制到底图中
imagecopymerge($bg_image, $circle_image, 100, 100, 0, 0, $circle_width, $circle_height, $pct);

//将图像输出到浏览器
header('Content-type: image/png');
imagepng($bg_image);

//释放图像资源
imagedestroy($bg_image);
imagedestroy($circle_image);
?>
ログイン後にコピー
  1. 概要

GD ライブラリは A です。画像の処理と生成を簡単にできる非常に便利なグラフィック ライブラリです。この記事では、GD ライブラリのインストール、基本概念、共通機能について紹介します。 GD ライブラリを学習して使用することで、PHP アプリケーションをより柔軟で強力にすることができます。

以上がPHP の GD ライブラリと関連関数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHPおよびPython:さまざまなパラダイムが説明されています PHPおよびPython:さまざまなパラダイムが説明されています Apr 18, 2025 am 12:26 AM

PHPは主に手順プログラミングですが、オブジェクト指向プログラミング(OOP)もサポートしています。 Pythonは、OOP、機能、手続き上のプログラミングなど、さまざまなパラダイムをサポートしています。 PHPはWeb開発に適しており、Pythonはデータ分析や機械学習などのさまざまなアプリケーションに適しています。

PHPの目的:動的なWebサイトの構築 PHPの目的:動的なWebサイトの構築 Apr 15, 2025 am 12:18 AM

PHPは動的なWebサイトを構築するために使用され、そのコア関数には次のものが含まれます。1。データベースに接続することにより、動的コンテンツを生成し、リアルタイムでWebページを生成します。 2。ユーザーのインタラクションを処理し、提出をフォームし、入力を確認し、操作に応答します。 3.セッションとユーザー認証を管理して、パーソナライズされたエクスペリエンスを提供します。 4.パフォーマンスを最適化し、ベストプラクティスに従って、ウェブサイトの効率とセキュリティを改善します。

PHPとPythonの選択:ガイド PHPとPythonの選択:ガイド Apr 18, 2025 am 12:24 AM

PHPはWeb開発と迅速なプロトタイピングに適しており、Pythonはデータサイエンスと機械学習に適しています。 1.PHPは、単純な構文と迅速な開発に適した動的なWeb開発に使用されます。 2。Pythonには簡潔な構文があり、複数のフィールドに適しており、強力なライブラリエコシステムがあります。

PHPとPython:彼らの歴史を深く掘り下げます PHPとPython:彼らの歴史を深く掘り下げます Apr 18, 2025 am 12:25 AM

PHPは1994年に発信され、Rasmuslerdorfによって開発されました。もともとはウェブサイトの訪問者を追跡するために使用され、サーバー側のスクリプト言語に徐々に進化し、Web開発で広く使用されていました。 Pythonは、1980年代後半にGuidovan Rossumによって開発され、1991年に最初にリリースされました。コードの読みやすさとシンプルさを強調し、科学的コンピューティング、データ分析、その他の分野に適しています。

なぜPHPを使用するのですか?利点と利点が説明されました なぜPHPを使用するのですか?利点と利点が説明されました Apr 16, 2025 am 12:16 AM

PHPの中心的な利点には、学習の容易さ、強力なWeb開発サポート、豊富なライブラリとフレームワーク、高性能とスケーラビリティ、クロスプラットフォームの互換性、費用対効果が含まれます。 1)初心者に適した学習と使用が簡単。 2)Webサーバーとの適切な統合および複数のデータベースをサポートします。 3)Laravelなどの強力なフレームワークを持っています。 4)最適化を通じて高性能を達成できます。 5)複数のオペレーティングシステムをサポートします。 6)開発コストを削減するためのオープンソース。

PHPの影響:Web開発など PHPの影響:Web開発など Apr 18, 2025 am 12:10 AM

phphassiblasifly-impactedwebdevevermentandsbeyondit.1)itpowersmajorplatformslikewordpratsandexcelsindatabase interactions.2)php'sadaptableability allowsitale forlargeapplicationsusingframeworkslikelavel.3)

PHP対Python:ユースケースとアプリケーション PHP対Python:ユースケースとアプリケーション Apr 17, 2025 am 12:23 AM

PHPはWeb開発およびコンテンツ管理システムに適しており、Pythonはデータサイエンス、機械学習、自動化スクリプトに適しています。 1.PHPは、高速でスケーラブルなWebサイトとアプリケーションの構築においてうまく機能し、WordPressなどのCMSで一般的に使用されます。 2。Pythonは、NumpyやTensorflowなどの豊富なライブラリを使用して、データサイエンスと機械学習の分野で驚くほどパフォーマンスを発揮しています。

PHPの継続的な使用:その持久力の理由 PHPの継続的な使用:その持久力の理由 Apr 19, 2025 am 12:23 AM

まだ人気があるのは、使いやすさ、柔軟性、強力なエコシステムです。 1)使いやすさとシンプルな構文により、初心者にとって最初の選択肢になります。 2)Web開発、HTTP要求とデータベースとの優れた相互作用と密接に統合されています。 3)巨大なエコシステムは、豊富なツールとライブラリを提供します。 4)アクティブなコミュニティとオープンソースの性質は、それらを新しいニーズとテクノロジーの傾向に適応させます。

See all articles