这是图片上的QPixmap(在QLabel中)。问题是:我已经通过 xrdp 从 Windows 8.1 连接到 Ubuntu 15.04,并使用 Pyqt5 gui 运行我的 python 应用程序。突然间,好像没有红色 channel 了(图片上的蓝色车实际上是红色的)。
我在 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)
最佳答案
关于python - Pyqt5:像素图颜色问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30677305/