ΠΡΠΊΠΎΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΌΠ΅ΡΠΎΠ΄Π° Π·Π° ΠΏΡΠ»Π½ΠΎ ΠΏΠΎΠ΄ΡΠΊΠ°Π·Π²Π°Π½Π΅, ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ° Π·Π°Π±Π΅Π»ΡΠ·Π°Π»ΠΈ, ΡΠ΅ ΠΏΡΠΈ Π½Π°Π΄Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ ΠΎΡ Pango Π²Π΅ΡΡΠΈΡ 1.43 Π΄ΠΎ 1.44 ΠΊΠ΅ΡΠ½ΠΈΠ½Π³ Π½ΡΠΊΠΎΠΈ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° ΡΡΠΈΡΡΠΎΠ²Π΅ Π²Π»ΠΎΡΠ΅Π½ΠΎ ΠΈΠ»ΠΈ Π½Π°ΠΏΡΠ»Π½ΠΎ ΡΡΡΠΏΠ΅Π½.
ΠΡΠΎΠ±Π»Π΅ΠΌΡΡ Π΅ ΠΏΡΠΈΡΠΈΠ½Π΅Π½ ΠΎΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° ΠΠ°Π½Π³ΠΎ ΠΈΠ·ΠΊΠ»ΡΡΠ΅Π½ ΠΎΡ ΡΠΏΠΎΡΡΠ΅Π±Π° FreeType Π·Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΡΠ½ΠΎΡΠ½ΠΎ ΠΊΠ΅ΡΠ½ΠΈΠ½Π³ (ΡΠ°Π·ΡΡΠΎΡΠ½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ Π³Π»ΠΈΡΠΎΠ²Π΅ΡΠ΅) Π½Π° ΡΡΠΈΡΡΠΎΠ²Π΅ HarfBuzz, ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ ΡΠ΅ΡΠΈΡ
Π° Π½Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°ΠΉ ΠΈΠ·Π³Π»Π°ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΡΠΈΡΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΌΠ΅ΡΠΎΠ΄Π° βhintfullβ. ΠΡΠ±Π΅Π»ΡΠ·Π²Π° ΡΠ΅, ΡΠ΅ Π½Π° Π΅ΠΊΡΠ°Π½ΠΈ Ρ Π²ΠΈΡΠΎΠΊΠ° ΠΏΠ»ΡΡΠ½ΠΎΡΡ Π½Π° ΠΏΠΈΠΊΡΠ΅Π»ΠΈΡΠ΅ (Hi-DPI) Π½Π΅ Π²ΡΠ·Π½ΠΈΠΊΠ²Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Ρ ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠΈΡΡΠΎΠ²Π΅ ΠΏΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π·Π° ΠΏΠΎΠ΄ΡΠΊΠ°Π·Π²Π°Π½Π΅, ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΎΡ βhintfullβ.
ΠΡΠ³ΠΎΠ²Π°ΡΡΠΌ Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π½Π° HarfBuzz (Behdad Esfahbod) ΠΎΡ ΡΡΠΎΡΠ²Π΅ΡΠ½Π°ΡΠ° Π΄ΠΈΡΠΊΡΡΠΈΡ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°:
ΠΠΏΠΈΡΠ°Ρ
ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌ ΡΡΠΈΠ»ΠΎΠ²Π΅ Π·Π° ΠΏΠΎΠ΄ΡΠΊΠ°Π·Π²Π°Π½Π΅, ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΎΡ hintfull, Π½ΠΎ ΡΠ°ΠΌΠΎ ΡΠΎΠΉ Π΄Π°Π²Π° ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΡΡΠΈΡΡΠΎΠ²Π΅, Π±Π»ΠΈΠ·ΠΊΠΈ Π΄ΠΎ ClearType v2 Π² Windows 7, ΠΊΠΎΠ΅ΡΠΎ ΡΠΏΠΎΡΠ΅Π΄ ΠΌΠ΅Π½ ΠΈΠΌΠ° Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΠΎΡΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅ ΠΎΡ Π²ΡΠΈΡΠΊΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°ΡΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ.
Π²ΡΡΠ½ΠΎ ΠΠ°ΡΠΎΠ²Π° ΡΠ΅ΡΠΈΡ
ΠΌΠ΅ Π΄Π° Π½Π΅ Π³ΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°ΠΌΠ΅ ΠΏΠΎΠ²Π΅ΡΠ΅. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΎΠΏΠΈΡΠ°ΡΠ΅ Π΄Π° ΡΠ²ΠΈΠΊΠ½Π΅ΡΠ΅ ΡΡΡ ΡΠ°ΠΏΡΠ½Π΅Π½ΠΎΡΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅ ΠΈΠ»ΠΈ Π΄Π° ΠΎΠΏΠΈΡΠ°ΡΠ΅ Π΄Π° Π½Π°ΠΌΠ΅ΡΠΈΡΠ΅ Π½Π΅ΡΠΎ Π΄ΡΡΠ³ΠΎ. ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄, ΡΠ°Π·Π±ΠΈΡΠ°ΡΠ΅ Π»ΠΈ?
ΠΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½Π° Π΄ΠΈΡΠΊΡΡΠΈΡ:
Π ΡΠ»Π΅Π΄Π²Π°ΡΠΈΡΠ΅ ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡΡ Π’ΠΎΠΉ ΠΎΠ±ΡΡΠ½ΠΈ,ΡΠ΅ ΡΠΎΡΡΡΠ΅ΡΡΡ Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·Π±ΠΎΡ ΠΈ ΡΠ΅Π·ΠΈ, ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΠ° Π΄ΠΎΠ²ΠΎΠ»Π½ΠΈ ΠΎΡ ΡΠ΅ΠΊΡΡΠΎΡΠΎ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅, ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΡΠ·Π΄Π°Π΄Π°Ρ ΡΠΎΡΠΊ Π½Π° Pango. Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π½Π° HarfBuzz Π½Π΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π²Π»ΠΈΡΡΡ Π²ΡΡΡ
Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° ΠΌΡ ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡΡΠ°, Π²Π·Π΅ΡΠΈ Π² Π½Π΅Π³ΠΎ. Behdad Esfahbod, Π½Π°ΡΡΠΎΡΡ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ HarfBuzz, ΠΊΠΎΠΉΡΠΎ ΡΠ΅ ΠΊΠ»Π°ΡΠΈΡΠ° Π½Π° #XNUMX Π² Π°Π½Π³Π°ΠΆΠΈΠΌΠ΅Π½ΡΠΈ ΠΈ Π΄Π²Π΅ΡΠ΅
ΠΏΡΠΎΠ΅ΠΊΡΠΈ, ΡΠΏΠΎΠΌΠ΅Π½Π°, ΡΠ΅ Π½Π΅ Π΅ ΡΠ²ΡΡΠ·Π°Π½ Ρ Red Hat ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ 10 Π³ΠΎΠ΄ΠΈΠ½ΠΈ ΠΈ Π½Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° Pango. ΠΡ 2010 Π³. ΡΠΎΠΉ ΡΠ΅ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠΈ Π² Google ΠΈ ΡΠ΅Π³Π° ΡΠ°Π±ΠΎΡΠΈ ΡΠ°ΠΌΠΎ Ρ HarfBuzz, ΠΊΠΎΠΉΡΠΎ ΠΏΡΠ΅Π΄ΠΈ Π±Π΅ΡΠ΅ Π½Π΅Π³ΠΎΠ² Π»ΠΈΡΠ΅Π½ ΠΏΡΠΎΠ΅ΠΊΡ. HarfBuzz Π½Π΅ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ° ΠΏΡΠΎΡΠ΅Ρ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅ ΠΈ Pango ΠΌΠΎΠΆΠ΅ Π΄Π° Π·Π°ΠΌΠ΅Π½ΠΈ Π·Π°ΡΠ²Π΅Π½ΠΈΡΠ΅ ΡΠ΅ΠΆΠΈΠΌΠΈ Π½Π° ΠΏΠΎΠ΄ΡΠΊΠ°Π·Π²Π°Π½Π΅ ΠΎΡ ΡΠ²ΠΎΡ ΡΡΡΠ°Π½Π°.
ΠΡΡΠ³ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π½Π° HarfBuzz ΠΏΠΎΠ΄ΡΠ΅ΡΡΠ°Π½ΠΎ, ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ Π΅ Π½Π° ΡΡΡΠ°Π½Π°ΡΠ° Π½Π° Pango, ΡΡΠΉ ΠΊΠ°ΡΠΎ HarfBuzz Π½Π΅ Π΅ ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΠΈΠ·ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅ Π½Π° ΡΡΠΈΡΡΠΎΠ²Π΅ ΠΈ Π½Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΏΠΎΠ΄ΡΠΊΠ°Π·Π²Π°Π½Π΅ ΠΎΡ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° ΡΠΈ. ΠΠΊΠΎ Pagno ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΏΠΎΠ΄ΡΠΊΠ°Π·Π²Π°Π½Π΅, ΡΠΎΠ³Π°Π²Π° ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ΡΠΎ ΠΊΡΠΌ HarfBuzz Π½Π΅ Π΅ ΠΈΠ·Π±ΠΎΡΡΡ Π΄Π° ΡΠ°Π·ΡΠΈΡΠ°ΡΠ΅ Π½Π° Π½Π΅Π³ΠΎΠ²Π°ΡΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°. IN ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ ΠΡΠΈΡΠΈΠ½ΠΈΡΠ΅ Π·Π° ΠΎΡΠΊΠ°Π· ΠΎΡ ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° ΠΏΠΎΠ΄ΡΠΊΠ°Π·Π²Π°Π½Π΅ Π² HarfBuzz ΡΠ°, ΡΠ΅ Π½ΡΠΊΠΎΠΈ ΡΠ΅ΠΆΠΈΠΌΠΈ Π½Π° ΠΏΠΎΠ΄ΡΠΊΠ°Π·Π²Π°Π½Π΅ Π²ΠΎΠ΄ΡΡ Π΄ΠΎ ΠΏΡΠΎΠΌΡΠ½Π° Π² ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»Π½Π°ΡΠ° ΡΠΈΡΠΈΠ½Π° Π½Π° Π³Π»ΠΈΡΠ° ΠΈ ΡΠ°Π·ΠΈ ΠΏΡΠΎΠΌΡΠ½Π° Π·Π°Π²ΠΈΡΠΈ ΠΎΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΠΏΠΈΠΊΡΠ΅Π»Π°. Pango ΠΏΡΠ΅Π΄ΠΈ ΡΠΎΠ²Π° Π΅ ΠΈΠ·Π²ΡΡΡΠ²Π°Π» ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΡΠ΅Π· FreeType, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΈ, Π½ΠΎ ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° Π΅ ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π» ΠΊΡΠΌ HarfBuzz, ΠΊΠΎΠΉΡΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π° Π³Π»ΠΈΡΠΎΠ²Π΅, Π±Π΅Π· Π΄Π° ΡΠ΅ ΠΏΠΎΠ·ΠΎΠ²Π°Π²Π° Π½Π° ΡΠ΅Ρ
Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅Ρ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ ΡΠ°Π·ΡΠ΅ΡΠ°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ, Π²ΡΠ·Π½ΠΈΠΊΠ½Π°Π»ΠΈ ΠΏΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Pango, Π΅ ΠΎΡΠ³ΠΎΠ²ΠΎΡΠ½ΠΎΡΡ Π½Π° Pango, Π° Π½Π΅ Π½Π° HarfBuzz.
Π ΠΊΡΠ°ΠΉΠ½Π° ΡΠΌΠ΅ΡΠΊΠ° Behdad Esfahbod ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π» Π³ΠΎΠ»ΡΠΌΠ° ΡΠ΅ΡΡΠΎΡΠΏΠ΅ΠΊΡΠΈΡ Π½Π° ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° Π½Π°Π±ΠΎΡΠ° ΠΎΡ ΡΡΠΈΡΡΠΎΠ²Π΅ Π½Π° Linux. Π‘Π»Π΅Π΄ Π·Π°ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ΡΠΎ ΠΌΡ Π² Google, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈΡΠ΅ Pango ΠΈ Cairo Π±ΡΡ
Π° ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΈΠ·ΠΎΡΡΠ°Π²Π΅Π½ΠΈ ΠΈ ΠΈΠ·ΠΏΠ°Π΄Π½Π°Ρ
Π° Π² ΡΡΠ°Π³Π½Π°ΡΠΈΡ. Π HarfBuzz ΡΠ°Π±ΠΎΡΠ°ΡΠ° ΡΠ΅ ΡΠΎΠΊΡΡΠΈΡΠ° Π²ΡΡΡ
Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° Π°Π΄Π°ΠΏΡΠΈΠ²Π½ΠΈ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ ΡΡΠΈΡΡΠΎΠ²Π΅, Π΄ΠΎΠΊΠ°ΡΠΎ Red Hat ΡΠ΅ ΡΠΎΠΊΡΡΠΈΡΠ° Π²ΡΡΡ
Ρ GTK ΠΈ Glib. Π‘ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈΡΠ΅ Π² ΠΎΠ±Π»Π°ΡΡΡΠ° Π½Π° ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈΡΠ΅ ΡΡΠΈΡΡΠΎΠ²Π΅ Π±ΡΡ
Π° ΠΏΡΠ΅Ρ
Π²ΡΡΠ»Π΅Π½ΠΈ ΠΊΡΠΌ FreeType, fontconfig ΠΈ Cairo, Π½ΠΎ ΠΎΡΡΠ°Π½Π°Ρ
Π° Π½Π΅Π·Π°Π²ΡΡΡΠ΅Π½ΠΈ Π² Pango ΠΏΠΎΡΠ°Π΄ΠΈ Π»ΠΈΠΏΡΠ° Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ. ΠΠΎΡΡΡΠΏΡΡ Π΄ΠΎ Π½ΠΎΠ²ΠΈΡΠ΅ API Π² Pango Π±Π΅ΡΠ΅ ΠΎΡΠΈΠ³ΡΡΠ΅Π½ ΡΡΠ΅Π· Π°Π±ΡΡΡΠ°ΠΊΡΠΈΡΡΠ° FontMap ΠΈ ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°ΡΠ΅ ΡΠ°ΠΌΠΎ Π·Π° Π±Π΅ΠΊΠ΅Π½Π΄ΠΎΠ²Π΅, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° FreeType. ΠΠ΅ΠΊΠ΅Π½Π΄ΠΎΠ²Π΅ΡΠ΅ Π·Π° Windows ΠΈ macOS Π½Π΅ ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ 10 Π³ΠΎΠ΄ΠΈΠ½ΠΈ.
Π‘Π»Π΅Π΄ ΡΠ°Π·ΡΠΈΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ Π±ΡΠ°ΡΠ·ΡΡΠΈ, Microsoft ΡΠΏΡΡ Π΄Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΈΠ·ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅ Π½Π° ΡΡΠ±ΠΏΠΈΠΊΡΠ΅Π»Π½ΠΈ ΡΡΠΈΡΡΠΎΠ²Π΅ ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅ Π² ΡΡΠΈΠ» GDI Π² Windows 8. macOS Π²ΠΈΠ½Π°Π³ΠΈ Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π» ΠΈΠ·ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅, ΠΊΠΎΠ΅ΡΠΎ Π² ΡΠ°Π·ΠΈ Π΄ΠΈΡΠΊΡΡΠΈΡ ΡΠ΅ Π½Π°ΡΠΈΡΠ° βΡΠ°Π·ΠΌΠ°Π·Π°Π½ΠΎβ. ΠΡ 2018 Π³. Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ Π½Π° HarfBuzz ΡΠ΅ ΠΎΠΏΠΈΡΠ°Ρ
Π° Π΄Π° Π²ΡΠ²Π΅Π΄Π°Ρ Π² Pango ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π° HarfBuzz, Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΏΡΠ΅Π· Π³ΠΎΠ΄ΠΈΠ½ΠΈΡΠ΅. Π£ΡΠΏΠΎΡΠ΅Π΄Π½ΠΎ Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° GTK4 Π±Π΅ΡΠ΅ Π½Π°ΠΏΡΠ°Π²Π΅Π½ ΠΏΡΠ΅Ρ
ΠΎΠ΄ ΠΊΡΠΌ ΡΠ΅Π½Π΄ΠΈΡΠ°Π½Π΅, Π±Π°Π·ΠΈΡΠ°Π½ΠΎ Π½Π° OpenGL, ΠΊΠΎΠ΅ΡΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π° Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎ ΠΌΠ°ΡΠ°Π±ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ΅ΠΊΡΡΠ°, ΠΊΠΎΠ΅ΡΠΎ ΠΈΠ·ΠΎΡΡΡΠΈ ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΡΡΠ°Π²ΡΠ½Π΅ΡΠΎ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅Π½Π΄ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠΈΠΊΡΠ΅Π»ΠΈ ΠΈ ΠΌΠ°ΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅.
LibreOffice, Chrome ΠΈ Firefox ΠΏΡΠ΅ΠΌΠΈΠ½Π°Ρ
Π° ΠΊΡΠΌ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° HarfBuzz ΠΊΠ°ΡΠΎ ΡΠ½ΠΈΡΠΈΡΠΈΡΠ°Π½Π° ΠΌΠ°ΡΠΈΠ½Π° Π·Π° ΠΎΡΠΎΡΠΌΡΠ½Π΅, Ρ ΡΠ΅Π½Π°ΡΠ° Π½Π° ΠΏΡΠ΅ΠΊΡΠ°ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π·Π° ΡΠ°ΡΡΠ΅ΡΠ½ΠΈ ΡΡΠΈΡΡΠΎΠ²Π΅ ΠΈ ΡΠΎΡΠΌΠ°ΡΠ° Type1. ΠΠ° ΡΠ°ΡΡΠ΅ΡΠ½ΠΈΡΠ΅ ΡΡΠΈΡΡΠΎΠ²Π΅ ΡΠ΅Π·ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ Π½ΡΠΆΠ΄Π°Π΅Ρ
Π° ΠΎΡ ΡΡΡ
, Π±ΡΡ
Π° ΠΏΠΎΠΌΠΎΠ»Π΅Π½ΠΈ Π΄Π° Π³ΠΈ ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠ°Ρ Π² OpenType ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ. ΠΠ·ΠΏΡΠ°ΡΠ΅Π½ΠΎ Π΅ ΠΈΡΠΊΠ°Π½Π΅ Π΄ΠΎ Adobe Π΄Π° Π²Π½Π΅Π΄ΡΠΈ Type1 Π·Π° HarfBuzz, Π½ΠΎ ΡΠ΅ ΠΎΡΠ³ΠΎΠ²ΠΎΡΠΈΡ
Π°, ΡΠ΅ Π½ΡΠΌΠ° ΡΠΌΠΈΡΡΠ» ΠΎΡ ΡΠΎΠ²Π°, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΠ°ΠΌΠΈΡΠ΅ ΡΠ΅ ΡΠ΅ ΡΠΏΡΠ°Ρ Π΄Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ Type1 ΡΠ°Π·ΠΈ Π³ΠΎΠ΄ΠΈΠ½Π°.
ΠΠ° Π΄Π° ΡΠ΅ ΠΈΠ·ΡΠ°Π²Π½ΡΡ Ρ Π½Π°ΠΏΡΠ΅Π΄Π½Π°Π»ΠΈΡΠ΅ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π·Π° ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ ΠΊΡΠΌ HarfBuzz Π±Π΅ΡΠ΅ Π²Π·Π΅ΡΠΎ Π·Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° Pango. Π¦Π΅Π½Π°ΡΠ° Π±Π΅ΡΠ΅ ΡΠΏΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° Π½ΡΠΊΠΎΠΈ ΡΡΠ°ΡΠΈ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΎΡ ΠΏΡΠ΅Π΄ΠΈ 20 Π³ΠΎΠ΄ΠΈΠ½ΠΈ. ΠΠΎΡΠΎΡΠ²Π° ΡΠ΅, ΡΠ΅ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΠ΅ ΡΠ΅ΡΡΡΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π½ΡΠΌΠ°Ρ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ ΡΡΡΠ΅, Π·Π° Π΄Π° Π½Π°ΠΏΡΠ°Π²ΡΡ Π²ΡΠΈΡΠΊΠΎ ΠΈ ΡΠ΅Π·ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ²Π°Ρ ΠΎΡ Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ°ΡΠΈ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΎΠΏΠΈΡΠ°Ρ Π΄Π° Π½Π°ΠΌΠ΅ΡΡΡ Π½ΡΠΊΠΎΠΉ, ΠΊΠΎΠΉΡΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ Π³ΠΎΡΠΎΠ² Π΄Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΡΠ°, ΠΊΠΎΡΡΠΎ ΠΈΠΌ Π»ΠΈΠΏΡΠ²Π°. ΠΠ°ΡΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΡΠ΅ Π΄Π°Π²Π° GNOME3, ΡΠ»Π΅Π΄ ΠΏΠΎΡΠ²Π°ΡΠ° Π½Π° ΠΊΠΎΠΉΡΠΎ Π½Π΅Π΄ΠΎΠ²ΠΎΠ»Π½ΠΈΡΠ΅ ΡΡΠΏΡΡ
Π° Π΄Π° ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠ°Ρ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° ΠΎΡΡΠ°ΡΠ΅Π»ΠΈ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ GNOME2 Π² ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠ΅ Mate ΠΈ Cinnamon. Π‘ΡΡΠΎΡΠΎ Π²Π°ΠΆΠΈ ΠΈ Π·Π° Pango, Π½ΠΎ Π²ΡΠ΅ ΠΎΡΠ΅ Π½ΡΠΌΠ° ΠΆΠ΅Π»Π°Π΅ΡΠΈ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru