วิธีการเปลี่ยนสีพื้นหลัง PDF ในสิ่งที่เห็น?


26

สีพื้นหลังสีขาวเป็นอันตรายต่อดวงตา วิธีการเปลี่ยนสีพื้นหลัง PDF ในสิ่งที่เห็น? ตอนนี้ฉันใช้ evince 3.4.0 ใน Ubuntu 12.04 x64


ฉันต้องทนทุกข์ทรมานจากพื้นหลังสีขาวและฉันเคยใช้ xcalib ด้านล่าง แต่ในปัจจุบันส่วนใหญ่ฉันส่งต่อ KWin ซึ่งมีการสลับสีสำหรับแต่ละหน้าต่างแยกกัน นั่นเป็นเหตุผลที่ฉันใช้กับเครื่องส่วนใหญ่ของ KDE เพราะฉันมี out_of_the_box เพียงแค่ต้องเปิดมันในการตั้งค่า
Grzegorz Wierzowiecki

ฉันแนะนำแค่วิธีแก้ปัญหาเท่านั้น แต่Zathuraเป็นโปรแกรมดูไฟล์ PDF อีกตัว (เท่ห์จริงๆ) และพื้นหลังเป็นสีดำ มิฉะนั้นคุณสามารถปรับแต่งชุดรูปแบบ Ubuntu ทั่วโลกของคุณ (เช่นคัดลอกชุดรูปแบบ Ambiance จาก/usr/share/themes/Ambianceไปยัง$HOME/.themes/และปรับแต่งคำจำกัดความของสีในgtk.css) น่าเสียดายที่ฉันไม่ทราบว่าตัวแปรเฉพาะสำหรับการวิวัฒนาการอยู่ที่ไหนดังนั้นแอปทั้งหมดของคุณจะมี XD พื้นหลังสีดำ โดยส่วนตัวแล้วฉันมีความสุขมากกว่าด้วยธีมที่มืดสนิท แต่มันเป็นเรื่องของรสนิยม
PlasmaBinturong

คำตอบ:


29

ฉันแน่ใจว่าคุณสามารถสลับสีได้ แต่ฉันไม่แน่ใจว่าคุณสามารถใช้สีอื่นที่คุณเลือกเป็นสีพื้นหลังได้หรือไม่

เพื่อกลับสี

ไปที่: มุมมอง -> สีที่กลับด้าน ( Ctrl+ I)

หวังว่านี่จะช่วยได้


1
ฉันต้องการเปลี่ยนสีกลับเป็นสีอื่นเช่นเขียวอ่อน ฉันคิดว่านี่เป็นเรื่องง่ายที่จะนำไปใช้กับผู้พัฒนา evince
waterloo2005

1
ใช่มันเป็นไปได้มาก หลังจากความคิดเห็นของคุณฉันเพิ่งผ่านซอร์สโค้ด evince และพบสิ่งนี้ EV-เอกสาร misc.cif (inverted_colors) cairo_set_source_rgb (cr, 0, 0, 0); elseถือส่วนสีคว่ำ ดังนั้นโดยการเปลี่ยนสิ่งนี้ฉันคิดว่าเราสามารถบรรลุสีที่เราต้องการ แต่ฉันไม่ได้รวบรวมและทดสอบสิ่งนี้ คุณสามารถลองเสี่ยงโชค
devav2

จากนั้นจะเปลี่ยนสีกลับเป็นสีเขียวอ่อนได้อย่างไร ฉันเป็นมือใหม่
waterloo2005

15

ฉันได้ต่อสู้กับปัญหานี้มาระยะหนึ่งแล้ว ทางออกที่ดีที่สุดที่ฉันคิดไว้คือใช้xcalibคำสั่งผ่านตัวเรียกใช้แอปพลิเคชันสองตัวที่เข้าถึงได้ง่ายบนแถบเครื่องมือ / แอพของฉัน ฉันตั้งชื่อพวกเขาว่า " โหมดหน้าจอ " และ " โหมดกระดาษ "

ด้วยความช่วยเหลือของxcalibฉันสามารถเปิดใช้งานการกำหนดค่าหน้าจอที่แตกต่างกันสองแบบได้ทันทีโดยไม่ต้องใช้โปรไฟล์และส่วนขยายอื่น ๆ โปรดทราบว่าxcalibเป็นซอฟต์แวร์ที่เล็กที่สุดและจะไม่ใช้พื้นที่หรือหน่วยความจำใด ๆ เนื่องจากผ่านการกำหนดค่าไปยังการ์ดแสดงผลและออก คุณสามารถลืมเกี่ยวกับซอฟต์แวร์ผู้เชี่ยวชาญระดับสูงเช่น argyll + dispcalgui เป็นต้น

ติดตั้งครั้งแรกxcalibกับ:

sudo apt-get install xcalib

จากนั้นตั้งค่าตัวเรียกใช้งานสองรายการของคุณด้วยคำสั่งเหล่านี้:

วิธีตั้งค่า "Paper Mode" ใช้:

xcalib -red 1.7 1 64 -green 1.7 1 57 -blue 1.7 1 28 -alter

หากต้องการตั้งค่ากลับเป็น "การใช้โหมดหน้าจอ":

xcalib -clear

อย่างที่คุณสามารถบอกได้ว่าฉันกำลังปรับพารามิเตอร์ต่อแชแนลและความพยายามของฉันคือการสร้าง Kindle เหมือนผลลัพธ์ เห็นได้ชัดว่าคุณสามารถและควรปรับสิ่งเหล่านี้ตามความต้องการและหน้าจอของคุณ แน่นอนว่านี่เป็นการปรับหน้าจอโดยรวม แต่สำหรับฉันอย่างน้อยนี่เป็นพรสำหรับ IDEs สีขาวทั้งหมด จะใช้เวลาสองสามนาทีเพื่อทำความคุ้นเคย แต่คุณจะไม่กลับไป มันเป็น Eye-Saver ที่แท้จริง!

การใช้คำสั่งคือxcalib -ChannelName Gamma Brightness Contrastและทั้งหมดถูกคั่นด้วยช่องว่างเดียว -alterฟีดสัญญาณไปยังอะแดปเตอร์ -clearส่ง "ล้าง" ข้อความอะแดปเตอร์เพื่อล้างการปรับทั้งหมดกลับมาเป็นปกติ

เคล็ดลับที่สำคัญ : เพื่อไม่ให้ความดำคล้ำหลุดของตัวอักษรให้ความสว่างอยู่ที่ 1 เสมอดังที่แสดงด้านบน เล่นรอบกับ Gamma และความคมชัดเท่านั้น แกมม่าจะให้ผลลัพธ์ที่มืดกว่า / จางกว่าและเล่นด้วยความคมชัดระหว่างแชแนลจะปรับสีที่ได้

เคล็ดลับอื่น : ตั้งค่าทางลัด "โหมดกระดาษ" เพื่อรีเซ็ตเป็นครั้งแรกจากนั้นตั้งค่าสี (เช่น "xcalib -clear && xcalib -red 1.7 1 64 -green 1.7 1 57 -blue 1.7 1 28 -alter") ดังนั้นหาก ใช้งานโดยไม่ตั้งใจหลายครั้งไม่เปลี่ยนสีที่แสดงเป็นสีดำ

ฉันหวังว่านี่จะเป็นประโยชน์สำหรับคุณหลาย ๆ คน!


2
ดังที่ฉันสังเกตเห็นว่า 1.7 แกมม่าเป็นเพียงแค่การแตกการลดรอยหยักตัวอักษร (รวมถึงความจริงที่ว่าฉันใช้ตัวเลขที่ตลกจริง ๆ ข้างต้น) คำสั่งที่เหมาะสมกว่าสำหรับ "โหมดกระดาษ" จะเป็น ...xcalib -red 1.5 0 65 -green 1.5 0 60 -blue 1.5 0 25 -alter
GRE2608

ในช่วงเวลาของการเขียน xcalib เข้ากันไม่ได้กับ Wayland (ตัวแสดงผลหน้าต่าง) เนื่องจากแต่ละกระบวนการได้รับอนุญาตให้วาดภายในหน้าต่างที่เกี่ยวข้อง
Tijs Maas

4

ฉันพบ Okular ว่าเป็นโปรแกรมดู PDF ที่ดีกว่า มันช่วยให้คุณเปลี่ยนจาก GUI สีพื้นหลังและสีตัวอักษรเป็นค่าใด ๆ ที่คุณต้องการ กล่าวคือ

การตั้งค่า -> กำหนดค่า Okular -> การช่วยการเข้าถึง -> เปลี่ยนสี

