我有一個的到來給我一個字符串格式化像PHP GD imagettftext字符編碼,符號失蹤
Ciel Spa at SLSâ„¢ is a celestial dreamscape
我有一個格式腳本,它改變
Ciel Spa at SLS™ is a celestial dreamscape
該腳本更改編碼
return iconv("UTF-8", "ISO-8859-1//TRANSLIT//IGNORE", $str)
上述iconv()通常會將商標符號作爲普通字符TM返回。這對我來說不起作用,所以我用一個字符串取代了符號,我可以在後面找到它。
str_replace("(TM)","™",$str);
這當我在瀏覽器中查看源代碼的偉大工程,但是當我把這個文本imagettftext()的商標符號被忽略,有效地使串
Ciel Spa at SLS is a celestial dreamscape
但當然作爲一個圖像呈現。
我知道商標符號在我使用的字體中受支持,但我不確定它爲什麼會消失。 mb_detect_encoding()返回null,而對於我的大多數字符串,它將返回UTF-8。
我已經準備好了一個堅韌不拔的骯髒的解決方法,因爲迄今爲止沒有任何工作。我嘗試使用html_entity_decode()和str_replace()的組合無濟於事。相同格式化腳本的早期版本組合了長陣列的UTF垃圾字符替換,而不更改字符串的編碼,然後將其提供給imagettftext(),並且看起來很好。我似乎無法得到回...任何想法?
我可以有相關的代碼嗎? – Different55 2012-07-18 22:31:00