มีอะไรนอกเหนือจาก GDI ++ ในการปรับปรุงการแสดงผลแบบอักษรบน Windows


12

เมื่อการพัฒนา GDI ++ หยุดลง ... พวกคุณรู้หรือไม่ว่าการทดแทน GDI32 สำหรับ Windows ดีกว่านี้หรือไม่ ควรทำงานกับ Windows XP แบบ 32 บิต


Ahh วันเก่า ๆ ที่ดีของ WinG! .. (j / k) อย่างไรก็ตามอะไรคือ "พิเศษ" ที่คุณมีปัญหากับ Gdi และ / หรือ Gdi +
ja72

คำตอบ:


1

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

(นี่เป็นคุณสมบัติอย่างมากหากคุณสามารถแทนที่ไลบรารีระบบได้อย่างง่ายดายนั่นจะเป็นช่องโหว่ความปลอดภัยที่สำคัญ )

โดยเฉพาะอย่างยิ่งการแสดงผลตัวอักษรจากที่น่ากลัว (Windows 1 - 3.0) ถึงดี (Windows 3.0 ถึง XP) ถึงดีมาก (Windows Vista และ 7) ตามที่ GDI วิวัฒนาการ

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

ปรับปรุง

ความคิดเห็นของ Per alex เกี่ยวกับคำตอบของ Andrew Moore ฉันต้องยอมรับว่าฉันอ่านโพสต์ต้นฉบับผิดและไม่เห็น + ตัวที่สองที่นั่น ฉันอ่านมันเป็น GDI + ไม่ใช่ GDI ++ และขออภัยในสิ่งนั้น

จากสิ่งที่ฉันอ่านจาก GDI ++ (นี่เป็นการโจมตีครั้งแรกของฉัน) ฉันยังคงแนะนำว่าอย่าไปตามเส้นทางนั้นและฉันจะแนะนำตัวจูนเนอร์ ClearType ต่อไป เหตุผลยังคงเหมือนเดิมขึ้นอยู่กับว่าฉันอ่าน GDI ++ ทำงานได้อย่างไรดูเหมือนว่าเป็นเรื่องที่มีความเสี่ยงมาก - ทำงานได้ตามที่อธิบายไว้ข้างต้นโดยที่ฉันพูดถึงการริพออกและแทนที่การทำงานหลักของระบบ ในขณะที่อาจไม่มีผลเสียต่อเนื่องที่แท้จริงคุณต้องเข้าใจว่าการใช้ GDI และ GDI + ในขณะที่เพิ่มประสิทธิภาพนั้นหมายความว่าคุณต้องใช้ทุกข้อผิดพลาดที่ Microsoft เก็บไว้เพื่อความเข้ากันได้แบบย้อนหลัง

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


15

เนื่องจากฉันไม่พอใจคำตอบของ John Rudyฉันจึงไปหาข้อมูลและพบทางเลือกอื่นสำหรับโปรเจ็กต์ gdi ++ ที่ตอนนี้สูญพันธุ์:

  1. gdipp - ตัวแสดงข้อความของ Windows ที่ปรับแต่งได้

  2. โครงการ Inkstone

  3. ezgdi - gdi ++ แสดงผลแบบอักษรขั้นสูงเหมือนกันสำหรับแอปพลิเคชัน 64 บิตบน Windows

ในฐานะที่เป็นทั้งผู้ใช้ Windows และ OSX ฉันพบว่าการแสดงผล ClearType ด้อยกว่าอันที่ใช้บน OSX มาก ดังนั้นฉันจึงเริ่มใช้ gdipp - แม้ว่าจะพิจารณาข้อบกพร่องบางอย่างฉันก็ยังพบว่ามันดีกว่าเอนจิ้นการแสดงผลเริ่มต้นที่ใช้โดย windows แต่ใช่ควรใช้อย่างระมัดระวัง - มันคือแฮ็ค

แก้ไข

ในเดือนกันยายน 2013 ทุกคนที่สนใจเกี่ยวกับการเปลี่ยนการแสดงแบบอักษรของ windows ควรลองใช้คำแนะนำของLưuVĩnhPhúc ในการป้องกันของฉันคำตอบของฉันเกือบจะเก่าเท่า gdipp และ Mactype ไม่ได้มีอยู่เมื่อฉันเขียนมันครั้งแรก ... :-) (แต่ได้รับคำเตือนมันยังคงเป็นแฮ็ค)


1
ฉันใช้ gdipp และมันดูดีกว่าการแสดงผลแบบอักษรเริ่มต้นของ windows 7 ฉันใช้ windows 7 x64 (ที่ทำงานไม่มีทางเลือก windows เลย)
JM Becker

1
คุณเคยลองอีกสองโครงการที่นี่บ้างไหม อันไหนใน 3 อันที่ดีกว่า?
Cray

6

ดาวน์โหลดแอปพลิเคชันจากhttp://www.cobyx.com/software/gdi/ (600KB เท่านั้น) มันใช้งานได้ดีมากไม่ต้องติดตั้งไม่เขียนไปยังรีจิสตรี ฯลฯ มีการตั้งค่าแบบ inbuilt สามชุดทำเครื่องหมายเป็นภาษาญี่ปุ่น, แข็งแรง, ขนาดกลางและเอฟเฟกต์แสง ด้วย Windows XP SP3 มันทำงานได้อย่างรวดเร็ว ฉันขอแนะนำ


5

GDI ++ นั้นเก่าแก่มาก และยังไม่ได้รับการอัปเดตเป็นเวลาหลายปี ดังนั้นจึงไม่สามารถใช้งานได้กับแอปพลิเคชันจำนวนมากโดยเฉพาะอย่างยิ่งแอปที่ไม่ใช้ GDI API แบบคลาสสิก ปัจจุบันMactypeเท่านั้นยังคงอยู่ในการพัฒนาอย่างแข็งขัน มันทำงานได้ดีกับโปรแกรมที่ทันสมัยหลายอย่างที่ไม่รองรับ GDI ++ และยังรองรับแอพพลิเคชั่นที่ใช้ DirectWrite API ใหม่

mactype

รหัสแหล่งที่มาของมันสามารถพบได้ที่https://github.com/snowie2000/MacType

มีอะไรใหม่

  • รองรับ Win10
  • การแปลภาษาจีนดั้งเดิมได้รับการปรับปรุงอย่างมากด้วย GT Wang
  • ปรับปรุงระบบ MultiLang
  • ดีกว่า DirectWrite ขอบคุณการสนับสนุนเพื่อしらいと
  • FreeType 2.8.0 รวมอยู่ด้วย
  • แนะนำโหลด mactype แบบสองขั้นตอน
  • แยกการปรับพารามิเตอร์ DirectWrite
  • ClipboxFix ถูกเปลี่ยนกลับเป็น 0 โดยค่าเริ่มต้นเพื่อหลีกเลี่ยงปัญหาความไม่ลงรอยกัน
  • เพิ่มการแปลภาษาเกาหลีขอบคุณ조현희
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.