ตัวอย่างเช่นชุด:

  • Dark Color เป็นสีตัวอักษร
  • สีอ่อนเป็นสีพื้นหลัง

ฉันมี Okular เวอร์ชั่น 0.16.5


3

เปลี่ยนสีพื้นหลังของสิ่งมีชีวิตไปสู่ความโลภของแสงและปกป้องดวงตาของคุณ

กำหนดค่าสภาพแวดล้อมการคอมไพล์และแหล่งดาวน์โหลด

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
```

จากนั้นทำและฉันได้รับข้อผิดพลาด:

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

ในรุ่น Ubuntu 18.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

change Exec=$YOUR-Evince-PLACE/bin/evince %U

เมื่อคลิกที่ view-> Inverted Color สีพื้นหลังของคุณจะเปลี่ยนเป็นสีเขียวอ่อน

สนุกกับมัน!


2

ขอบคุณสำหรับคำเชิญของอีวาน นี่คือสิ่งที่ฉันทำเพื่อให้ได้พื้นหลังสีเขียวอ่อนใน Evince 2.30.3

ดังที่ได้กล่าวไว้ในหัวข้อ ( https://mail.gnome.org/archives/evince-list/2011-November/msg00015.html ) โพสต์โดยฉันเมื่อหลายปีก่อนฉันเปลี่ยนรหัสต้นฉบับจาก Line 327 ถึง 329 ของlibdocument / ev-document-misc.cพร้อมด้วยตัวอย่างต่อไปนี้:

// make sure that we just turn the near "white" back ground to light green
if ((245 <= p[0] && p[0] <= 255) &&
    (245 <= p[1] && p[1] <= 255) &&
    (245 <= p[2] && p[2] <= 255)) {
    p[0] = 204; /* cc */
    p[1] = 232; /* e8 */
    p[2] = 207; /* cf */
}

โปรดทราบว่าตำแหน่งรหัสอาจแตกต่างกันไปสำหรับ Evince รุ่นต่างๆ

จากนั้นรวบรวม Evince อีกครั้ง:

$ ./configure --prefix=/usr --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

หลังจากรวบรวมแล้วอย่าวิ่งทำการติดตั้งเพราะมันอาจเปลี่ยนการตั้งค่าโลแคลของ Evince เพียงสำรองข้อมูล/usr/lib/libevdocument.so.2.0.0ดั้งเดิมและแทนที่ด้วยlibdocument / .libs / libevdocument.so.2.0.0 ที่แก้ไขด้วยตนเอง

จากนั้นเปิดตัว Evince อีกครั้งเปิดไฟล์. pdf (หรือรูปแบบอื่น ๆ ที่รองรับ) และใช้ตัวเลือก "Inverted Color" เพื่อเปลี่ยนสีพื้นหลังเป็นสีเขียวอ่อน

อาจเป็นประโยชน์ :)


1
มันจะมีประโยชน์หากคุณแสดงรหัสรอบตัวอย่างข้อมูลของคุณ มิฉะนั้นจะไม่ชัดเจนว่าจะหาสถานที่ที่เหมาะสมโดยไม่ใช้เวลามากเกินไป
Elena

0

ฉันพยายามเปลี่ยนสีพื้นหลังของ evince แต่ล้มเหลว

อาจเป็นแอปพลิเคชันอื่นที่qpdfviewมีประโยชน์สำหรับคุณ มันสามารถระบายสีเอกสาร PDF ทั้งหมดด้วยพื้นหลังสีเขียวรวมถึงเอกสาร PDF ที่สแกนมันทำให้คุณรู้สึกสบายตา

น่าเสียดายที่รุ่นที่ติดตั้งจาก synaptic ไม่ทำงานเพื่อให้สีเอกสาร PDF ที่สแกน แต่รุ่นที่ติดตั้งด้วย PPA นั้นดีสำหรับมัน เพียงทำตามคำสั่งต่อไปนี้

sudo apt-add-repository ppa:b-eltzner/qpdfview
sudo apt-get update
sudo apt-get install qpdfview

คุณต้องเปลี่ยนพารามิเตอร์สี

และเกี่ยวกับเอกสาร PDF ที่สแกนคุณจะต้องกดปุ่มดูองค์ประกอบ - มืดลงด้วยสีกระดาษและมันก็จะโอเค

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.