PHPで透かしテキストとサムネイルを実装する方法

墨辰丷
リリース: 2023-03-28 09:54:01
オリジナル
1550 人が閲覧しました

この記事では、PHP でウォーターマーク テキストとサムネイルを実装する方法を主に紹介し、PHP でウォーターマーク テキストを追加し、サムネイルを生成する関連手順と操作テクニックを完全な例の形式で分析します。詳細は以下の通りです:

<?php
  $im = &#39;xiatian.jpg&#39;;
  $im2 = &#39;winter3.jpg&#39;;
  $img = getImage($im);
  $bimg = getImage($im2);
  //$image = getimagesize($im);
  //print_r($image);
  //Array ( [0] => 150 width
   /*[1] => 150 height
   [2] => 3 图片类型
   [3] => width="150" height="150"
   [bits] => 8
   [mime] => image/png )*/
  //图片复制组合------$bimg----
  imagecopy($bimg, $img, 300, 4, 0, 0, getWidth($im),getHeight($im));
  //加水印文字
  $color = imagecolorallocate($bimg,255, 255, 0);
  $str = "中国";
  $str = mb_convert_encoding($str, "html-entities","utf-8");
  imagettftext($bimg, 42, 0, rand(20,getWidth($im2)-100), rand(40,getHeight($im2)), $color, &#39;MSYH.TTF&#39;, $str);
  //剪切,重新生成缩略图
  $new = imagecreatetruecolor(50, 50);
  imagecopyresized($new, $bimg, 0, 0, 0, 0, 50, 50, getWidth($im2), getHeight($im2));
  //输出到浏览器
  header("Content-Type: image/jpeg");
  //如果为png图片也可正常显示,浏览器负责正确解析
  imagejpeg($new);
  //生成大图,小图
  imagejpeg($new,&#39;small.jpg&#39;);
  imagejpeg($bimg,&#39;big.jpg&#39;);
  function getImage($img_file) {
    $image = getimagesize($img_file);
    //判断是那种图片类型
    switch($image[2]) {
      case 1:
        $img = @imagecreatefromgif($img_file);
        break;
      case 2:
        $img = @imagecreatefromjpeg($img_file);
        break;
      case 3:
        $img = @imagecreatefrompng($img_file);
        break;
    }
    return $img;
  }
  function getWidth($img_file) {
    $image = getimagesize($img_file);
    return $image[0];
  }
  function getHeight($img_file) {
    $image = getimagesize($img_file);
    return $image[1];
  }
?>
ログイン後にコピー

以上がこの記事の全内容となりますが、皆様の学習のお役に立てれば幸いです。


関連する推奨事項:

PHPサムネイル生成と画像

ウォーターマーク詳細な制作

PHP実装

ウォーターマーククラス、画像、テキスト、塗りつぶしカラー領域の追加をサポート

PHP 認識

ウォーターマーク画像関数をランダムに生成する方法

以上がPHPで透かしテキストとサムネイルを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート