ttf-parser 0.5 - แƒแƒฎแƒแƒšแƒ˜ แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ TrueType แƒคแƒแƒœแƒขแƒ”แƒ‘แƒ—แƒแƒœ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก

ttf-แƒžแƒแƒ แƒกแƒ”แƒ แƒ˜ แƒแƒ แƒ˜แƒก แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ TrueType/OpenType แƒจแƒ แƒ˜แƒคแƒขแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒกแƒแƒแƒœแƒแƒšแƒ˜แƒ–แƒ”แƒ‘แƒšแƒแƒ“.
แƒแƒฎแƒแƒš แƒ•แƒ”แƒ แƒกแƒ˜แƒแƒก แƒแƒฅแƒ•แƒก แƒชแƒ•แƒšแƒแƒ“แƒ˜ แƒจแƒ แƒ˜แƒคแƒขแƒ”แƒ‘แƒ˜แƒก แƒกแƒ แƒฃแƒšแƒ˜ แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ
(แƒชแƒ•แƒšแƒแƒ“แƒ˜ แƒจแƒ แƒ˜แƒคแƒขแƒ”แƒ‘แƒ˜) แƒ“แƒ C API, แƒ แƒ˜แƒก แƒจแƒ”แƒ“แƒ”แƒ’แƒแƒ“แƒแƒช แƒ’แƒแƒ“แƒแƒ•แƒฌแƒงแƒ•แƒ˜แƒขแƒ” แƒ›แƒ˜แƒกแƒ˜ แƒ แƒ”แƒ™แƒšแƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ แƒšแƒแƒ แƒ”แƒจแƒ˜.

แƒ‘แƒแƒšแƒ แƒ“แƒ แƒแƒ›แƒ“แƒ”, แƒ—แƒฃ แƒกแƒแƒญแƒ˜แƒ แƒ แƒ˜แƒงแƒ TrueType แƒคแƒแƒœแƒขแƒ”แƒ‘แƒ—แƒแƒœ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ, แƒ˜แƒงแƒ แƒ–แƒฃแƒกแƒขแƒแƒ“ แƒแƒ แƒ˜ แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜: FreeType แƒ“แƒ stb_truetype. แƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ˜ แƒแƒ แƒ˜แƒก แƒฃแƒ–แƒแƒ แƒ›แƒแƒ–แƒแƒ แƒ˜ แƒ™แƒแƒ›แƒ‘แƒ˜แƒœแƒแƒขแƒ˜, แƒ›แƒ”แƒแƒ แƒ” แƒ›แƒฎแƒแƒ แƒก แƒฃแƒญแƒ”แƒ แƒก แƒกแƒแƒ™แƒ›แƒแƒแƒ“ แƒ›แƒชแƒ˜แƒ แƒ” แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ˜แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ”แƒ‘แƒก.

ttf-แƒžแƒแƒ แƒกแƒ”แƒ แƒ˜ แƒแƒ แƒ˜แƒก แƒกแƒแƒ“แƒฆแƒแƒช แƒจแƒฃแƒแƒจแƒ˜. แƒ˜แƒก แƒ›แƒฎแƒแƒ แƒก แƒฃแƒญแƒ”แƒ แƒก แƒงแƒ•แƒ”แƒšแƒ แƒ˜แƒ’แƒ˜แƒ•แƒ” TrueType แƒชแƒฎแƒ แƒ˜แƒšแƒ”แƒ‘แƒก (TrueType แƒคแƒแƒ แƒ›แƒแƒขแƒ˜ แƒจแƒ”แƒ“แƒ’แƒ”แƒ‘แƒ แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒชแƒแƒšแƒ™แƒ”แƒฃแƒšแƒ˜ แƒแƒ แƒแƒ‘แƒ˜แƒ—แƒ˜ แƒชแƒฎแƒ แƒ˜แƒšแƒ˜แƒกแƒ’แƒแƒœ), แƒ แƒแƒ’แƒแƒ แƒช FreeType, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ—แƒแƒ•แƒแƒ“ แƒแƒ  แƒฎแƒแƒขแƒแƒ•แƒก แƒ’แƒšแƒ˜แƒคแƒ”แƒ‘แƒก.

แƒแƒ›แƒแƒ•แƒ“แƒ แƒแƒฃแƒšแƒแƒ“, ttf-แƒžแƒแƒ แƒกแƒ”แƒ แƒ˜ แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒ‘แƒ”แƒ•แƒ  แƒกแƒฎแƒ•แƒ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒแƒก:

  1. ttf-parser แƒ˜แƒฌแƒ”แƒ แƒ”แƒ‘แƒ Rust-แƒจแƒ˜ แƒกแƒแƒฎแƒ˜แƒคแƒแƒ—แƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ”. FreeType แƒ“แƒ stb_truetype แƒ˜แƒฌแƒ”แƒ แƒ”แƒ‘แƒ C-แƒจแƒ˜.
  2. ttf-แƒžแƒแƒ แƒกแƒ”แƒ แƒ˜ แƒแƒ แƒ˜แƒก แƒ”แƒ แƒ—แƒแƒ“แƒ”แƒ แƒ—แƒ˜ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒฃแƒกแƒแƒคแƒ แƒ—แƒฎแƒ แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒ. แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒ˜แƒ—แƒ˜ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒฌแƒแƒ™แƒ˜แƒ—แƒฎแƒ•แƒ แƒจแƒ”แƒฃแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ. แƒ“แƒแƒฃแƒชแƒ•แƒ”แƒšแƒแƒ‘แƒ แƒ›แƒฃแƒ“แƒ›แƒ˜แƒ•แƒแƒ“ แƒคแƒ˜แƒฅแƒกแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ FreeType-แƒจแƒ˜ แƒ“แƒ stb_truetype, แƒžแƒ แƒ˜แƒœแƒชแƒ˜แƒžแƒจแƒ˜, แƒแƒ  แƒแƒ แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒšแƒ˜ แƒ—แƒ•แƒ˜แƒ—แƒœแƒ”แƒ‘แƒฃแƒ แƒ˜ แƒจแƒ แƒ˜แƒคแƒขแƒ”แƒ‘แƒ˜แƒก แƒฌแƒแƒกแƒแƒ™แƒ˜แƒ—แƒฎแƒแƒ“.
  3. ttf-parser แƒแƒ แƒ˜แƒก แƒ”แƒ แƒ—แƒแƒ“แƒ”แƒ แƒ—แƒ˜ แƒซแƒแƒคแƒ˜แƒ— แƒฃแƒกแƒแƒคแƒ แƒ—แƒฎแƒ แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒ. แƒแƒœแƒแƒšแƒ˜แƒ–แƒ”แƒ‘แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ แƒ›แƒ”แƒ—แƒแƒ“แƒ˜ แƒ›แƒฃแƒ“แƒ›แƒ˜แƒ•แƒ˜แƒ. แƒ”แƒ แƒ—แƒแƒ“แƒ”แƒ แƒ—แƒ˜ แƒ’แƒแƒ›แƒแƒœแƒแƒ™แƒšแƒ˜แƒกแƒ˜ แƒแƒ แƒ˜แƒก แƒ™แƒแƒแƒ แƒ“แƒ˜แƒœแƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒชแƒ•แƒšแƒแƒ“แƒ˜ แƒจแƒ แƒ˜แƒคแƒขแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ”แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ แƒฎแƒ”แƒšแƒแƒฎแƒšแƒ แƒจแƒ”แƒ›แƒแƒ“แƒ˜แƒก. FreeType แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒแƒ“ แƒ”แƒ แƒ—แƒ˜ แƒฎแƒ แƒแƒฎแƒœแƒ˜แƒแƒœแƒ˜แƒ. stb_truetype - reentrant (แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒ˜แƒœแƒ“แƒ˜แƒ•แƒ˜แƒ“แƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒแƒกแƒšแƒ”แƒ‘แƒ˜ แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒ—แƒ”แƒ›แƒแƒจแƒ˜, แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒ แƒ แƒ”แƒ แƒ—แƒ˜ แƒ‘แƒ”แƒ•แƒ แƒ˜แƒ“แƒแƒœ).
  4. ttf-แƒžแƒแƒ แƒกแƒ”แƒ แƒ˜ แƒ”แƒ แƒ—แƒแƒ“แƒ”แƒ แƒ—แƒ˜ แƒ˜แƒ›แƒžแƒšแƒ”แƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒแƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ  แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก แƒ’แƒ แƒแƒ•แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒแƒคแƒแƒก. แƒ”แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒ“แƒแƒแƒฉแƒฅแƒแƒ แƒแƒ— แƒแƒœแƒแƒšแƒ˜แƒ–แƒ˜ แƒ“แƒ แƒ—แƒแƒ•แƒ˜แƒ“แƒแƒœ แƒแƒ˜แƒชแƒ˜แƒšแƒแƒ— แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ”แƒ‘แƒ˜ OOM-แƒ—แƒแƒœ.
  5. แƒแƒกแƒ”แƒ•แƒ”, แƒ›แƒแƒฌแƒ›แƒ“แƒ”แƒ‘แƒ แƒ—แƒ˜แƒ—แƒฅแƒ›แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ แƒแƒ แƒ˜แƒ—แƒ›แƒ”แƒขแƒ˜แƒ™แƒฃแƒšแƒ˜ แƒ›แƒแƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒ แƒ“แƒ แƒ แƒ˜แƒชแƒฎแƒ•แƒ˜แƒ—แƒ˜ แƒขแƒ˜แƒžแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒ“แƒแƒฅแƒ›แƒœแƒ (แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก แƒกแƒขแƒแƒขแƒ˜แƒ™แƒฃแƒ แƒแƒ“).
  6. แƒฃแƒแƒ แƒ”แƒก แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒแƒ› แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒœแƒแƒ™แƒšแƒ˜แƒกแƒ˜ แƒ“แƒแƒฃแƒจแƒ•แƒแƒก. แƒแƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, C API-แƒจแƒ˜, แƒ’แƒแƒ›แƒแƒœแƒแƒ™แƒšแƒ˜แƒกแƒ”แƒ‘แƒ˜ แƒ“แƒแƒ˜แƒญแƒ”แƒ แƒก แƒ“แƒ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ แƒ“แƒแƒแƒ‘แƒ แƒฃแƒœแƒ”แƒ‘แƒก แƒจแƒ”แƒชแƒ“แƒแƒ›แƒแƒก, แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒ  แƒ“แƒแƒ˜แƒจแƒšแƒ”แƒ‘แƒ.

