ホームページ  >  記事  >  バックエンド開発  >  PHP および GD ライブラリのチュートリアル: 画像に透かしを追加する方法

PHP および GD ライブラリのチュートリアル: 画像に透かしを追加する方法

王林
王林オリジナル
2023-07-12 12:10:43971ブラウズ

PHP および GD ライブラリのチュートリアル: 画像に透かしを追加する方法

はじめに:
Web サイト開発では、画像に透かしを追加する必要がよく発生します。ウォーターマークは、画像の著作権保護、ブランドのプロモーションなどに役立ちます。この記事では、PHP と GD ライブラリを使用して画像にウォーターマークを追加する方法を紹介します。

GD ライブラリの紹介:
GD ライブラリは、PHP で画像を処理するためのライブラリです。画像を作成、編集、出力するための一連の機能を提供します。 GD ライブラリを使用するには、PHP に GD 拡張ライブラリがインストールされていることを確認する必要があります。

テキスト透かしの追加:
画像にテキスト透かしを追加するには、まず GD ライブラリの関数を使用してキャンバスを作成し、元の画像をキャンバスにロードする必要があります。

<?php
// 创建画布
$image = imagecreatetruecolor(500, 300);
// 载入原始图片
$originalImage = imagecreatefromjpeg('path/to/your/image.jpg');
// 在画布上绘制原始图片
imagecopy($image, $originalImage, 0, 0, 0, 0, 500, 300);

// 添加文字水印
$font = 'path/to/your/font.ttf';
$color = imagecolorallocate($image, 255, 255, 255); // 水印文字颜色
$text = 'Your Watermark Text';
imagettftext($image, 20, 0, 50, 50, $color, $font, $text);

// 输出图片
header('Content-Type: image/jpeg');
imagejpeg($image);

// 清理资源
imagedestroy($image);
imagedestroy($originalImage);
?>

上記のコードでは、まず imagecreatetruecolor() 関数を使用して、サイズ 500x300 のキャンバスを作成します。次に、imagecreatefromjpeg() 関数を使用して、元の画像をキャンバスに読み込みます。次に、imagettftext() 関数を使用して、テキストの透かしをキャンバスに追加します。最後に、imagejpeg() 関数を使用して、変更した画像をブラウザに出力します。

画像透かしの追加:
テキスト透かしに加えて、画像透かしも追加できます。画像の透かしを追加するプロセスは、キャンバスに描画されたコンテンツが別の画像に変更されることを除いて、テキストの透かしを追加するプロセスと似ています。

<?php
// 创建画布
$image = imagecreatetruecolor(500, 300);
// 载入原始图片
$originalImage = imagecreatefromjpeg('path/to/your/image.jpg');
// 在画布上绘制原始图片
imagecopy($image, $originalImage, 0, 0, 0, 0, 500, 300);

// 添加图片水印
$watermark = imagecreatefrompng('path/to/your/watermark.png');
imagecopy($image, $watermark, 0, 0, 0, 0, 100, 100);

// 输出图片
header('Content-Type: image/jpeg');
imagejpeg($image);

// 清理资源
imagedestroy($image);
imagedestroy($originalImage);
imagedestroy($watermark);
?>

上記のコードでは、まず imagecreatetruecolor() 関数を使用してサイズ 500x300 のキャンバスを作成し、次に imagecreatefromjpeg() 関数を使用します。元の画像をロードします。次に、imagecreatefrompng() 関数を使用して透かし画像を読み込み、imagecopy() 関数を使用して透かしをキャンバスに描画します。最後に、imagejpeg() 関数を使用して画像をブラウザに出力します。

概要:
この記事の導入部を通じて、PHP および GD ライブラリを使用して画像にウォーターマークを追加する方法を学びました。テキスト透かしでも画像透かしでも、GDライブラリの機能で実現できます。これにより、Web サイト開発中に透かしを追加するのが便利になります。 GD ライブラリを学習して実践することで、画像処理と最適化をより適切に実行できるようになります。

以上がPHP および GD ライブラリのチュートリアル: 画像に透かしを追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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