回答
在輸出imagettfbbox
函數之前,可以計算TTF文本的邊界框。不幸的是,沒有直接的縮放方式來適應寬度,所以你必須自己做。
這樣做的一種方法是將默認字體大小爲20的文本傳遞到imagettfbbox
並從中檢索寬度。然後,您可以計算通過計算比例因子多少較小或較大的文字應該是適合你想要的大小:使用
fontSize = 20 * scale;
:
scale = targetWidth/bboxWidth;
然後繪製一個合適大小的文本imagettftext
功能。字體不能以這種方式完美地縮放100%,但您會得到非常好的近似值。
請參閱文檔imagettfbox
here。
它的工作很棒!謝謝! – Asaf
要使比例100%完美,您可以使用字體40進行第二遍,並根據相同輸入字符串的20和40字體大小之間的差異計算比例。 – Programista
也幫助過我.... – arun
while (itsTooBigAccordingToimagettftext() && $fontSize > 0) {
$fontSize--;
}
這將導致「致命錯誤:調用未定義函數itsTooBigAccordingToimagettftext()」。換句話說,請給出一個更好的解答,而不是使用半碼:-) –
Stackoverflow是一個你應該得到指導的地方,而不是一個完整的工作代碼。對我來說這是很好的指導,唯一的錯誤是它應該讀取'itsTooBigAccordingToimagettfbbox()'而不是'itsTooBigAccordingToimagettftext()';-) – Capsule
警告:如果您不小心,*會導致長時間延遲。 – starbeamrainbowlabs
- 1. 自動適合UILabel文本大小,以適應UILabel寬度
- 2. 計算字體大小以適合框架 - 核心文本 - NSAttributedString - iOS
- 3. 設置輸入寬度以適合文本大小
- 4. 自動調整文字大小以適合按鈕的寬度
- 5. SSRS。自動調整字體以適合文本框寬度
- 6. 如何從字體大小計算字符寬度。
- 7. 計算最大的字體大小是否適合?
- 8. 如何調整字體大小以適合UILabel的高度和寬度
- 9. 「最適合」字體大小 - 如何測量句子寬度?
- 10. 圖像大小,將適合Android中的寬度
- 11. jQuery圖像調整大小 - 寬度不適合
- 12. 像素字體大小在imagettftext而不是點大小
- 13. Android:調整EditText字體大小以適合文本到一行
- 14. GWT自動縮放文本字體大小以適合邊界
- 15. 更改字體大小以適合文本塊
- 16. 如何自動調整字體大小以適合文本框的高度/寬度?
- 17. 調整SKLabelNode字體大小以適合?
- 18. 更改NSTextField字體大小以適合
- 19. 如何重新調整大小以適合文本的圖像?
- 20. 適合文本到位圖寬度
- 21. 如何調整和使UILabel的寬度適合文本大小?
- 22. 調整圖像大小以適合div
- 23. 調整圖像大小以適合Imageview
- 24. 調整圖像大小以適合LinearLayout
- 25. 調整圖像大小以適合UIImageView
- 26. 根據可用的寬度和字體計算文本高度?
- 27. 計算字體大小
- 28. 計算字體大小
- 29. iphone - 計算字體大小
- 30. 在textarea中調整字體大小以適合高度
除非是等寬字體,否則不能通過文本長度計算字體大小。並沒有很好的近似。所有W的字符串將佔用比我所有字符串更多的空間。 –