แƒ“แƒ แƒ›แƒ˜แƒฃแƒฎแƒ”แƒ“แƒแƒ•แƒแƒ“ แƒฃแƒกแƒแƒคแƒ แƒ—แƒฎแƒแƒ”แƒ‘แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ แƒ’แƒแƒ แƒแƒœแƒขแƒ˜แƒ˜แƒกแƒ, ttf-แƒžแƒแƒ แƒกแƒ”แƒ แƒ˜ แƒแƒกแƒ”แƒ•แƒ” แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒกแƒฌแƒ แƒแƒคแƒ˜ แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒแƒ. แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, CFF2-แƒ˜แƒก แƒแƒœแƒแƒšแƒ˜แƒ–แƒ˜ 3.5-แƒฏแƒ”แƒ  แƒฃแƒคแƒ แƒ แƒกแƒฌแƒ แƒแƒคแƒ˜แƒ แƒ•แƒ˜แƒ“แƒ แƒ” FreeType. แƒแƒ›แƒแƒ•แƒ“แƒ แƒแƒฃแƒšแƒแƒ“, glyf-แƒ˜แƒก แƒแƒœแƒแƒšแƒ˜แƒ–แƒ˜ 10%-แƒ˜แƒ— แƒœแƒ”แƒšแƒ˜แƒ, แƒ•แƒ˜แƒ“แƒ แƒ” stb_truetype-แƒจแƒ˜, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ”แƒก แƒ’แƒแƒ›แƒแƒฌแƒ•แƒ”แƒฃแƒšแƒ˜แƒ แƒ˜แƒ›แƒ˜แƒ—, แƒ แƒแƒ› แƒ›แƒแƒก แƒแƒ  แƒแƒฅแƒ•แƒก แƒชแƒ•แƒšแƒแƒ“แƒ˜ แƒจแƒ แƒ˜แƒคแƒขแƒ”แƒ‘แƒ˜แƒก แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ—แƒ แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒ แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ— แƒจแƒ”แƒœแƒแƒฎแƒ•แƒแƒก. แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒ. แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ—แƒ˜ แƒ“แƒ”แƒขแƒแƒšแƒ”แƒ‘แƒ˜ แƒจแƒ˜ README.

แƒฌแƒงแƒแƒ แƒ: linux.org.ru

แƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