php 驗證碼影象報錯無法找到/開啟字型(Warning: imagettftext(): Could not find/open font)的解決方法
發生這種錯誤的原因:當使用低於2.0.18的GD庫版本時,space
字元(而不是分號)被用作不同字型檔案的“路徑分隔符”。意外使用此功能將導致警告訊息:Warning: Could not find/open font
。對於這些受影響的版本,唯一的解決方案是將字型移動到不包含空格的路徑。
配置環境:wamp;
1.php的FreeType/TrueType支援已經新增;
2.字型檔案路徑沒有問題;
imagefttext()函式和imagettftext()函式報錯的解決方法是一樣的;
解決方法:使用realpath()函式把字型檔案路徑改為絕對路徑;
$fontfile
=realpath($fontfile
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
以下內容是imagefttext() 和imagettftext ()的作用和引數介紹
版本支援(PHP 4> = 4.0.7,PHP 5,PHP 7)
imagefttext—使用 FreeType 2 字型將文字寫入影象
說明:imagefttext(resource$image
,float$size
,float$angle
,int$x
,int$y
,int$color
,string$fontfile
,string$text
[,array$extrainfo
] );
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
版本支援 (PHP 4, PHP 5, PHP 7)
imagettftext—用 TrueType 字型向影象寫入文字
說明:imagettftext(resource$image
,float$size
,float$angle
,int$x
,int$y
,int$color
,string$fontfile
,string$text
) ;
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
引數介紹
image:
由圖象建立函式(例如imagecreatetruecolor())返回的圖象資源。size:
以磅為單位使用的字型大小。angle:
以度為單位的角度,以0度為從左到右閱讀文字。較高的值表示逆時針旋轉。例如,值90將導致從下到上的閱讀文字。x:
由x
和給出的座標y
將定義第一個字元的基點(大約是字元的左下角)。這不同於imagestring(),其中x
和y
定義第一個字元的左上角。例如,“左上”是0、0。y:
y座標。這將設定字型基線的位置,而不是字元的最底部。color:
文字所需顏色的索引,請參見imagecolorexact()。fontfile:
您要使用的TrueType字型的路徑。text:
要插入影象的文字。
extrainfo:
鍵 | 型別 | 含義 |
---|---|---|
linespacing |
浮動 | 定義繪圖線間距 |