2016-08-22 59 views
2

我想围绕使用换行的QML Text对象绘制一个矩形。 TextMetrics似乎是理想的,但它似乎不支持包装文本。包裹文本的边界框

如何测量文字在Text对象中的布局方式?我是否必须匹配包装逻辑并使用TextMetricsFontMetrics手动计算偏移量?

回答

3

您可以使用contentWidthcontentHeight

Text { 
    text: "..." 
    wrapMode: Text.Wrap 

    Rectangle { 
     border.color: "red" 
     color: "transparent" 
     width: parent.contentWidth 
     height: parent.contentHeight 
    } 
} 
+0

如果我有'文字{宽度:400;高度:400; wrapMode:Text.WordWrap; text:“hi”}'这个矩形将会是一个400x400的方形,而不是仅仅适合单词。 – Phrogz

+0

您可以使用[contentWidth](http://doc.qt.io/qt-5/qml-qtquick-text.html#contentWidth-prop)和[contentHeight](http://doc.qt.io/qt -5/QML-qtquick-text.html#或contentHeight - 丙)。 – jpnurmi

+0

回答更新:) – jpnurmi