X11

如何避免 24 位彩色遠端 X11 與舊版 Solaris 的顏色通道問題?

  • July 19, 2018

在舊 Solaris 系統 (2.5.x) 上遠端使用帶有TrueColor視覺效果的 XDMCP 上的 CDE 時,螢幕上的像素圖缺少藍色通道並且交換了紅色和綠色通道。

這意味著白色顯示為黃色,綠色顯示為紅色,紅色顯示為綠色,藍色顯示為黑色等。

Solaris XDMCP 登錄,在像素圖中顯示交換的顏色通道 通過 Xming 的 XDMCP 進行 CDE,在像素圖中顯示交換的顏色通道

是否有一些 X 伺服器設置我可以用來覆蓋或解決它,或者與 Solaris 應用程序正在執行的任何操作兼容的替代 X 伺服器?

這不會影響所有螢幕元素;視窗邊框、菜單和按鈕等帶有文本標籤的小元件根據預設的 CDE 配色方案進行著色,並具有它們的正常顏色。作為 xpm 圖像的圖示和其他視覺元素,例如 CDE 前面板的背景圖案和元素,具有不正確的顏色,如前所述。此外,當我在圖示編輯器dticon

無論 XDMCP 客戶端是 Windows 中的 Cygwin/X 還是 Xming 還是 Debian 中的 Xorg,我都有同樣的問題。

如果我在 Debian 中使用 Xorg -depth 8(我猜是選擇PseudoColor視覺效果而不是TrueColour)顏色通道不會交換,並且顏色會按照 256 色模式的預期顯示,但是我寧願支持 24 位顏色並避免增加的不便不必通過虛擬化執行 X 或將 Windows 切換到 256 色模式。

具有準確顏色通道的偽彩色模式的 CDE 桌面

.im8這個特殊問題——不要與更高版本的圖像(例如“歡迎使用 Solaris”啟動螢幕上的圖形)中的類似問題混淆——是 Motif 的一個已知問題:

1255448: cde on Solaris x86 has yellow tinting problem with TrueColor default visual

允許更改預設視覺對像類的 X 伺服器應該能夠解決此問題。

Xorg 和 Xming 記錄了一個選項:

-cc int default color visual class

但是,使用 () 或其常量從 () 傳遞-ccPseudoColor.X.h報告3的預設視覺效果沒有影響xdpyinfo

或者,可以通過為 Solaris 發行版(例如 2.5 → 103947、2.5.1 → 104195)安裝相應 Motif 更新檔的修訂版來修復此問題,該更新檔已修復此問題。

引用自:https://unix.stackexchange.com/questions/455248