qt设置QGraphicsTextItem中的行距.height
我在画布上有一些小的图形站点,需要显示一些文本。当有换行符时,垂直行距不必要地大,这使得文本被绘制在图形项目之外。我一直在寻找一种在QGraphicsTextItem上设置行距(或高度)的方法,但运气不好 我试过了qt设置QGraphicsTextItem中的行距.height,qt,qt4.8,Qt,Qt4.8,我在画布上有一些小的图形站点,需要显示一些文本。当有换行符时,垂直行距不必要地大,这使得文本被绘制在图形项目之外。我一直在寻找一种在QGraphicsTextItem上设置行距(或高度)的方法,但运气不好 我试过了 setHtml("<div line-height=100%>some text</div>") 这是Python/py边,但其他API与C++完全一样。HTML当前作为参数“text”传递到init方法中。QGraphicsTextItem的父项是QGr
setHtml("<div line-height=100%>some text</div>")
这是Python/py边,但其他API与C++完全一样。HTML当前作为参数“text”传递到init方法中。QGraphicsTextItem的父项是QGraphicsItem
请帮忙,这真是个麻烦干杯,拉尔斯 当项目html代码中的
导致换行时,不会再现此行为。使用“test1 test2”
内容和setTextWidth
自动换行也可以正常工作。但是当断线是由
标记引起时,就会出现不必要的大行高度。我想这是你的情况。它可以很容易地修复:
item->document()->setDefaultStyleSheet("p { margin: 0; }");
请注意,您需要在设置项目内容之前调用它。此命令不会影响当前内容。我不确定您是否在谈论相同的内容,因为我发现QGraphicsItem没有“document”方法。我使用的是autobreak和setTextWidth,同时“边距”设置文本周围的空间,同时我希望减少行之间的垂直距离。
document
是QGraphicsTextItem
对象的一种方法,该对象由qgraphicscenscene::addText
返回。使用setTextWidth
不会为我重现此问题。你能发布一些你当前实现的代码吗?补充,我对QGraphicsSitem/QGraphicsTextItem的不好误解重温这个问题(我的盘子里有很多):在自动换行“test1 test2”后,边距移动/挤压文本,但不会改变行之间的垂直距离?我应该多解释一下吗?这不可能吗?
item->document()->setDefaultStyleSheet("p { margin: 0; }");