我一直對QSvgRenderer和文本元素有點麻煩;每次我調用boundsOnElement()時,我都會返回一個正確對應於文本元素左上角的QRect(當然,在應用matrixForElement()之後),但其寬度和高度始終爲零。QSvgRenderer boundsOnElement()總是返回文本元素的大小0,0
我正在使用PySide,所以有可能某些未實現的Python層出錯,但poor support of SVG text in Qt and elsewhere讓我覺得不對。有沒有人:
- 直接經歷過這種使用Qt,
,更重要的是:
- 有任何想法如何獲得Qt中的SVG文本元素的大小?
我在考慮嘗試根據字體大小,字符串長度等手動猜測,但這似乎很容易出錯,如果可以完成,我想正確地做到這一點。如果任何人有任何排版的經驗,我需要考慮的事情的指針,如果我必須破解這個,當然是受歡迎的。
對於後代,我最終使用了等寬字體,截取了截圖,用手測量字母的寬度,並將該寬度乘以字符串的長度。這顯然不是實現這一目標的最佳方式,但它至少可行。儘管如此,我並不是信使的忠實粉絲,所以仍然歡迎回答/評論。 – yasashiku
我想你遇到了這個bug:https://bugreports.qt-project.org/browse/QTBUG-2002 – rutsky