ホームページ php教程 php手册 PHPプログラミングの動的画像作成コード

PHPプログラミングの動的画像作成コード

Jun 13, 2016 pm 12:26 PM
php コード 使用 関数 作成する 動的 画像 存在する 基本 インストール 成し遂げる 図書館 必要

基本的なイメージ作成機能を使用する前に、GD ライブラリ ファイルをインストールする必要があります。 JPEG 関連の画像作成機能を使用する場合は、jpeg-6b をインストールする必要があります。画像内で Type 1 フォントを使用する場合は、t1lib をインストールする必要があります。
イメージ作成環境を構築する前に、いくつかの準備を行う必要があります。まず t1lib をインストールし、次に jpeg-6b をインストールし、次に GD ライブラリ ファイルをインストールします。インストール中は、GD をコンパイルしてライブラリに保存するときに jpeg-6b が使用されるため、ここで指定した順序でインストールする必要があります。jpeg-6b がインストールされていない場合、コンパイル中にエラーが発生します。
これら 3 つのコンポーネントをインストールした後も、PHP を再構成する必要があります。これが、PHP のインストールに DSO を使用する理由の 1 つです。 make clean を実行し、次の内容を現在の構成に追加します:
--with-gd=[/path/to/gd]
--with-jpeg-dir=[/path/to/jpeg -6b]
--with-t1lib=[/path/to/t1lib]
追加が完了したら、make コマンドを実行し、次に make install コマンドを実行し、Apache を再起動して phpinfo() を実行して、 new 設定が有効になっているかどうか。これで、イメージの作成作業を開始できます。
インストールされている GD ライブラリ ファイルのバージョンに応じて、グラフィック ファイルを GIF または PNG 形式で作成できるかどうかが決まります。 gd-1.6 以前のバージョンをインストールした場合、GIF 形式のファイルは使用できますが、PNG ファイルは作成できません。 gd-1.6 以降のバージョンをインストールした場合、PNG ファイルは作成できますが、GIF 形式のファイルは作成できません。
簡単な画像を作成するには多くの機能を使用する必要があります。これについては順を追って説明します。
次の例では、PNG 形式の画像ファイルを作成します。次のコードは、作成された画像の MIME タイプを含むヘッダーです。
header ("Content-type: image/ png") ;
ImageCreate() を使用して空白の画像を表す変数を作成します。この関数にはピクセル単位の画像サイズのパラメーターが必要で、その形式は ImageCreate(x_size, y_size) です。サイズ 250×250 の画像を作成したい場合は、次のステートメントを使用できます:
$newImg = ImageCreate(250,250);
画像はまだ空白なので、何らかの色で塗りつぶすこともできます。 。まず、ImageColorAllocate() 関数を使用して、RGB 値を使用してこの色に名前を割り当てる必要があります。この関数の形式は ImageColorAllocate([image], [red], [green], [blue]) です。スカイブルーを定義したい場合は、次のステートメントを使用できます:
$skyblue = ImageColorAllocate($newImg,136,193,255);
次に、ImageFill() 関数を使用して画像をこの色で塗りつぶす必要があります。 , ImageFill()関数 ImageFillRectangle()やImageFillPolygon()などいくつかのバージョンがあります。簡単にするために、次の形式で ImageFill() 関数を使用します:
ImageFill([image], [start x point], [start y point], [color])
ImageFill($newImg,0, 0,$skyblue);
最後に、画像の作成後に使用されていた画像ハンドルとメモリを解放します。
ImageDestroy($newImg);画像のコード全体は次のとおりです。
header ("Content-type: image/png");
$newImg = ImageCreate(250,250); $newImg,136,193,255) ;
ImageFill($newImg,0,0,$skyblue);
ImageDestroy($newImg);このスクリプト ファイルを skyblue.php として保存し、ブラウザでアクセスすると、スカイブルーの 250×250 PNG 形式の画像が表示されます。
画像作成機能を使用して、大きな画像を小さな画像に作成するなど、画像を処理することもできます。
画像があり、そこから 35×35 の画像を切り抜きたいとします。必要なのは、35×35 の空の画像を作成し、元の画像を含む画像ストリームを作成して、元の画像のサイズ変更したバージョンを新しい空の画像に配置することだけです。
このタスクを完了するための重要な関数は ImageCopyResize() で、次の形式が必要です: ImageCopyResize([新しい画像ハンドル],[元の画像ハンドル],[新しい画像 X], [新しい画像 Y], [元の画像X]、[元のイメージ Y]、[新しいイメージ X]、[新しいイメージ Y]、[元のイメージ X]、[元のイメージ Y])。
/*ファイルに含まれるコンテンツタイプをブラウザに知らせるためのヘッダーを送信します*/
header("Content-type: image/png"); /*新規ファイルを作成して保存します画像の高さと幅の変数*/
$newWidth = 35;
$newHeight = 35;
/*指定された高さと幅で新しい空白の画像を作成します*/
$newImg = ImageCreate( $ newWidth,$newHeight);
/*元の大きい画像からデータを取得します*/
$origImg = ImageCreateFromPNG("test.png");
/*サイズ変更された画像をコピーします。ImageSX() を使用します。 ImageSY() で X と Y の元の画像のサイズを取得します*/
ImageCopyResize($newImg,$origImg,0,0,0,0,$newWidth,$newHeight,ImageSX($ origImg),ImageSY( $origImg));
/*必要な画像を作成し、メモリを解放します*/
ImagePNG($newImg);
ImageDestroy($newImg); ?>
If この小さなスクリプトをサイズ変更して保存します。 php を開き、ブラウザでアクセスすると、35×35 の PNG 形式の画像が表示されます。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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:データベースとサーバー側のロジックの処理 PHP:データベースとサーバー側のロジックの処理 Apr 15, 2025 am 12:15 AM

PHPはMySQLIおよびPDO拡張機能を使用して、データベース操作とサーバー側のロジック処理で対話し、セッション管理などの関数を介してサーバー側のロジックを処理します。 1)MySQLIまたはPDOを使用してデータベースに接続し、SQLクエリを実行します。 2)セッション管理およびその他の機能を通じて、HTTPリクエストとユーザーステータスを処理します。 3)トランザクションを使用して、データベース操作の原子性を確保します。 4)SQLインジェクションを防ぎ、例外処理とデバッグの閉鎖接続を使用します。 5)インデックスとキャッシュを通じてパフォーマンスを最適化し、読みやすいコードを書き、エラー処理を実行します。

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などの豊富なライブラリを使用して、データサイエンスと機械学習の分野で驚くほどパフォーマンスを発揮しています。

See all articles