php类库给现有的图片加文字水印,代码不是很完善,欢迎大家多多指教!代码如下:
<?php /*PHP图片加文字水印类库 QQ:3697578482 伤心的歌 该类库暂时只支持文字水印,位置为右下角,颜色随机 调用方法: 1、在需要加水印的文件顶部引入类库: include_once 'imageClass.php'; 2、声明新类: $tpl=new image_fu; 3、给图片水印提供参数: $tpl->img(图片路径,水印文字,字体路径,字体大小,字体角度); 比如:$tpl->img('abc.jpg','这是水印文字','ziti.ttf',30,0) */ class image_fu{ private $image; private $img_info; private $img_width; private $img_height; private $img_im; private $img_text; private $img_ttf=''; private $img_new; private $img_text_size; private $img_jd; function img($img='',$txt='',$ttf='',$size=12,$jiaodu=0){ if(isset($img)&&file_exists($img)){//检测图片是否存在 $this->image =$img; $this->img_text=$txt; $this->img_text_size=$size; $this->img_jd=$jiaodu; if(file_exists($ttf)){ $this->img_ttf=$ttf; }else{ exit('字体文件:'.$ttf.'不存在!'); } $this->imgyesno(); }else{ exit('图片文件:'.$img.'不存在'); } } private function imgyesno(){ $this->img_info =getimagesize($this->image); $this->img_width =$this->img_info[0];//图片宽 $this->img_height=$this->img_info[1];//图片高 //检测图片类型 switch($this->img_info[2]){ case 1:$this->img_im = imagecreatefromgif($this->image);break; case 2:$this->img_im = imagecreatefromjpeg($this->image);break; case 3:$this->img_im = imagecreatefrompng($this->image);break; default:exit('图片格式不支持水印'); } $this->img_text(); } private function img_text(){ imagealphablending($this->img_im,true); //设定颜色 $color=imagecolorallocate($this->img_im,rand(0,255),rand(0,255),rand(0,255)); $txt_height=$this->img_text_size; $txt_jiaodu=$this->img_jd; $ttf_im=imagettfbbox($txt_height,$txt_jiaodu,$this->img_ttf,$this->img_text); $w = $ttf_im[2] - $ttf_im[6]; $h = $ttf_im[3] - $ttf_im[7]; //$w = $ttf_im[7]; //$h = $ttf_im[8]; unset($ttf_im); $txt_y =$this->img_height-$h; $txt_x =$this->img_width-$w; //$txt_y =0; //$txt_x =0; $this->img_new=@imagettftext($this->img_im,$txt_height,$txt_jiaodu,$txt_x,$txt_y,$color,$this->img_ttf,$this->img_text); @unlink($this->image);//删除图片 switch($this->img_info[2]) {//取得背景图片的格式 case 1:imagegif($this->img_im,$this->image);break; case 2:imagejpeg($this->img_im,$this->image);break; case 3:imagepng($this->img_im,$this->image);break; default: exit('水印图片失败'); } } //显示图片 function img_show(){echo '<img src="/static/imghwm/default1.png" data-src="'.$this- alt="php图片添加文字水印实现代码_php技巧" >image.'" class="lazy".$this->image.'" border="0" alt="'.$this->img_text.'" />';} //释放内存 private function img_nothing(){ unset($this->img_info); imagedestroy($this->img_im); } } ?>
以上就是本文的全部内容,希望对大家的学习有所帮助。

Laravel使用其直觀的閃存方法簡化了處理臨時會話數據。這非常適合在您的應用程序中顯示簡短的消息,警報或通知。 默認情況下,數據僅針對後續請求: $請求 -

PHP日誌記錄對於監視和調試Web應用程序以及捕獲關鍵事件,錯誤和運行時行為至關重要。它為系統性能提供了寶貴的見解,有助於識別問題並支持更快的故障排除

PHP客戶端URL(curl)擴展是開發人員的強大工具,可以與遠程服務器和REST API無縫交互。通過利用Libcurl(備受尊敬的多協議文件傳輸庫),PHP curl促進了有效的執行

Laravel 提供简洁的 HTTP 响应模拟语法,简化了 HTTP 交互测试。这种方法显著减少了代码冗余,同时使您的测试模拟更直观。 基本实现提供了多种响应类型快捷方式: use Illuminate\Support\Facades\Http; Http::fake([ 'google.com' => 'Hello World', 'github.com' => ['foo' => 'bar'], 'forge.laravel.com' =>

您是否想為客戶最緊迫的問題提供實時的即時解決方案? 實時聊天使您可以與客戶進行實時對話,並立即解決他們的問題。它允許您為您的自定義提供更快的服務

文章討論了PHP 5.3中介紹的PHP中的晚期靜態結合(LSB),允許靜態方法的運行時間分辨率調用以更靈活的繼承。 LSB的實用應用和潛在的觸摸


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),