正如指出的用于阅读反色 PDF 的软件 (Windows),而不是使用非常white
非常非常的black
配色方案(这会产生非常令人讨厌的对比度),通常最好使用自定义配色方案,例如light grey
on dark grey
(这对眼睛更友好,并且在屏幕上阅读 PDF 文档时可以减少眼睛疲劳) 。
在 Evince 中激活时View > Inverted Colors
,该程序实际上会反转颜色并生成不良的非常white
配色black
方案。如何配置 Evince 以使用light grey
ondark grey
配色方案替换颜色?
(我知道 Adobe Reader 可以做到这一点,但我更喜欢在日常使用中使用 Evince。)
答案1
将evince的背景颜色更改为浅绿色,保护您的眼睛
配置编译环境和下载源码
sudo apt source evince
将光源更改为您的颜色,例如浅绿色(R:199,G:237,B:204)。编辑功能ev_document_misc_invert_surface在文件中:libdocument/ev-document-misc.c在第 467 行
改变
cairo_set_operator (cr, CAIRO_OPERATOR_DIFFERENCE);
cairo_set_source_rgb (cr, 1., 1., 1.);
到
cairo_set_operator (cr, CAIRO_OPERATOR_DARKEN);
cairo_set_source_rgb (cr, 0.8, 0.9098, 0.8117647);
配置并进行安装
cd evince
./configure --prefix=$YOUR-PLACE --enable-nls --disable-scrollkeeper --disable-dbus --disable-debug --disable-tests --disable-nautilus --disable-thumbnailer --disable-previewer --disable-comics --without-keyring --without-gconf --without-gtk-unix-print
然后make,我得到错误:
Making all in synctex
make[3]: Entering directory '/home/luopeng/Downloads/evince-3.28.4/cut-n-paste/synctex'
CC libsynctex_la-synctex_parser.lo
CC libsynctex_la-synctex_parser_utils.lo
synctex_parser_utils.c:106:29: error: format string is not a string literal [-Werror,-Wformat-nonliteral]
result += vfprintf(stderr, reason, arg);
^~~~~~
1 error generated.
Makefile:545: recipe for target 'libsynctex_la-synctex_parser_utils.lo' failed
make[3]: *** [libsynctex_la-synctex_parser_utils.lo] Error 1
当然,可以通过以下方式修复它:
pragma GCC diagnostic push
pragma GCC diagnostic ignored "-Wformat-nonliteral"
result = fprintf(stderr,"SyncTeX ERROR: ");
result += vfprintf(stderr, reason, arg);
result += fprintf(stderr,"\n");
pragma GCC diagnostic pop
在ubuntu18.04版本中,我发现了几个与上述情况类似的错误,我忽略了GCC来修复它们。(请在以下代码中的pragma前添加#)
pragma GCC diagnostic push
pragma GCC diagnostic ignored "-Wformat-nonliteral"
the code where the errors occur
pragma GCC diagnostic pop
然后更改配置/usr/share/applications/evince.desktop
chang Exec=$YOUR-Evince-PLACE/bin/evince %U
当点击视图 → 反转颜色,您的背景颜色将变为浅绿色。
好好享受!