这是图片中的QPixmap(在QLabel中)。问题是:我已经通过xrdp
从Windows 8.1连接到我的Ubuntu 15.04并使用Pyqt5 gui运行我的python应用程序。突然间,似乎没有红色通道(图片上的蓝色车实际上是红色的)。
当我在Ubuntu上运行它时没问题。 JPG和PNG都出现问题。有人遇到过这样的问题吗?建议?谢谢!
Python 2.7.9
img = '(picture path)'
pixmap = QPixmap(img)
pixmap = pixmap.scaledToHeight(500)
pixmap_label = QLabel(self)
pixmap_label.setPixmap(pixmap)
更新
我发现这不是Pixmap问题,而是Qt问题,因为我将一个按钮设置为红色(使用setStyleSheet),当我从Windows连接时它变为蓝色。
更新
是的,蓝色是红色。原因是,当我通过xrdp
连接时,它不是RGB,而是BGR
更新
一种可能的解决方案是使用QImage.rgbSwapped(),但它仍然不能解决其余GUI的问题。
image_qt = ImageQt(img)
image_qt = image_qt.rgbSwapped()
img = QImage(image_qt)
pixmap = QPixmap(img)
pixmap = pixmap.scaledToHeight(500)
pixmap_label.setPixmap(pixmap)