เส้นแนวนอนที่น่าเกลียดแสดงใน Kate และ Konsole ที่มีการปรับ HiDPI แบบเศษส่วน


18

นี่คือภาพของปัญหา:

ป้อนคำอธิบายรูปภาพที่นี่

โปรดสังเกตว่าบรรทัดข้อความทั้งหมดมีเส้นแนวนอนคล้ายกับขีดเส้นใต้ อย่างไรก็ตามนี่เป็นโปรแกรมแก้ไขข้อความธรรมดา (Kate) และไม่มีการขีดเส้นใต้ ไม่มีการจัดรูปแบบที่ใช้กับข้อความนี้

ฉันเลือกข้อความเพื่อให้บรรทัดปรากฏในภาพถ่ายได้ดีขึ้น แต่บรรทัดมีอยู่แม้ไม่เลือกข้อความ บางครั้งพวกเขาก็หนาและมืดกว่ามาก บางครั้งพวกเขาก็เบา บางครั้งพวกเขาจะไม่อยู่ที่นั่นเพียงเพื่อกลับมาสุ่ม

Konsole มีปัญหาเดียวกัน ด้วยข้อความสีขาวบนพื้นหลังสีดำบางครั้ง Konsole จะแสดงเส้นแนวนอนหลายสี บางครั้งทุกบรรทัดใน Konsole มีขีดเส้นใต้ที่น่าเกลียดและน่ารำคาญ บางครั้งมีเพียงบางส่วนของเส้นที่มีมัน

บางครั้งเส้นก็หนาแน่นและท่วมท้นจนยากที่จะอ่านข้อความ บางครั้งเส้นก็ไม่รุนแรงเหมือนในรูปที่แนบมา

ฉันเห็นปัญหานี้ครั้งแรกเมื่อประมาณสิบเดือนที่แล้วบนคอมพิวเตอร์เดสก์ท็อป ฉันคิดว่าผู้ใช้เพิ่งทำสิ่งที่คลั่งไคล้ในการตั้งค่าแบบอักษร แต่ตอนนี้ฉันเห็นปัญหาในแล็ปท็อปเครื่องใหม่โดยไม่มีการเปลี่ยนแปลงการตั้งค่าที่สำคัญจากค่าเริ่มต้น

ทั้งสองระบบเรียกใช้ Arch Linux KDE ที่ได้รับการอัพเดตอย่างสมบูรณ์ ในแล็ปท็อปนี้ฉันรีเซ็ตการตั้งค่าแบบอักษรทั้งหมด (ในการตั้งค่าระบบ) เป็นค่าเริ่มต้น ฉันยังรีเซ็ตลักษณะที่ปรากฏของโปรไฟล์ Konsole เป็นการตั้งค่าเริ่มต้น (แม้ว่าการตั้งค่าจะเป็นค่าเริ่มต้นอยู่แล้ว)

อย่างไรก็ตามเส้นแนวนอนจะไม่หายไป

แอปพลิเคชันทำงานอย่างถูกต้อง (นอกเหนือจากบางครั้งยากที่จะอ่านข้อความ) ข้อความที่คัดลอกไม่รวมเส้นแนวนอน คำสั่งใน Konsole ไม่ได้รับผลกระทบจากการปรากฏตัวของเส้นแนวนอน ดูเหมือนว่าจะเป็นความผิดพลาดในการแสดงผล แต่ไม่เฉพาะเจาะจงกับ GPU ใด ๆ (มีผลกับ Intel หรือ nvidia) หรือไปที่หน้าจอแสดงผลใด ๆ (ฉันทดสอบจอแสดงผลที่แตกต่างกันบนเดสก์ท็อป) หรืออะไรก็ตามที่ฉันสามารถกำหนดได้

ฉันลองแก้ไขปัญหาต่าง ๆ บนเดสก์ท็อปที่ได้รับผลกระทบในช่วงสิบเดือนที่ผ่านมาและฉันยังไม่ได้แก้ไขในเครื่องนั้น

ฉันมีคอมพิวเตอร์ Arch KDE อื่น ๆ หลายเครื่องที่ไม่มีปัญหา

ใครบ้างมีเบาะแสว่าสิ่งนี้อาจทำให้เกิดอะไรขึ้น? มีใครเห็นบ้างไหม

แก้ไข: โปรดดูรายงานข้อผิดพลาด KDE สำหรับ Konsole:
373232 - เส้นแนวนอนที่มีการปรับสัดส่วน HiDPI


ทางออกชั่วคราว: QT_SCREEN_SCALE_FACTORS=1 konsole. คุณสามารถสร้างลิงค์เดสก์ท็อปแอปพลิเคชันด้วยคำสั่งนี้
drinor

คำตอบ:


9

มีการรายงานว่ามีการแก้ไขในQTBUG-66036ด้วยรุ่น 5.12 ในขณะที่ฉันกำลังเขียนสิ่งนี้ QT บน Arch Linux เป็นรุ่น 5.11.2-1 Distros ทั่วไปอื่น ๆ ยังไม่ได้เปิดตัวแพ็คเกจที่มี Qt 5.12 อย่างไรก็ตามเมื่อปล่อย Qt 5.12 นักพัฒนาคาดว่าปัญหานี้จะได้รับการแก้ไข

ในการตรวจสอบเวอร์ชั่น Qt ของคุณคุณสามารถเปิดเทอร์มินัลแล้วพิมพ์:

qmake --version

ผลลัพธ์จะคล้ายกับสิ่งนี้

QMake version 3.1
Using Qt version 5.11.1 in /usr/lib

เมื่อคุณเห็นรุ่น Qt 5.12 คุณสามารถคาดหวังความละเอียดได้ ถ้าไม่ให้นักพัฒนารู้ที่QTBUG-66036

ในช่วงเวลาดังกล่าวมีการแก้ไขดังที่อธิบายไว้ในรายงานข้อผิดพลาดด้านล่าง

ขั้นตอนในการทำซ้ำ:

  1. จอแสดงผล -> เครื่องชั่ง -> เครื่องชั่ง: 1.3 (หรือ 1.4 เป็นต้น)
  2. เริ่มต้นใหม่
  3. เปิด Konsole หรือ Kate พิมพ์สิ่งของ

วิธีแก้ปัญหา:ตั้งค่า Scale Factor กลับเป็น 1.0 (หรือเป็นจำนวนเต็มเช่น 2 หรือ 3)

มีรายงานข้อบกพร่องที่คล้ายกันสำหรับ Konsole ที่นี่

373232 - เส้นแนวนอนที่มีการปรับขนาด HiDPI เป็นเศษส่วน
https://bugs.kde.org/show_bug.cgi?id=373232


4
วิธีแก้ปัญหานั้นไร้สาระใน 4k + btw
tomasb

2
ใช่ฉันเห็นด้วยว่าการแก้ปัญหานั้นแย่มาก รอคอยการแก้ไขที่เหมาะสม
BugBuddy

พบว่าปัจจัยจำนวนเต็มทำงานได้ดี (เช่น 2.0, 3.0, ... )
tomasb

โปรดเพิ่มความคิดเห็นในรายงานข้อผิดพลาด: bugs.kde.org/show_bug.cgi?id=373232
MountainX

3
@tomasb - หากคุณต้องการแก้ไขปัญหานี้โปรดพิจารณาการสร้างข้อมูลเข้าสู่ระบบเพื่อให้คุณสามารถแจ้งให้นักพัฒนาซอฟต์แวร์ทราบว่ามีผลกระทบต่อคุณ หากคุณขี้เกียจเกินไปที่จะทำเช่นนั้นคุณไม่มีสิทธิ์ที่จะบ่นเกี่ยวกับวิธีแก้ปัญหา (หรือสิ่งอื่นใด) ที่เป็น "ไร้สาระ" หากคุณใช้โอเพ่นซอร์สโปรดหาวิธีที่จะมีส่วนร่วมแม้ว่าจะลงคะแนนหรือแสดงความคิดเห็นในรายงานข้อผิดพลาดเท่านั้นก็ตาม เป็นส่วนหนึ่งของชุมชน
BugBuddy

8

การอัพเกรดเป็น Qt 5.12 นั้นใช้ได้ แต่ดูเหมือนจะไม่สามารถแก้ไขปัญหาได้ทันที ในการตั้งค่าโปรไฟล์ Konsole ภายใต้แท็บขั้นสูง, การเปลี่ยนแปลง"สายการเว้นวรรค" 1 สิ่งนี้ได้แก้ไขปัญหาด้วยเส้นแนวนอนสำหรับฉัน


ต้องเพิ่มมันเป็น 5 แต่ก็ใช้ได้ดี ขอขอบคุณ.
User1291

2
ตัวเลือก "การเว้นวรรคบรรทัด" ไม่มีใน Konsole เวอร์ชัน 19.8
WeKa

1
คลิกขวา> แก้ไขโปรไฟล์ปัจจุบัน ... > ลักษณะที่ปรากฏ> เบ็ดเตล็ด> ระยะห่างบรรทัด
ooXei1sh

ฉันสามารถเปลี่ยนระยะห่างบรรทัดได้ถึง 8 แต่บางครั้งก็ยังคงมีเส้น มันไม่ได้เป็นฟังก์ชั่นการแก้ไขเลยเพราะระยะห่างนั้นทำลายอินเตอร์เฟส
misantroop

2

คุณสามารถเปลี่ยนแบบอักษร DPI :

  1. ไปที่Fontsตรวจสอบกล่องForce Fonts DPI
  2. ตั้งค่าที่เหมาะสม (ฉันใช้144บนหน้าจอ 2560x1440 คุณอาจต้องการลองเป็น1924K)
    • DPI ที่สูงขึ้นแปลเป็นข้อความที่ใหญ่ขึ้นในหน้าจอของคุณ
  3. ตั้งค่าตัวประกอบสเกลการแสดงผลกลับเป็น 1
  4. ออกจากระบบและลงชื่อเข้าใช้ของคุณ (หรือรีสตาร์ท)

ณ จุดนี้เส้นแนวนอนควรจะหายไปและคุณควรจะอ่านทุกอย่างบนหน้าจอของคุณ


1
นี่เป็นทางออกเดียวที่ใช้งานได้ในขณะนี้และจะปรับขนาดขององค์ประกอบ UI (ไม่ใช่แค่ขนาดตัวอักษร) คุณสมบัติ "การแสดงผลสเกล" โดยเฉพาะยังคงใช้งานไม่ได้และทำให้แอปพลิเคชัน KDE หลายตัวแสดงผลด้วยเส้นส่วน
tiguchi

2

วิธีแก้ปัญหาอื่นคือการตั้งค่าระยะห่างบรรทัดเป็น 1 ภายใต้การตั้งค่า -> แก้ไขโปรไฟล์ปัจจุบัน ... -> ขั้นสูง -> คุณสมบัติเทอร์มินัล มันเกือบจะไม่สามารถสังเกตเห็นได้ (หนึ่งพิกเซลพิเศษระหว่างบรรทัด) แต่แก้ไขปัญหาได้


0

ป้อนคำอธิบายรูปภาพที่นี่ป้อนคำอธิบายรูปภาพที่นี่ป้อนคำอธิบายรูปภาพที่นี่วิธีแก้ปัญหาที่ดีที่สุดสำหรับฉันคือ:

  1. ใช้ Breeze Dark
  2. ปรับขนาดเป็น 1.3,1.4 ทุกอย่างที่คุณต้องการ
  3. ใช้ทางเลือก GTK เนื่องจากเครื่องมือแก้ไข QT ใด ๆ จะได้รับข้อความแสดงข้อผิดพลาด
  4. สำหรับ Konsole ฉันชอบ Tilix (ซึ่งมีการพึ่งพา gtk น้อยที่สุดเช่น 5mb) สำหรับการรวมขั้วโลมาทำตามhttps://bbs.archlinux.org/viewtopic.php?id=211524 ใช้บริการ "Open Tilix ที่นี่" (คุณสามารถดาวน์โหลดได้จาก Dolphin Configuration> เมนูบริการ) เพียงสร้างโฟลเดอร์ในบ้านของคุณตามที่ระบุไว้ข้างต้น และเปลี่ยนเทอร์มินัลเริ่มต้นจากการตั้งค่า KDE> แอปพลิเคชันเริ่มต้นเพื่อให้คุณสามารถ Shift + F4 เป็น Tilix จาก Dolphin
  5. สำหรับ Kate หรือ Kwrite ฉันชอบ Gedit หรือ IDE ใด ๆ เช่น Brackets หรือ SublimeText หรือ Atom

0

หลังจากทำตามคำแนะนำของ Nico เกี่ยวกับการเปลี่ยนข้อความระบบ DPI เป็นอะไรที่สูงกว่าเช่น 144, 192 เป็นต้นมีวิธีที่จะเปิดการปรับขนาดการแสดงผลอีกครั้งและทำให้ Kate ดูดี อย่างไรก็ตามผลลัพธ์อาจแตกต่างกันระหว่างสภาพแวดล้อมเดสก์ท็อป

ตั้งค่าการปรับขนาดการแสดงผลของคุณเป็นค่าที่ต้องการ (ฉันใช้งาน 1.5x)

คุณสามารถตั้งค่าตัวแปรสภาพแวดล้อมQT_SCREEN_SCALE_FACTORS=1สำหรับการโทรครั้งเดียวเป็น Kate

QT_SCREEN_SCALE_FACTORS=1 kate

และคุณสามารถสร้างสคริปต์ตัวคลุมสำหรับการโทรไปยังเคททั้งหมด

#!/bin/bash
cd $HOME
# Add home binaries directory & cd into it
mkdir -p bin && cd bin
# Symlink Kate executable as kate0
ln -s $(which kate) kate0
# Create the wrapper script
echo '#!/bin/bash' > kate
# This tells Kate to use a 1x scale factor, and to pass all arguments from wrapper
echo 'QT_SCREEN_SCALE_FACTORS=1 kate0 "$@"' >> kate
# Make the wrapper script executable
chmod +x kate

แล้วให้แน่ใจว่าอยู่ในของคุณ$HOME/bin $PATHหากไม่เป็นเช่นนั้นคุณสามารถเพิ่มได้

export PATH="$HOME/bin:$PATH"

เพิ่มที่จะ~/.profileทำให้มันถาวร

โปรดทราบว่าเพื่อให้สิ่งนี้ใช้งานได้โฮมสคริปต์ของคุณจะต้องมาก่อนพา ธ ของ Kate ดั้งเดิมที่ปฏิบัติการได้ (เช่น/usr/bin) ใน$PATHตัวแปรสภาพแวดล้อมของคุณ

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