2009-09-16 101 views
2

我想打开一个PNG图像,并通过QImage和QPainter写入一些文本(水印)。该代码在Linux上可以运行100%,但是当我在Windows XP上运行它时(尚未用任何其他版本的Windows进行测试),文本从不写入映像。我在try/except块中有代码,但没有返回错误。PyQt4 - 图像水印

image = QtGui.QImage('demo.png') 

painter = QtGui.QPainter() 
painter.begin(image) 
painter.setOpacity(0.8) 
painter.setPen(QtCore.Qt.blue) 
painter.setFont(QtGui.QFont('arial', 12)) 
painter.drawText(image.rect(), QtCore.Qt.AlignCenter, 'Watermark') 
painter.end() 

image.save('demo.png') 

使用Python 2.6.2,4.5.4 PyQt的

任何想法?

回答

0

我想到的第一件事可能是它没有在Windows上找到指定的字体。

+0

诶,该文档表明,如果指定的家人没有找到,它会挑一个又一个。听起来像mgb的答案更可能是正确的。如果结果如此,我会删除我的。 – retracile

0

我的猜测是,你正在使用Windows上没有做tranparency,无论PNG LIB(正常)