[PyQt] Problem with boundingRect in PyQt snapshot
Jeremy Sanders
jeremy at jeremysanders.net
Wed Sep 16 20:04:48 BST 2009
Hi - for some reason the following code does not produce the
correct answer after updating PyQt.
On Ubuntu with the PyQt 4.4.4 package the following returns
18.0
from PyQt4.QtGui import *
from PyQt4.QtCore import *
import sys
app = QApplication(sys.argv)
pix = QPixmap(128, 128)
p = QPainter(pix)
font = QFont("Times New Roman", 20)
fm = QFontMetricsF(font, p.device())
print fm.boundingRect(QChar('0')).height()
On the same system with the same Qt (4.5.0), PyQt-x11-
gpl-4.6-snapshot-20090906 and returns 32.0!
The text is misaligned when using height to align it using
the snapshot.
My guess is that the QChar is being promoted to QString. This
function returns a different result for QString, so it breaks
my code. The QString version returns the font height, not the
height of the character given.
Jeremy
--
http://www.jeremysanders.net/
More information about the PyQt
mailing list