电脑厂商并没有为 Linux 提供驱动之类的。显示器校色也得自己弄。没有条件自己校色,就用官方发布的显示器文件凑合弄弄。但是联想似乎并没有为这个显示器提供颜色文件(不知道提供显示器 INF 还有什么用)。这是根据当时的显示器 INF 文件(版本 6.06.0.0)做的记录。该文件的说明文件是这个。
下载显示器文件后可以通过 innoextract
提取其中的文件。innoextract 可以直接从 openSUSE 官方源中安装,
cnzhx@a:~> sudo zypper install innoextract
然后通过命令行提取文件,
cnzhx@a:~/Downloads/T470s> innoextract n1qoi10w.exe Extracting "ThinkPad Monitor File for Windows 10 64bit" - setup data version 5.5.7 (unicode) - "app/TPFLX.ICM" (1.09 KiB) - "app/TPFLX60.ICM" (1.09 KiB) - "app/tplcd.cat" (24 KiB) - "app/TPLCD.ICM" (2.93 KiB) - "app/TPLCD.INF" (57.7 KiB) - "app/TPLCD100.ICM" (1.01 KiB) - "app/TPLCD60.ICM" (1.01 KiB) - "app/TPLCD95.icm" (2.93 KiB) - "app/TPMB60.ICM" (1.02 KiB) - "app/TPMB72.ICM" (994 B) - "app/TPMB72_1.ICM" (1.02 KiB) - "app/dpinstWaterMark/DpinstWaterMark.bmp" (532 KiB) - "app/dpinstWaterMark/DpinstWaterMark_right.bmp" (532 KiB) - "app/dpinst.exe" (1 MiB) - "app/dpinst.xml" (27.4 KiB) Done.
然后可以按照 ThinkWiki 上的方法查找显示器的代号。虽然 openSUSE Tumbleweed 社区有朋友的个人用户源中有 monitor-edid
这个程序,但是在我的电脑上并没有找到对应的显示器 EISA ID。之前曾经检查过有数据的。暂时不知道是什么原因。下面是直接输出系统 edid 的数据(参考这里),
cnzhx@a:~> ls /sys/class/drm/*/edid | xargs -i{} sh -c "cat {}" �������6▒�x���UN�&PTaȠ�<P( �5�▒ �AUO �B140QAN01.5
至少看出来是 AUO 的显示器 B140QAN01.5
。
于是就直接看看提取的 TPLCD.INF 文件中有什么。发现其显示器只有那么几种。然后就看看最大分辨率为 2560×1440 的 14″ IPS 屏有哪些。按照文件中的格式写表达式过滤,
cnzhx@a:~/Downloads/T470s/app> grep -i "14\" Wide QHD 16:9 IPS 2560x1440" TPLCD.INF %TPWQHDF% = TPLCDWQHDFG60.Install.NTx86, Monitor\LEN40A4 ; 14" Wide QHD 16:9 IPS 2560x1440 F Gamut60 %TPWQHDF% = TPLCDWQHDFN.Install.NTx86, Monitor\LEN40AA ; 14" Wide QHD 16:9 IPS 2560x1440 F, No color profile %TPWQHDF% = TPLCDWQHDFN.Install.NTx86, Monitor\LEN40AE ; 14" Wide QHD 16:9 IPS 2560x1440 F, No color profile, 500nit (AUO) %TPWQHDF% = TPLCDWQHDFN.Install.NTx86, Monitor\LEN40AF ; 14" Wide QHD 16:9 IPS 2560x1440 F, No color profile, 500nit (JDI) %TPWQHDF% = TPLCDWQHDFG60.Install, Monitor\LEN40A4 ; 14" Wide QHD 16:9 IPS 2560x1440 F Gamut60 %TPWQHDF% = TPLCDWQHDFN.Install, Monitor\LEN40AA ; 14" Wide QHD 16:9 IPS 2560x1440 F, No color profile %TPWQHDF% = TPLCDWQHDFN.Install, Monitor\LEN40AE ; 14" Wide QHD 16:9 IPS 2560x1440 F, No color profile, 500nit(AUO) %TPWQHDF% = TPLCDWQHDFN.Install, Monitor\LEN40AF ; 14" Wide QHD 16:9 IPS 2560x1440 F, No color profile, 500nit(JDI)
看起来只有那个编号为 LEN40AE
的是 AUO 的显示器。但是没有颜色文件(No color profile)。下面按照 ThinkWiki 上的方法接着找对应的 ICM 文件试试看。
cnzhx@a:~/Downloads/T470s/app> grep -A 2 \\[TPLCDWQHDFN.Install] TPLCD.INF [TPLCDWQHDFN.Install] ; Wide QHD 16:9 2560x1440 IPS, No color profile DelReg=DEL_CURRENT_REG AddReg=HD2560, DPMS
果然,AddReg
后面并没有颜色文件。
后来发现之前参考的那个测评帖子中提供了他们自己校色得到的颜色文件 B140QAN01_5.icm
,而他们那台机器刚好也是 AU Optronics (B140QAN01.5) 的显示器。可以用来做个对比。
把颜色文件放到用户目录的对应文件夹中,比如 kolor-manager
默认的是这里,
~/.local/share/color/icc/devices/Display/
然后还需要让 KDE 支持设置校色文件。这个可以参考 KDE UserBase。
首先需要安装 Kolor-Manager 或者其它颜色管理软件 。这里用 Kolor-Manager,
cnzhx@a:~> sudo zypper install kolor-manager
然后会在「系统设置(System Settings)」中出现一个「颜色管理(Colour Managment)」的模块。
打开「颜色管理(Colour Managment)」,在第一个选项卡「设备(Devices)」那里会出现默认的显示器「AU Optronics 5430」。不知道这个编号对不对,因为上面查到的是 AUO1536。如果在这个显示为 :0.0
的显示器设备的后面选择「自动(Automatic)」的话,它会自动从网上下载一个颜色文件。如果取消勾选下面的「仅显示设备相关的 ICC 档案(Show only device related ICC profiles)」的话,就能在上面查看到我们刚才放到那个文件夹里的颜色文件了。选择 B140QAN01_5.icm
即可。
不得不说,当我在 AU Optronics 5430 _xorg
和 B140QAN01_5.icm
这两个档案之间来回切换的时候,屏幕显示的变化相当明显:从刺眼的炫白变到了稍稍有些泛紫的白;在稍微适应一会儿之后再去看之前的白的时候就觉得有些泛黄。而前面提取的 ThinkPad 的显示器文件里面的各个 ICM 文件与自动下载的 AU Optronics 5430 _xorg
并没有可以察觉的区别。
看来没有专业的校准设备还是白搭。©
本文发表于水景一页。永久链接:<https://cnzhx.net/blog/display-calibration-for-thinkpad-t470s-in-opensuse-kde/>。转载请保留此信息及相应链接。
引用通告: 在 T470s 上折腾 Linux 滚动发行版 openSUSE Tumbleweed 记录汇总 | 水景一页