GXFonts.h
上传用户:xjjlds
上传日期:2015-12-05
资源大小:22823k
文件大小:16k
源码类别:

多媒体编程

开发平台:

Visual C++

  1. /*
  2.      File:       GXFonts.h
  3.  
  4.      Contains:   QuickDraw GX font routine interfaces.
  5.  
  6.      Version:    Technology: Quickdraw GX 1.1
  7.                  Release:    QuickTime 6.0.2
  8.  
  9.      Copyright:  (c) 1994-2001 by Apple Computer, Inc., all rights reserved.
  10.  
  11.      Bugs?:      For bug reports, consult the following page on
  12.                  the World Wide Web:
  13.  
  14.                      http://developer.apple.com/bugreporter/
  15.  
  16. */
  17. #ifndef __GXFONTS__
  18. #define __GXFONTS__
  19. #ifndef __CONDITIONALMACROS__
  20. #include "ConditionalMacros.h"
  21. #endif
  22. #ifndef __GXMATH__
  23. #include "GXMath.h"
  24. #endif
  25. #ifndef __GXTYPES__
  26. #include "GXTypes.h"
  27. #endif
  28. #ifndef __SCALERSTREAMTYPES__
  29. #include "ScalerStreamTypes.h"
  30. #endif
  31. #if PRAGMA_ONCE
  32. #pragma once
  33. #endif
  34. #ifdef __cplusplus
  35. extern "C" {
  36. #endif
  37. #if PRAGMA_IMPORT
  38. #pragma import on
  39. #endif
  40. #if PRAGMA_STRUCT_ALIGN
  41.     #pragma options align=mac68k
  42. #elif PRAGMA_STRUCT_PACKPUSH
  43.     #pragma pack(push, 2)
  44. #elif PRAGMA_STRUCT_PACK
  45.     #pragma pack(2)
  46. #endif
  47. #if defined(__MWERKS__) && TARGET_CPU_68K
  48.     #pragma push
  49.     #pragma pointers_in_D0
  50. #endif
  51.  
  52. #if CALL_NOT_IN_CARBON
  53. EXTERN_API_C( gxFont )
  54. GXNewFont                       (gxFontStorageTag       storage,
  55.                                  gxFontStorageReference  reference,
  56.                                  gxFontAttribute        attributes)                         THREEWORDINLINE(0x303C, 0x0201, 0xA832);
  57. EXTERN_API_C( gxFontStorageTag )
  58. GXGetFont                       (gxFont                 fontID,
  59.                                  gxFontStorageReference * reference,
  60.                                  gxFontAttribute *      attributes)                         THREEWORDINLINE(0x303C, 0x0202, 0xA832);
  61. EXTERN_API_C( gxFont )
  62. GXFindFont                      (gxFontStorageTag       storage,
  63.                                  gxFontStorageReference  reference,
  64.                                  gxFontAttribute *      attributes)                         THREEWORDINLINE(0x303C, 0x0203, 0xA832);
  65. EXTERN_API_C( void )
  66. GXSetFont                       (gxFont                 fontID,
  67.                                  gxFontStorageTag       storage,
  68.                                  gxFontStorageReference  reference,
  69.                                  gxFontAttribute        attributes)                         THREEWORDINLINE(0x303C, 0x0204, 0xA832);
  70. EXTERN_API_C( void )
  71. GXDisposeFont                   (gxFont                 fontID)                             THREEWORDINLINE(0x303C, 0x0205, 0xA832);
  72. EXTERN_API_C( void )
  73. GXChangedFont                   (gxFont                 fontID)                             THREEWORDINLINE(0x303C, 0x0206, 0xA832);
  74. EXTERN_API_C( gxFontFormatTag )
  75. GXGetFontFormat                 (gxFont                 fontID)                             THREEWORDINLINE(0x303C, 0x0207, 0xA832);
  76. EXTERN_API_C( gxFont )
  77. GXGetDefaultFont                (void)                                                      THREEWORDINLINE(0x303C, 0x0208, 0xA832);
  78. EXTERN_API_C( gxFont )
  79. GXSetDefaultFont                (gxFont                 fontID)                             THREEWORDINLINE(0x303C, 0x0209, 0xA832);
  80. EXTERN_API_C( long )
  81. GXFindFonts                     (gxFont                 familyID,
  82.                                  gxFontName             name,
  83.                                  gxFontPlatform         platform,
  84.                                  gxFontScript           script,
  85.                                  gxFontLanguage         language,
  86.                                  long                   length,
  87.                                  const unsigned char    text[],
  88.                                  long                   index,
  89.                                  long                   count,
  90.                                  gxFont                 fonts[])                              THREEWORDINLINE(0x303C, 0x020A, 0xA832);
  91. EXTERN_API_C( long )
  92. GXCountFontGlyphs               (gxFont                 fontID)                             THREEWORDINLINE(0x303C, 0x020B, 0xA832);
  93. EXTERN_API_C( long )
  94. GXCountFontTables               (gxFont                 fontID)                             THREEWORDINLINE(0x303C, 0x020C, 0xA832);
  95. EXTERN_API_C( long )
  96. GXGetFontTable                  (gxFont                 fontID,
  97.                                  long                   index,
  98.                                  void *                 tableData,
  99.                                  gxFontTableTag *       tableTag)                           THREEWORDINLINE(0x303C, 0x020D, 0xA832);
  100. EXTERN_API_C( long )
  101. GXFindFontTable                 (gxFont                 fontID,
  102.                                  gxFontTableTag         tableTag,
  103.                                  void *                 tableData,
  104.                                  long *                 index)                              THREEWORDINLINE(0x303C, 0x020E, 0xA832);
  105. EXTERN_API_C( long )
  106. GXGetFontTableParts             (gxFont                 fontID,
  107.                                  long                   index,
  108.                                  long                   offset,
  109.                                  long                   length,
  110.                                  void *                 tableData,
  111.                                  gxFontTableTag *       tableTag)                           THREEWORDINLINE(0x303C, 0x020F, 0xA832);
  112. EXTERN_API_C( long )
  113. GXFindFontTableParts            (gxFont                 fontID,
  114.                                  gxFontTableTag         tableTag,
  115.                                  long                   offset,
  116.                                  long                   length,
  117.                                  void *                 tableData,
  118.                                  long *                 index)                              THREEWORDINLINE(0x303C, 0x0210, 0xA832);
  119. EXTERN_API_C( long )
  120. GXSetFontTable                  (gxFont                 fontID,
  121.                                  long                   index,
  122.                                  gxFontTableTag         tableTag,
  123.                                  long                   length,
  124.                                  const void *           tableData)                          THREEWORDINLINE(0x303C, 0x0211, 0xA832);
  125. EXTERN_API_C( long )
  126. GXSetFontTableParts             (gxFont                 fontID,
  127.                                  long                   index,
  128.                                  gxFontTableTag         tableTag,
  129.                                  long                   offset,
  130.                                  long                   oldLength,
  131.                                  long                   newLength,
  132.                                  const void *           tableData)                          THREEWORDINLINE(0x303C, 0x0212, 0xA832);
  133. EXTERN_API_C( long )
  134. GXDeleteFontTable               (gxFont                 fontID,
  135.                                  long                   index,
  136.                                  gxFontTableTag         tableTag)                           THREEWORDINLINE(0x303C, 0x0213, 0xA832);
  137. EXTERN_API_C( long )
  138. GXCountFontNames                (gxFont                 fontID)                             THREEWORDINLINE(0x303C, 0x0214, 0xA832);
  139. EXTERN_API_C( long )
  140. GXGetFontName                   (gxFont                 fontID,
  141.                                  long                   index,
  142.                                  gxFontName *           name,
  143.                                  gxFontPlatform *       platform,
  144.                                  gxFontScript *         script,
  145.                                  gxFontLanguage *       language,
  146.                                  unsigned char          text[])                               THREEWORDINLINE(0x303C, 0x0215, 0xA832);
  147. EXTERN_API_C( long )
  148. GXFindFontName                  (gxFont                 fontID,
  149.                                  gxFontName             name,
  150.                                  gxFontPlatform         platform,
  151.                                  gxFontScript           script,
  152.                                  gxFontLanguage         language,
  153.                                  unsigned char          text[],
  154.                                  long *                 index)                              THREEWORDINLINE(0x303C, 0x0216, 0xA832);
  155. EXTERN_API_C( long )
  156. GXSetFontName                   (gxFont                 fontID,
  157.                                  gxFontName             name,
  158.                                  gxFontPlatform         platform,
  159.                                  gxFontScript           script,
  160.                                  gxFontLanguage         language,
  161.                                  long                   length,
  162.                                  const unsigned char    text[])                               THREEWORDINLINE(0x303C, 0x0217, 0xA832);
  163. EXTERN_API_C( long )
  164. GXDeleteFontName                (gxFont                 fontID,
  165.                                  long                   index,
  166.                                  gxFontName             name,
  167.                                  gxFontPlatform         platform,
  168.                                  gxFontScript           script,
  169.                                  gxFontLanguage         language)                           THREEWORDINLINE(0x303C, 0x0218, 0xA832);
  170. EXTERN_API_C( gxFontName )
  171. GXNewFontNameID                 (gxFont                 fontID)                             THREEWORDINLINE(0x303C, 0x0219, 0xA832);
  172. EXTERN_API_C( long )
  173. GXCountFontEncodings            (gxFont                 fontID)                             THREEWORDINLINE(0x303C, 0x021A, 0xA832);
  174. EXTERN_API_C( gxFontPlatform )
  175. GXGetFontEncoding               (gxFont                 fontID,
  176.                                  long                   index,
  177.                                  gxFontScript *         script,
  178.                                  gxFontLanguage *       language)                           THREEWORDINLINE(0x303C, 0x021B, 0xA832);
  179. EXTERN_API_C( long )
  180. GXFindFontEncoding              (gxFont                 fontID,
  181.                                  gxFontPlatform         platform,
  182.                                  gxFontScript           script,
  183.                                  gxFontLanguage         language)                           THREEWORDINLINE(0x303C, 0x021C, 0xA832);
  184. EXTERN_API_C( long )
  185. GXApplyFontEncoding             (gxFont                 fontID,
  186.                                  long                   index,
  187.                                  long *                 length,
  188.                                  const unsigned char    text[],
  189.                                  long                   count,
  190.                                  unsigned short         glyphs[],
  191.                                  char                   was16Bit[])                           THREEWORDINLINE(0x303C, 0x021D, 0xA832);
  192. EXTERN_API_C( long )
  193. GXCountFontVariations           (gxFont                 fontID)                             THREEWORDINLINE(0x303C, 0x021E, 0xA832);
  194. EXTERN_API_C( long )
  195. GXFindFontVariation             (gxFont                 fontID,
  196.                                  gxFontVariationTag     variationTag,
  197.                                  Fixed *                minValue,
  198.                                  Fixed *                defaultValue,
  199.                                  Fixed *                maxValue,
  200.                                  gxFontName *           name)                               THREEWORDINLINE(0x303C, 0x021F, 0xA832);
  201. EXTERN_API_C( gxFontVariationTag )
  202. GXGetFontVariation              (gxFont                 fontID,
  203.                                  long                   index,
  204.                                  Fixed *                minValue,
  205.                                  Fixed *                defaultValue,
  206.                                  Fixed *                maxValue,
  207.                                  gxFontName *           name)                               THREEWORDINLINE(0x303C, 0x0220, 0xA832);
  208. EXTERN_API_C( long )
  209. GXCountFontInstances            (gxFont                 fontID)                             THREEWORDINLINE(0x303C, 0x0221, 0xA832);
  210. EXTERN_API_C( gxFontName )
  211. GXGetFontInstance               (gxFont                 fontID,
  212.                                  long                   index,
  213.                                  gxFontVariation        variation[])                          THREEWORDINLINE(0x303C, 0x0222, 0xA832);
  214. EXTERN_API_C( long )
  215. GXSetFontInstance               (gxFont                 fontID,
  216.                                  long                   index,
  217.                                  gxFontName             name,
  218.                                  const gxFontVariation  variation[])                          THREEWORDINLINE(0x303C, 0x0223, 0xA832);
  219. EXTERN_API_C( long )
  220. GXDeleteFontInstance            (gxFont                 fontID,
  221.                                  long                   index,
  222.                                  gxFontName             name)                               THREEWORDINLINE(0x303C, 0x0224, 0xA832);
  223. EXTERN_API_C( long )
  224. GXCountFontDescriptors          (gxFont                 fontID)                             THREEWORDINLINE(0x303C, 0x0225, 0xA832);
  225. EXTERN_API_C( gxFontDescriptorTag )
  226. GXGetFontDescriptor             (gxFont                 fontID,
  227.                                  long                   index,
  228.                                  Fixed *                descriptorValue)                    THREEWORDINLINE(0x303C, 0x0226, 0xA832);
  229. EXTERN_API_C( long )
  230. GXFindFontDescriptor            (gxFont                 fontID,
  231.                                  gxFontDescriptorTag    descriptorTag,
  232.                                  Fixed *                descriptorValue)                    THREEWORDINLINE(0x303C, 0x0227, 0xA832);
  233. EXTERN_API_C( long )
  234. GXSetFontDescriptor             (gxFont                 fontID,
  235.                                  long                   index,
  236.                                  gxFontDescriptorTag    descriptorTag,
  237.                                  Fixed                  descriptorValue)                    THREEWORDINLINE(0x303C, 0x0228, 0xA832);
  238. EXTERN_API_C( long )
  239. GXDeleteFontDescriptor          (gxFont                 fontID,
  240.                                  long                   index,
  241.                                  gxFontDescriptorTag    descriptorTag)                      THREEWORDINLINE(0x303C, 0x0229, 0xA832);
  242. EXTERN_API_C( long )
  243. GXCountFontFeatures             (gxFont                 fontID)                             THREEWORDINLINE(0x303C, 0x022A, 0xA832);
  244. EXTERN_API_C( gxFontName )
  245. GXGetFontFeature                (gxFont                 fontID,
  246.                                  long                   index,
  247.                                  gxFontFeatureFlag *    flags,
  248.                                  long *                 settingCount,
  249.                                  gxFontFeatureSetting   settings[],
  250.                                  gxFontFeature *        feature)                            THREEWORDINLINE(0x303C, 0x022B, 0xA832);
  251. EXTERN_API_C( gxFontName )
  252. GXFindFontFeature               (gxFont                 fontID,
  253.                                  gxFontFeature          feature,
  254.                                  gxFontFeatureFlag *    flags,
  255.                                  long *                 settingCount,
  256.                                  gxFontFeatureSetting   settings[],
  257.                                  long *                 index)                              THREEWORDINLINE(0x303C, 0x022C, 0xA832);
  258. EXTERN_API_C( long )
  259. GXGetFontDefaultFeatures        (gxFont                 fontID,
  260.                                  gxRunFeature           features[])                           THREEWORDINLINE(0x303C, 0x0274, 0xA832);
  261. EXTERN_API_C( void )
  262. GXFlattenFont                   (gxFont                 source,
  263.                                  scalerStream *         stream,
  264.                                  gxSpoolBlock *         block)                              THREEWORDINLINE(0x303C, 0x022D, 0xA832);
  265. #endif  /* CALL_NOT_IN_CARBON */
  266.  
  267. #if defined(__MWERKS__) && TARGET_CPU_68K
  268.     #pragma pop
  269. #endif
  270. #if PRAGMA_STRUCT_ALIGN
  271.     #pragma options align=reset
  272. #elif PRAGMA_STRUCT_PACKPUSH
  273.     #pragma pack(pop)
  274. #elif PRAGMA_STRUCT_PACK
  275.     #pragma pack()
  276. #endif
  277. #ifdef PRAGMA_IMPORT_OFF
  278. #pragma import off
  279. #elif PRAGMA_IMPORT
  280. #pragma import reset
  281. #endif
  282. #ifdef __cplusplus
  283. }
  284. #endif
  285. #endif /* __GXFONTS__ */