Maison >développement back-end >tutoriel php >Comment implémenter le texte et les vignettes du filigrane en php

Comment implémenter le texte et les vignettes du filigrane en php

墨辰丷
墨辰丷original
2018-05-29 10:01:281561parcourir

Cet article présente principalement la méthode d'implémentation du texte de filigrane et des vignettes en PHP, et analyse les étapes et techniques de fonctionnement pertinentes pour l'ajout de texte de filigrane et la génération de vignettes en PHP sous la forme d'un exemple complet. Les amis dans le besoin peuvent s'y référer.

Les détails sont les suivants :

<?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];
  }
?>

Ce qui précède est l'intégralité du contenu de cet article, je j'espère que cela sera utile à l'étude de chacun.


Recommandations associées :

Génération de vignettes PHP et image FiligraneProduction détaillée

PHP implémente la classe watermark, qui prend en charge l'ajout d'images, de texte et de zones de couleur remplies

PHP implémente la génération aléatoire filigranes Méthodes de fonction d'image

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn