ttf-parser 0.5 - TrueType āĻĢāĻ¨ā§āĻŸāĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ

ttf-āĻĒāĻžāĻ°ā§āĻ¸āĻžāĻ° TrueType/OpenType āĻĢāĻ¨ā§āĻŸ āĻĒāĻžāĻ°ā§āĻ¸ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋāĨ¤
āĻ¨āĻ¤ā§āĻ¨ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖā§‡ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§€āĻ˛ āĻĢāĻ¨ā§āĻŸā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡
(āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§€āĻ˛ āĻĢāĻ¨ā§āĻŸ) āĻāĻŦāĻ‚ āĻ¸āĻŋ āĻāĻĒāĻŋāĻ†āĻ‡, āĻ¯āĻžāĻ° āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§‚āĻĒ āĻ†āĻŽāĻŋ āĻāĻŸāĻŋāĻ•ā§‡ āĻŦāĻŋāĻĻā§āĻ¯āĻžāĻ¯āĻŧ āĻŦāĻŋāĻœā§āĻžāĻžāĻĒāĻ¨ āĻĻā§‡āĻ“āĻ¯āĻŧāĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§‡āĻ›āĻŋāĨ¤

āĻ¸āĻŽā§āĻĒā§āĻ°āĻ¤āĻŋ āĻ…āĻŦāĻ§āĻŋ, āĻ¯āĻĻāĻŋ TrueType āĻĢāĻ¨ā§āĻŸāĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻ›āĻŋāĻ˛, āĻ¸ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ āĻŋāĻ• āĻĻā§āĻŸāĻŋ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻ›āĻŋāĻ˛: FreeType āĻāĻŦāĻ‚ stb_truetypeāĨ¤ āĻĒā§āĻ°āĻĨāĻŽāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻļāĻžāĻ˛ āĻ¸āĻŽāĻ¨ā§āĻŦāĻ¯āĻŧ, āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧāĻŸāĻŋ āĻŽā§‹āĻŸāĻžāĻŽā§āĻŸāĻŋ āĻ…āĻ˛ā§āĻĒ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻ• āĻĢāĻžāĻ‚āĻļāĻ¨ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ•āĻ°ā§‡āĨ¤

ttf-āĻĒāĻžāĻ°ā§āĻ¸āĻžāĻ° āĻŽāĻžāĻāĻ–āĻžāĻ¨ā§‡ āĻ•ā§‹āĻĨāĻžāĻ“ āĻ†āĻ›ā§‡āĨ¤ āĻāĻŸāĻŋ āĻĢā§āĻ°āĻŋ āĻŸāĻžāĻ‡āĻĒā§‡āĻ° āĻŽāĻ¤ā§‹ āĻāĻ•āĻ‡ āĻŸā§āĻ°ā§ āĻŸāĻžāĻ‡āĻĒ āĻŸā§‡āĻŦāĻŋāĻ˛ (āĻŸā§āĻ°ā§ āĻŸāĻžāĻ‡āĻĒ āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻŸā§‡ āĻ…āĻ¨ā§‡āĻ•āĻ—ā§āĻ˛āĻŋ āĻĒā§ƒāĻĨāĻ• āĻŦāĻžāĻ‡āĻ¨āĻžāĻ°āĻŋ āĻŸā§‡āĻŦāĻŋāĻ˛ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡) āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ•āĻ°ā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ—ā§āĻ˛āĻŋāĻĢāĻ—ā§āĻ˛āĻŋ āĻ¨āĻŋāĻœā§‡āĻ°āĻžāĻ‡ āĻ†āĻāĻ•ā§‡ āĻ¨āĻžāĨ¤

āĻāĻ•āĻ‡ āĻ¸āĻŽāĻ¯āĻŧā§‡, ttf-āĻĒāĻžāĻ°ā§āĻ¸āĻžāĻ°ā§‡āĻ° āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ…āĻ¨ā§‡āĻ• āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ–āĻ¯ā§‹āĻ—ā§āĻ¯ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āĻ¯ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡:

  1. ttf-āĻĒāĻžāĻ°ā§āĻ¸āĻžāĻ° āĻ…āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¨āĻž āĻ•āĻ°ā§‡āĻ‡ āĻŽāĻ°āĻŋāĻšāĻžāĻ¯āĻŧ āĻ˛ā§‡āĻ–āĻž āĻšāĻ¯āĻŧāĨ¤ FreeType āĻāĻŦāĻ‚ stb_truetype āĻ¸āĻŋ āĻ¤ā§‡ āĻ˛ā§‡āĻ–āĻž āĻ†āĻ›ā§‡āĨ¤
  2. ttf-āĻĒāĻžāĻ°ā§āĻ¸āĻžāĻ° āĻāĻ•āĻŽāĻžāĻ¤ā§āĻ° āĻŽā§‡āĻŽāĻ°āĻŋ-āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨āĨ¤ āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽ āĻŽā§‡āĻŽāĻ°āĻŋ āĻĒāĻĄāĻŧāĻž āĻ¸āĻŽā§āĻ­āĻŦ āĻ¨āĻ¯āĻŧ. FreeType-āĻ āĻĻā§āĻ°ā§āĻŦāĻ˛āĻ¤āĻžāĻ—ā§āĻ˛āĻŋ āĻ•ā§āĻ°āĻŽāĻžāĻ—āĻ¤ āĻ¸āĻ‚āĻļā§‹āĻ§āĻ¨ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡, āĻāĻŦāĻ‚ stb_truetype āĻ¨ā§€āĻ¤āĻŋāĻ—āĻ¤āĻ­āĻžāĻŦā§‡, āĻ‡āĻšā§āĻ›āĻžāĻ•ā§ƒāĻ¤ āĻĢāĻ¨ā§āĻŸ āĻĒāĻĄāĻŧāĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĄāĻŋāĻœāĻžāĻ‡āĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋāĨ¤
  3. ttf-āĻĒāĻžāĻ°ā§āĻ¸āĻžāĻ° āĻšāĻ˛ āĻāĻ•āĻŽāĻžāĻ¤ā§āĻ° āĻĨā§āĻ°ā§‡āĻĄ-āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨āĨ¤ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒāĻžāĻ°ā§āĻ¸āĻŋāĻ‚ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻ§ā§āĻ°ā§āĻŦāĻ•āĨ¤ āĻāĻ•āĻŽāĻžāĻ¤ā§āĻ° āĻŦā§āĻ¯āĻ¤āĻŋāĻ•ā§āĻ°āĻŽ āĻšāĻ˛ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§€āĻ˛ āĻĢāĻ¨ā§āĻŸā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ™ā§āĻ• āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻž, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ‡ āĻĢāĻžāĻ‚āĻļāĻ¨āĻŸāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻ…āĻ¨ā§āĻĒā§āĻ°āĻŦā§‡āĻļāĻ•āĻžāĻ°ā§€āĨ¤ FreeType āĻŽā§‚āĻ˛āĻ¤ āĻāĻ•āĻ•-āĻĨā§āĻ°ā§‡āĻĄā§‡āĻĄāĨ¤ stb_truetype - āĻĒā§āĻ¨āĻƒāĻĒā§āĻ°āĻŦā§‡āĻļāĻ•āĻžāĻ°ā§€ (āĻ†āĻĒāĻ¨āĻŋ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻĨā§āĻ°ā§‡āĻĄā§‡ āĻĒā§ƒāĻĨāĻ• āĻ…āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨, āĻ¤āĻŦā§‡ āĻ…āĻ¨ā§‡āĻ•āĻ—ā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¯āĻŧ)āĨ¤
  4. ttf-āĻĒāĻžāĻ°ā§āĻ¸āĻžāĻ° āĻšāĻ˛ āĻāĻ•āĻŽāĻžāĻ¤ā§āĻ° āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻ¯āĻž āĻšāĻŋāĻĒ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ¨āĻžāĨ¤ āĻāĻŸāĻŋ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻĒāĻžāĻ°ā§āĻ¸āĻŋāĻ‚ āĻ¤ā§āĻŦāĻ°āĻžāĻ¨ā§āĻŦāĻŋāĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻāĻŦāĻ‚ OOM āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻāĻĄāĻŧāĻžāĻ¤ā§‡ āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§‡āĻ¯āĻŧāĨ¤
  5. āĻāĻ›āĻžāĻĄāĻŧāĻžāĻ“, āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ—āĻžāĻŖāĻŋāĻ¤āĻŋāĻ• āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ•āĻ˛āĻžāĻĒ āĻāĻŦāĻ‚ āĻ¸āĻžāĻ‚āĻ–ā§āĻ¯āĻŋāĻ• āĻĒā§āĻ°āĻ•āĻžāĻ°ā§‡āĻ° āĻ°ā§‚āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻ—ā§āĻ˛āĻŋ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ (āĻ¸ā§āĻŸā§āĻ¯āĻžāĻŸāĻŋāĻ•āĻ˛āĻŋ āĻ¸āĻš)āĨ¤
  6. āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ–āĻžāĻ°āĻžāĻĒ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻāĻ•āĻŸāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻ•ā§āĻ°āĻŽ āĻ¨āĻŋāĻ•ā§āĻˇā§‡āĻĒ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻāĻ‡ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, C API-āĻ, āĻŦā§āĻ¯āĻ¤āĻŋāĻ•ā§āĻ°āĻŽāĻ—ā§āĻ˛āĻŋ āĻ§āĻ°āĻž āĻšāĻŦā§‡ āĻāĻŦāĻ‚ āĻĢāĻžāĻ‚āĻļāĻ¨āĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĢāĻŋāĻ°āĻŋāĻ¯āĻŧā§‡ āĻĻā§‡āĻŦā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ•ā§āĻ°ā§āĻ¯āĻžāĻļ āĻšāĻŦā§‡ āĻ¨āĻžāĨ¤

āĻāĻŦāĻ‚ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¨āĻŋāĻ°āĻžāĻĒāĻ¤ā§āĻ¤āĻž āĻ—ā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻŸāĻŋ āĻĨāĻžāĻ•āĻž āĻ¸āĻ¤ā§āĻ¤ā§āĻŦā§‡āĻ“, ttf-āĻĒāĻžāĻ°ā§āĻ¸āĻžāĻ°āĻ“ āĻĻā§āĻ°ā§āĻ¤āĻ¤āĻŽ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨āĨ¤ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, CFF2 āĻĒāĻžāĻ°ā§āĻ¸ āĻ•āĻ°āĻž FreeType āĻĨā§‡āĻ•ā§‡ 3.5 āĻ—ā§āĻŖ āĻĻā§āĻ°ā§āĻ¤āĨ¤ āĻĒāĻžāĻ°ā§āĻ¸āĻŋāĻ‚ glyf, āĻāĻĻāĻŋāĻ•ā§‡, stb_truetype-āĻāĻ° āĻ¤ā§āĻ˛āĻ¨āĻžāĻ¯āĻŧ 10% āĻ§ā§€āĻ°, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŸāĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§€āĻ˛ āĻĢāĻ¨ā§āĻŸ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ•āĻ°ā§‡ āĻ¨āĻž, āĻ¯āĻžāĻ° āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ…āĻ¤āĻŋāĻ°āĻŋāĻ•ā§āĻ¤ āĻ¸āĻžā§āĻšāĻ¯āĻŧ āĻ•āĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨āĨ¤ āĻ¤āĻĨā§āĻ¯ āĻ†āĻ°ā§‹ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ README.

āĻ‰āĻ¤ā§āĻ¸: linux.org.ru

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