程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP入門知識 >> PHP教程:ImageTTFText函數實現圖像加文字水印

PHP教程:ImageTTFText函數實現圖像加文字水印

編輯:PHP入門知識

ImageTTFText函數實現PHP圖像加文字水印功能

一個ImageTTFText函數包含了如下的參數

imagettftext (image,size,angle, x, y,color,fontfile,text)

意思是 imagettftext() 將字符串 text 畫到 image 所代表的圖像上,從坐標 x,y(左上角為 0, 0)開始,角度為 angle,顏色為 color,使用 fontfile 所指定的 TrueType 字體文件。根據 PHP 所使用的 GD 庫的不同,如果 fontfile 沒有以 '/'開頭,則 '.ttf' 將被加到文件名之後並且會搜索庫定義字體路徑。

由 x,y 所表示的坐標定義了第一個字符的基本點(大概是字符的左下角)。這和 imagestring() 不同,其 x,y 定義了第一個字符的右上角。

angle 以角度表示,0 度為從左向右閱讀文本(3 點鐘方向),更高的值表示逆時針方向(即如果值為 90 則表示從下向上閱讀文本)。

fontfile 是想要使用的 TrueType 字體的文件名。

text 是文本字符串,可以包含 UTF-8 字符序列(形式為:{)來訪問字體中超過前 255 個的字符。

color 是顏色的索引值。使用某顏色索引值的負值具有關閉防混色的效果

例如下面的 img.php 源碼,應用則可使用為 <img src="img.php">



====================img.php

<?php
Header("Content-type: image/png");
/*通知浏覽器,要輸出圖像*/

//$im = imagecreate(400 , 300);
/*如果沒有指定圖像,可以自定義圖像的大小*/

$im = imagecreatefromjpeg("gd04.jpg");

$pink = ImageColorAllocate($im, 0 , 0 , 0);

$fontfile = "C:\WINDOWS\Fonts\方正靜蕾簡體.ttf";
/* $fontfile 字體的路徑,視操作系統而定,可以是 simhei.ttf(黑體) , SIMKAI.TTF(楷體) , SIMFANG.TTF(仿宋) ,SIMSUN.TTC(宋體&新宋體) 等 GD 支持的中文字體*/

$str = iconv('GB2312','UTF-8','你想要的字符水印');
/*將 gb2312 的字符集轉換成 UTF-8 的字符*/

ImageTTFText($im, 25,10,140,240,$pink,$fontfile,$str);
/* 加入中文水印 */

Imagepng($im);
ImageDestroy($im);
?>



如果需要做成動態URL的水印,則將
$str = iconv('GB2312','UTF-8','你想要的字符水印');
替換使用
$str = iconv('GB2312','UTF-8',$_REQUEST["id"]);
即可
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved