gd庫為圖片加文字水印和圖片輸出
$number = $result["certno"];//設置水印內容 $file = "./Uploads/certs/" . $number . ".jpg"; if(!is_file($file)){ $src = "./template/public/img/zhengshu.jpg";//定義圖片地址 $info = getimagesize($src);//獲取圖片信息 $type = image_type_to_extension($info[2], false);//通過編號獲取圖片類型 $fun = "imagecreatefrom".$type;//在內存中創建一樣的圖像 $image = $fun($src);//圖片復制到內存 $font = "./msyh.ttf";//設置字體路徑 $fontbd = "./msyhbd.ttf";//設置字體路徑 $content = $result["authname"];//設置水印內容 $website = $result["auth_domains"];//設置水印內容 //求出水印內容在使用字體下在圖片的四個邊框的xy坐標 $version_fontarea1 = ImageTTFBBox(25,0,$fontbd,$version); $content_fontarea1 = ImageTTFBBox(25,0,$font,$content); $website_fontarea1 = ImageTTFBBox(12,0,$font,$website); $width = $info[0];//獲取圖片寬度 //求出內容應該設置在圖片中的位置(y左邊我是自己一點點試的...x坐標是讓水印內容兩側距離相等) $version_x = ($width - ($version_fontarea1[2] - $version_fontarea1[0])) / 2; $content_x = ($width - ($content_fontarea1[2] - $content_fontarea1[0])) / 2; $website_x = ($width - ($website_fontarea1[2] - $website_fontarea1[0])) / 2; $color = imagecolorallocatealpha($image, 75, 75, 75, 0);//設置顏色 imagettftext($image, 11, 0, 105, 80, $color, $font, $number); imagettftext($image, 25, 0, $version_x, 350, $color, $fontbd, $version); imagettftext($image, 25, 0, $content_x, 520, $color, $font, $content); imagettftext($image, 12, 0, $website_x, 560, $color, $font, $website); //輸出圖片 $fun = "image".$type; $fun($image, $file , 80); imagedestroy($image); } $data = file_get_contents($file);
代碼中依然存在很大問題,因為這樣的做法,意味著有多少個result,就會在文件夾中生成多少張圖片。沒有找到gd庫直接從內存中獲取圖片內容的方法,迫不得已用這個方法
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/25583.html
摘要:我嘗試用重新編譯庫擴展生成,但在中加入后重啟,會報錯。請安裝庫和在我索求答案無果后,我選擇了重新編譯,尷尬某站答案 編譯PHP不帶gd,后續添加gd模塊 在生成圖像驗證碼的時候我們會用到GD庫進行images,我們先安裝它.但是有時候,發現自己已經安裝了GD庫,但是驗證碼還是生成不了這個時候就得檢查一下imagettftext這個函數了 http://php.net/manual/zh...
摘要:本文經授權轉自社區說明是為定制的圖片處理工具它提供了一套易于表達的方式來創建編輯圖片。 本文經授權轉自 PHPHub 社區 說明 Intervention/image 是為 Laravel 定制的圖片處理工具, 它提供了一套易于表達的方式來創建、編輯圖片。 本文章由 The EST Group 成員 @monkey 撰寫, 首發地為 PHPHub 社區. Demo 代碼請見:https...
摘要:前言最近開發遇到后端生成圖片時英文的換行貼代碼字符串相關處理英文字符串換行如果是字母,并且到了換行的地方,則需要看這個字符的下一個字符是否是字母,如果是的話就需要回到上一個不是字母的地方注意中文和英文上一次出現不是字母的索引位置將單個字符存 前言 最近開發遇到后端生成圖片時英文的換行 貼代碼 /* * 字符串相關處理 */ class StringUtils { /** ...
閱讀 2022·2023-04-25 23:30
閱讀 1452·2021-11-24 10:18
閱讀 3070·2021-10-09 09:54
閱讀 2017·2021-10-08 10:05
閱讀 3431·2021-09-23 11:21
閱讀 3161·2019-08-30 15:52
閱讀 1560·2019-08-30 13:05
閱讀 1056·2019-08-30 13:02