19
我使用Imagick來生成簡單的徽標,它們只是背景上的文本。有沒有辦法判斷一個字體是否支持Imagick中的給定字符?
我通常循環所有可用的字體,以向用戶呈現每種字體(每種字體一個圖像)的不同渲染選擇。
問題是,一些字體不支持ASCII字符(我認爲它們只是爲給定的語言設計的)。我猜想某些支持ASCII字符的字體也會失敗,並顯示非ASCII字符。
不管怎麼說,我最終圖像,如這些:
是否有Imagick
一個綱領性的方式告訴給定的字體是否支持給定的字符串中的所有字符?
這將幫助我過濾掉那些不支持用戶輸入的文本的字體,並避免顯示上面那些垃圾圖像。
經過一番Google搜索後,它看起來令人懷疑 - 看起來你不得不直接解析字體文件,這是不平凡的。 –
@Pekka웃我肯定會避免這樣做...也許除了Imagick之外,還有其他庫可以查詢TTF字體,希望有人會對此有所瞭解! – Benjamin
可能不在PHP中。 * nix命令行上有一些工具:[從Ubuntu的Font * .ttf文件獲取支持的Unicode範圍](http://superuser.com/q/409317)但顯然它們不是100%可靠的 –