這篇文章主要介紹了PHP文字轉圖片功能原理與實現方法,結合具體實例形式分析了php基於gd2擴展庫生成圖片的相關配置及使用方法,需要的朋友可以參考下
具體如下:
這項功能主要用於對郵箱位址、手機等可能被網路爬蟲抓取的重要資訊的處理。將文字轉化為圖片絕對是個好注意。驗證碼的基本生成原理也與此差不多,只是再對文字轉換為圖片的生成過程再複雜化,讓掃描機器無法辨識。 php的文字轉圖片很簡單,先在php的安裝目錄開啟php.ini,找到extension=php_gd2.dll,將前面的引號去掉,開啟php的gd2擴充庫,就能直接使用php的關鍵字,將文字轉圖片。
目錄結構如下,img_generator.php是文字轉圖片所處理的php,index.html是呈現給使用者的頁面。
index.html的程式碼非常非常簡單,搞個img標籤,裡面的src就寫img_generator.php,然後後面帶一個text參數,向img_generator.php發送一個Get請求,img_generator.php這個頁面本質是根據參數,所產生的一張圖片。
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>图片测试</title> </head> <body> <img src="img_generator.php?text=abc@test.com"> </body> </html>
img_generator.php的程式碼如下,透過$_REQUEST["text"];
拿到index.html中的img標籤傳遞過來的text闡述,之後用一系列的php關鍵字,也就是固有的方法產生的圖片即可。
<?php $text=$_REQUEST["text"];//显示的文字 $size=12;//字体大小 $font="c:/windows/fonts/SIMHEI.TTF";//字体类型,这里为黑体,具体请在windows/fonts文件夹中,找相应的font文件 $img=imagecreate(500,24);//创建一个长为500高为16的空白图片 imagecolorallocate($img,0xff,0xff,0xff);//设置图片背景颜色,这里背景颜色为#ffffff,也就是白色 $black=imagecolorallocate($img,0x00,0x00,0x00);//设置字体颜色,这里为#000000,也就是黑色 imagettftext($img,$size,0,0,16,$black,$font,$text);//将ttf文字写到图片中 header('Content-Type: image/png');//发送头信息 imagepng($img);//输出图片,输出png使用imagepng方法,输出gif使用imagegif方法 ?>
實質上,與《php投票系統之增加與刪除投票(管理員篇)》中的原理是一樣的。
################################## #############
以上是PHP文字轉圖片功能的原理的詳細內容。更多資訊請關注PHP中文網其他相關文章!