python - Pyqt5:像素图颜色问题

标签 python ubuntu pyqt pyqt5

enter image description here

这是图片上的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)

最佳答案

我怀疑你正在点击this bug .

它是在 this message 中向上游提交的(从 Debian,问题被报告给 Qt) .

我怀疑您正在使用 PowerPC?

关于python - Pyqt5:像素图颜色问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30677305/

相关文章:

python - 如何检查浮点值是否为整数

mysql - 文件./ib_logfile101 : 'aio write' returned OS error 122

python - BLAS/LAPACK 未安装 : How to install it?

python - 如何在 Linux 下使用 python 创建一个具有炫酷动画/效果的 GUI 应用程序(如 Cooliris 中的 3D 墙、compiz 效果等...)

python - PyQt - 实现 QAbstractTableModel 以在 QTableView 中显示

C++ 和 PyQt | QCheckBox 的用户定义插槽和连接

python - 在python中使用to_csv和index = False将pandas数据帧写入CSV时丢失数据

python - 什么写入日志文件?

python - 如果 OS Python 版本是 3.5,如何设置 pipenv Python 3.6 项目?

php - 在 ubuntu 上安装语言包 magento2 时出错