Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

102 lines
2.7 KiB

  1. /***
  2. **
  3. ** Module: Trans
  4. **
  5. ** Description:
  6. ** This is a module of the T1 to TT font converter. The module
  7. ** contains functions that will convert T1 specific data into
  8. ** corresponding TT data, such as hints and font metrics.
  9. **
  10. ** Author: Michael Jansson
  11. **
  12. ** Created: 5/28/93
  13. **
  14. ***/
  15. #ifndef _ARGS
  16. # define IN const
  17. # define OUT
  18. # define INOUT
  19. # define _ARGS(arg) arg
  20. #endif
  21. #ifndef FASTCALL
  22. # ifdef MSDOS
  23. # define FASTCALL __fastcall
  24. # else
  25. # define FASTCALL
  26. # endif
  27. #endif
  28. struct TTMetrics;
  29. struct T1Metrics;
  30. struct TTHandle;
  31. struct T1Glyph;
  32. struct TTGlyph;
  33. struct TTComposite;
  34. struct Composite;
  35. /***
  36. ** Function: ConvertComposite
  37. **
  38. ** Description:
  39. ** This function convertes the data associated to a T1 font seac glyph
  40. ** into the corresponding data used in a TT font composite glyph.
  41. **
  42. ***/
  43. errcode FASTCALL ConvertComposite _ARGS((INOUT struct T1Metrics *,
  44. IN struct Composite *,
  45. OUT struct TTComposite *));
  46. /***
  47. ** Function: ConvertGlyph
  48. **
  49. ** Description:
  50. ** This function convertes the data associated to a T1 font glyph
  51. ** into the corresponding data used in a TT font glyph.
  52. ***/
  53. errcode FASTCALL ConvertGlyph _ARGS((INOUT struct T1Metrics *,
  54. IN struct T1Glyph *,
  55. OUT struct TTGlyph **,
  56. IN int));
  57. /***
  58. ** Function: ConvertMetrics
  59. **
  60. ** Description:
  61. **
  62. ***/
  63. errcode FASTCALL ConvertMetrics _ARGS((IN struct TTHandle *,
  64. INOUT struct T1Metrics *,
  65. OUT struct TTMetrics *,
  66. IN char *tag));
  67. /***
  68. ** Function: TransX
  69. **
  70. ** Description:
  71. ** Translate a horizontal coordinate according to a transformation matrix.
  72. ***/
  73. funit FASTCALL TransX _ARGS((IN struct T1Metrics *t1,
  74. IN funit x));
  75. /***
  76. ** Function: TransY
  77. **
  78. ** Description:
  79. ** Translate a vertical coordinate according to a transformation matrix.
  80. ***/
  81. funit FASTCALL TransY _ARGS((IN struct T1Metrics *t1,
  82. IN funit y));
  83. /***
  84. ** Function: TransAllPoints
  85. **
  86. ** Description:
  87. ** Translate a coordinate according to a transformation matrix.
  88. ***/
  89. void FASTCALL TransAllPoints _ARGS((IN struct T1Metrics *t1,
  90. INOUT Point *pts,
  91. IN USHORT cnt,
  92. IN f16d16 *fmatrix));