cffcmap.h 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. /***************************************************************************/
  2. /* */
  3. /* cffcmap.h */
  4. /* */
  5. /* CFF character mapping table (cmap) support (specification). */
  6. /* */
  7. /* Copyright 2002 by */
  8. /* David Turner, Robert Wilhelm, and Werner Lemberg. */
  9. /* */
  10. /* This file is part of the FreeType project, and may only be used, */
  11. /* modified, and distributed under the terms of the FreeType project */
  12. /* license, LICENSE.TXT. By continuing to use, modify, or distribute */
  13. /* this file you indicate that you have read the license and */
  14. /* understand and accept it fully. */
  15. /* */
  16. /***************************************************************************/
  17. #ifndef __CFFCMAP_H__
  18. #define __CFFCMAP_H__
  19. #include "cffobjs.h"
  20. FT_BEGIN_HEADER
  21. /*************************************************************************/
  22. /*************************************************************************/
  23. /***** *****/
  24. /***** TYPE1 STANDARD (AND EXPERT) ENCODING CMAPS *****/
  25. /***** *****/
  26. /*************************************************************************/
  27. /*************************************************************************/
  28. /* standard (and expert) encoding cmaps */
  29. typedef struct CFF_CMapStdRec_* CFF_CMapStd;
  30. typedef struct CFF_CMapStdRec_
  31. {
  32. FT_CMapRec cmap;
  33. FT_UInt count;
  34. FT_UShort* gids; /* up to 256 elements */
  35. } CFF_CMapStdRec;
  36. FT_CALLBACK_TABLE const FT_CMap_ClassRec
  37. cff_cmap_encoding_class_rec;
  38. /*************************************************************************/
  39. /*************************************************************************/
  40. /***** *****/
  41. /***** CFF SYNTHETIC UNICODE ENCODING CMAP *****/
  42. /***** *****/
  43. /*************************************************************************/
  44. /*************************************************************************/
  45. /* unicode (synthetic) cmaps */
  46. typedef struct CFF_CMapUnicodeRec_* CFF_CMapUnicode;
  47. typedef struct CFF_CMapUniPairRec_
  48. {
  49. FT_UInt32 unicode;
  50. FT_UInt gindex;
  51. } CFF_CMapUniPairRec, *CFF_CMapUniPair;
  52. typedef struct CFF_CMapUnicodeRec_
  53. {
  54. FT_CMapRec cmap;
  55. FT_UInt num_pairs;
  56. CFF_CMapUniPair pairs;
  57. } CFF_CMapUnicodeRec;
  58. FT_CALLBACK_TABLE const FT_CMap_ClassRec
  59. cff_cmap_unicode_class_rec;
  60. FT_END_HEADER
  61. #endif /* __CFFCMAP_H__ */
  62. /* END */