2009-09-16 8 views
2

Я пытаюсь открыть изображение PNG и написать текст (водяной знак) через QImage и QPainter. Код работает 100% в Linux, но когда я запускаю его в Windows XP (не тестировал ни с какой другой версией Windows), текст никогда не записывается в изображение. У меня есть код в блоке try/except, но ошибки не возвращаются.PyQt4 - Image Watermark

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, PyQt 4.5.4

Любые идеи?

ответ

0

Первое, что приходит мне на ум, возможно, не находит указанный шрифт в Windows.

+0

да, то документы свидетельствуют о том, что, если указанная семья не найден, он будет выбрать другой. Мне кажется, что ответ mgb скорее прав. Если так получится, я удалю мой. – retracile

0

Мое предположение было бы, что все PNG Lib вы используете на Windows, не делает tranparency (правильно)