GD庫可以用來處理圖片浮水印,有的環境下可能有人會發現GD產生的水印文字為亂碼。本文就以解決GD庫產生浮水印亂碼的問題做一個分享。
最近一個專案進行了伺服器遷移,部署後發現,其中一個為圖片添加水印文字的功能出現了亂碼問題,確認功能代碼不存在問題,同時項目代碼都是使用UTF-8編碼,不存在編碼問題,也檢查排除了字體檔案出現問題的可能性,最終查閱資料後鎖定到了一個php編譯參數 --enable-gd-jis-conv.
--enable-gd-jis-conv:
如果PHP編譯時啟用– enable-gd-jis-conv選項的話,那麼非ASCII字元(例如漢字、拼音、希臘文和箭頭) 會被當成EUC-JP編碼,最終導致正常的中文變成亂碼
#解決方案:
1.移除--enable-gd-jis-conv 選項,重新編譯php
#2.將字元轉換為html實體
mb_convert_encoding ('测试', 'HTML-ENTITIES', 'UTF-8');
相關建議:
#php圖片處理之使用imagecopy函數新增圖片水印實例
以上是GD庫產生水印亂碼的解決辦法的詳細內容。更多資訊請關注PHP中文網其他相關文章!