Home  >  Article  >  Backend Development  >  Examples of codes to add watermarks or text to php images

Examples of codes to add watermarks or text to php images

WBOY
WBOYOriginal
2016-07-25 08:58:271047browse
This article introduces examples of using PHP code to add watermarks or text to pictures. Friends in need can refer to it.

php watermark code, as follows:

<?php
/**
* 图片加水印、加文字
* edit bbs.it-home.org
*/
header("content-type:image/png");
 
$button_text = "click here";
$color = 'purple';
  
$image = imagecreatefrompng("image/".$color.'.png');  
$width_image = imagesx($image);  
$height_image = imagesy($image);  
  
$width_image_wo_margins = $width_image - (2*2);  
$height_image_wo_margins = $height_image - (2*2);  

//echo $width_image;  
//echo "<br>";  
//Echo $height_image;  
//exit;  
  
$font_size = 88;  
  
//putenv("GDFONTPATH=C:/WINDOWS/Fonts");  
  
$fontname = "ARIAL.TTF";  
  
do  
{  
    $font_size--;  
    $bbox = imagettfbbox($font_size,0,$fontname,$button_text);  
      
    $right_text = $bbox[2];  
    $left_text = $bbox[0];  
    $width_text = $right_text - $left_text;
    $height_text = abs($bbox[7] - $bbox[1]);
}while($font_size > 8 && ($height_text > $height_image_wo_margins || $width_text > $width_image_wo_margins));
  
$text_x = $width_image/2.0 - $width_text/2.0;
$text_y = $height_image/2.0 - $height_text/2.0;
  
if($left_text < 0){  
    $text_x += abs($left_text);
}  
  
$above_line_text = abs($bbox[7]);
$text_y += $above_line_text;
  
$text_y -= 2;
  
$white = imagecolorallocate($image,255,255,255);
  
imagettftext($image,$font_size,0,$text_x,$text_y,$white,$fontname,$button_text);
 
imagepng($image);
imagedestroy($image);
?>

The above code is implemented: Add an English word "click here" above a button image.

Personally, I think it is a relatively simple example of learning PHP image watermarking, suitable for reference by novice friends.



Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn