นักพัฒนาสแต็คฟอนต์ Linux ละทิ้งการสนับสนุนการลดนามแฝงแบบนุ่มนวล

ผู้ใช้บางรายที่ใช้วิธีการบอกใบ้แบบเต็มอาจสังเกตเห็นว่าเมื่ออัปเกรดจาก Pango เวอร์ชัน 1.43 เป็น 1.44 การจัดช่องไฟ ตระกูลฟอนต์บางตระกูล แย่ลง หรือ อย่างเต็มที่ แตกหัก.

นักพัฒนาสแต็คฟอนต์ Linux ละทิ้งการสนับสนุนการลดนามแฝงแบบนุ่มนวล

ปัญหามีสาเหตุมาจากห้องสมุด Pango เปลี่ยนจากการใช้งาน FreeType สำหรับข้อมูลเกี่ยวกับการจัดช่องไฟ (ระยะห่างระหว่างสัญลักษณ์) ของแบบอักษร HarfBuzzและผู้พัฒนารุ่นหลังก็ตัดสินใจ ไม่สนับสนุน การปรับแบบอักษรให้เรียบโดยใช้วิธี "hintfull" มีข้อสังเกตว่าบนหน้าจอที่มีความหนาแน่นของพิกเซลสูง (Hi-DPI) จะไม่เกิดปัญหาในการแสดงแบบอักษรเมื่อใช้วิธีการบอกใบ้อื่นที่ไม่ใช่ "hintfull"

ตอบ นักพัฒนา HarfBuzz (Behdad Esfahbod) จากการอภิปรายปัญหาที่เกี่ยวข้อง:

ฉันลองใช้รูปแบบคำใบ้อื่นที่ไม่ใช่คำใบ้ แต่มีเพียงมันเท่านั้นที่ให้การแสดงแบบอักษรใกล้เคียงกับ ClearType v2 ใน Windows 7 ซึ่งในความคิดของฉันมีการเรนเดอร์ที่ดีที่สุดของโซลูชันที่มีอยู่ทั้งหมด

ขวา. ดังนั้นเราจึงตัดสินใจที่จะไม่สนับสนุนอีกต่อไป คุณสามารถลองทำความคุ้นเคยกับการแสดงสบู่หรือลองค้นหาสิ่งอื่น คุณใช้ Open Source เข้าใจไหม?

นอกจากนี้การสนทนาเพิ่มเติมดังต่อไปนี้:

ในความคิดเห็นต่อมาของผู้พัฒนา เขาอธิบายว่าซอฟต์แวร์โอเพ่นซอร์สเปิดโอกาสให้เลือกและผู้ที่ไม่พอใจกับสถานะปัจจุบันสามารถสร้างทางแยกของ Pango ได้ ผู้พัฒนา HarfBuzz ไม่สามารถมีอิทธิพลต่อการบำรุงรักษาและการตัดสินใจได้ Behdad Esfahbod ผู้ดูแล HarfBuzz คนปัจจุบันซึ่งอยู่ในอันดับที่ XNUMX ในด้านคอมมิต ทั้งสอง
โครงการโดยกล่าวว่าเขาไม่ได้มีความเกี่ยวข้องกับ Red Hat มานานกว่า 10 ปีแล้ว และไม่ใช่ผู้ดูแล Pango ตั้งแต่ปี 2010 เขาย้ายไปที่ Google และตอนนี้ทำงานได้เฉพาะกับ HarfBuzz ซึ่งก่อนหน้านี้เป็นโปรเจ็กต์ส่วนตัวของเขา ฮาร์ฟบัซ ไม่ได้ควบคุม กระบวนการเรนเดอร์และ Pango สามารถแทนที่โหมดคำใบ้ที่ร้องขอได้ที่ด้านข้าง

นักพัฒนา HarfBuzz อีกคน เน้นว่าปัญหาอยู่ฝั่งของ Pango เนื่องจาก HarfBuzz ไม่ใช่ระบบเรนเดอร์ฟอนต์และไม่รองรับสถาปัตยกรรมของมัน หาก Pagno จำเป็นต้องรักษาคำใบ้ไว้ การเปลี่ยนมาใช้ HarfBuzz ไม่ใช่ทางเลือกที่จะพึ่งพาการสนับสนุน ใน คุณภาพ เหตุผลที่ปฏิเสธที่จะใช้การบอกใบ้ใน HarfBuzz คือโหมดการบอกใบ้บางโหมดทำให้เกิดการเปลี่ยนแปลงในความกว้างดั้งเดิมของสัญลักษณ์ และการเปลี่ยนแปลงนี้ขึ้นอยู่กับขนาดพิกเซล ก่อนหน้านี้ Pango ดำเนินการที่คล้ายกันผ่าน FreeType ซึ่งรองรับคำใบ้ แต่จากนั้นเปลี่ยนมาใช้ HarfBuzz ซึ่งจัดการร่ายมนตร์โดยไม่ต้องอ้างอิงถึงขนาด ดังนั้นการแก้ไขปัญหาที่พบขณะใช้งาน Pango ถือเป็นความรับผิดชอบของ Pango ไม่ใช่ของ HarfBuzz

ในที่สุด เบห์ดัด เอสฟาห์โบด ตีพิมพ์ ย้อนหลังขนาดใหญ่ของการพัฒนาฟอนต์สแต็กของ Linux หลังจากที่เขาออกจาก Google ห้องสมุด Pango และ Cairo ก็ถูกทิ้งร้างและตกอยู่ในภาวะซบเซา ที่ HarfBuzz งานมุ่งเน้นไปที่การสนับสนุนแบบอักษรตัวแปรที่ปรับเปลี่ยนได้ ในขณะที่ Red Hat มุ่งเน้นไปที่ GTK และ Glib เมื่อเวลาผ่านไป การพัฒนาในด้านฟอนต์ที่ไม่แน่นอนถูกโอนไปยัง FreeType, Fontconfig และ Cairo แต่ยังคงไม่เสร็จใน Pango เนื่องจากขาดนักพัฒนา การเข้าถึง API ใหม่ใน Pango นั้นมาจาก FontMap abstraction และรองรับเฉพาะแบ็กเอนด์ที่ใช้ FreeType เท่านั้น แบ็กเอนด์สำหรับ Windows และ macOS ไม่ได้รับการดูแลรักษามานานกว่า 10 ปี

หลังจากการขยายตัวของอุปกรณ์เคลื่อนที่และเบราว์เซอร์ Microsoft หยุดสนับสนุนการเรนเดอร์แบบอักษรพิกเซลย่อยและการเรนเดอร์สไตล์ GDI ใน Windows 8 macOS รองรับการเรนเดอร์มาโดยตลอด ซึ่งในการสนทนานี้เรียกว่า “พร่ามัว” ตั้งแต่ปี 2018 นักพัฒนา HarfBuzz หลายคนได้พยายามนำฟีเจอร์ HarfBuzz ที่เพิ่มเข้ามาใน Pango ในช่วงหลายปีที่ผ่านมา ควบคู่ไปกับการพัฒนา GTK4 ได้มีการเปลี่ยนไปใช้การเรนเดอร์แบบ OpenGL ซึ่งหมายถึงการปรับขนาดข้อความเชิงเส้นซึ่งทำให้ความขัดแย้งระหว่างการเรนเดอร์พิกเซลและเลย์เอาต์ที่ปรับขนาดได้รุนแรงขึ้น

LibreOffice, Chrome และ Firefox เปลี่ยนไปใช้ HarfBuzz เป็นเครื่องมือสร้างรูปร่างแบบครบวงจร โดยต้องเสียค่าใช้จ่ายในการเลิกรองรับแบบอักษรบิตแมปและรูปแบบ Type1 สำหรับฟอนต์บิตแมป ผู้ที่ต้องการฟอนต์จะถูกขอให้แปลงเป็นคอนเทนเนอร์ OpenType มีการส่งคำขอไปยัง Adobe เพื่อใช้ Type1 สำหรับ HarfBuzz แต่พวกเขาตอบว่าไม่มีประโยชน์ในเรื่องนี้ เนื่องจากพวกเขาจะหยุดสนับสนุน Type1 ในปีนี้

เพื่อให้ทันกับเทคโนโลยีขั้นสูง จึงมีการตัดสินใจคล้ายกันในการเปลี่ยนมาใช้ HarfBuzz สำหรับห้องสมุด Pango ราคาคือการยุติการสนับสนุนเทคโนโลยีเก่าบางอย่างเมื่อ 20 ปีที่แล้ว มีการระบุว่าด้วยทรัพยากรที่จำกัด นักพัฒนาจึงไม่มีมือเพียงพอที่จะทำทุกอย่าง และผู้ที่สนใจในการรักษาเทคโนโลยีเก่าสามารถพยายามค้นหาคนที่พร้อมจะรักษาฟังก์ชันการทำงานที่ขาดหายไป จากการเปรียบเทียบ GNOME3 จะได้รับหลังจากการปรากฏตัวของผู้ที่ไม่พอใจสามารถดำเนินการพัฒนาเทคโนโลยี GNOME2 ที่ล้าสมัยต่อไปได้ภายใต้กรอบของโครงการ Mate และ Cinnamon เช่นเดียวกับ Pango แต่ยังไม่มีผู้รับ

ที่มา: opennet.ru

เพิ่มความคิดเห็น