ホームページ >バックエンド開発 >PHPチュートリアル >PHP 5 テキストと画像のウォーターマークとサムネイルの混合

PHP 5 テキストと画像のウォーターマークとサムネイルの混合

巴扎黑
巴扎黑オリジナル
2016-12-07 14:11:171129ブラウズ

1. 透かしの作成

1. 透かしテキスト

PHP で画像に透かしテキストを挿入するには、主に GD ライブラリが提供する imagettftext() 関数を使用します。

プロセスは次のとおりです: 画像をロード => 透かしテキストの色を調整 => 透かしを追加

<?php
$img = &#39;Desert.jpg&#39;;//图像的路径。这里以 Windows 7 自带的一幅沙漠的图片为例
$img_info = getimagesize($img);
//载入图像到PHP,转成 PHP 可识别的编码
switch($img_info[2]) {
  case 1:
    $res = imagecreatefromgif($img);//返回一图像标识符,代表了从给定的文件名取得的图像。 
    break;
  case 2:
    $res = imagecreatefromjpeg($img);
    break;
  case 3:
    $res = imagecreatefrompng($img);
    break;    
}
// 为一幅图像分配颜色(相当于 PhotoShop 的调色板)
// imagecolorallocate ( resource image, int red, int green, int blue )  返回一个标识符,代表了由给定的 RGB 成分组成的颜色。
$te = imagecolorallocate($res,225,225,225);
//rand(0,10)倾斜度。msyh.ttf 是微软雅黑字体,可在 C:\Windows\Fonts 找到。然后拷贝到该文件的目录下
imagettftext($res,12,rand(0,10),20,80,$te,&#39;msyh.ttf&#39;,"我的博客 www.woqilin.net");
switch($img_info[2]) {
  case 1:
    header("Content-type: image/gif");
    imagegif($res);//以 GIF 格式将图像输出到浏览器
    break;
  case 2:
    header("Content-type: image/jpeg");
    imagejpeg($res);
    break;
  case 3:
    header("Content-type: image/png");
    imagepng($res);
    break;    
}
?>

2. 透かし画像

PHP では、画像に透かしを入れるには imagecopy() 関数を使用します。

りー


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