Leaked source code of windows server 2003
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.

120 lines
4.1 KiB

  1. /***************************************************************************
  2. * PANMAP.H - Base definitions for ElseWare PANOSE(tm) 1.0 Font Mapper.
  3. * OLE 2.0 Implementation
  4. *
  5. *
  6. * Copyright (C) 1991-94 ElseWare Corporation. All rights reserved.
  7. ***************************************************************************/
  8. #ifndef __PANOLE2_H__
  9. #define __PANOLE2_H__
  10. #ifdef INITGUID
  11. /* A Global Unique Identifier and an Interface ID for the PANOSE mapper.
  12. */
  13. DEFINE_GUID(CLSID_PANOSEMapper, 0xBD84B381L, 0x8CA2, 0x1069, 0xAB, 0x1D, 0x08,
  14. 0x00, 0x09, 0x48, 0xF5, 0x34);
  15. DEFINE_GUID(IID_IPANOSEMapper, 0xBD84B382L, 0x8CA2, 0x1069, 0xAB, 0x1D, 0x08,
  16. 0x00, 0x09, 0x48, 0xF5, 0x34);
  17. #else
  18. #if defined(__cplusplus)
  19. extern "C" {
  20. #endif
  21. extern const CLSID CLSID_PANOSEMapper;
  22. extern const IID IID_IPANOSEMapper;
  23. #if defined(__cplusplus)
  24. }
  25. #endif
  26. #endif
  27. DECLARE_INTERFACE_( IPANOSEMapper, IUnknown)
  28. {
  29. /* IUnknown
  30. */
  31. STDMETHOD(QueryInterface) (THIS_
  32. REFIID riid,
  33. LPVOID FAR* ppvObj) PURE;
  34. STDMETHOD_(ULONG,AddRef) (THIS) PURE;
  35. STDMETHOD_(ULONG,Release) (THIS) PURE;
  36. /* The PANOSE Mapper interface.
  37. */
  38. STDMETHOD_(USHORT, unPANMatchFonts) ( THIS_
  39. LPBYTE lpPanWant,
  40. ULONG ulSizeWant,
  41. LPBYTE lpPanThis,
  42. ULONG ulSizeThis,
  43. BYTE jMapToFamily) PURE;
  44. STDMETHOD_(VOID, vPANMakeDummy)( THIS_
  45. LPBYTE lpPanThis,
  46. USHORT unSize ) PURE;
  47. STDMETHOD_(SHORT, nPANGetMapDefault)( THIS_
  48. LPBYTE lpPanDef,
  49. USHORT unSizePanDef ) PURE;
  50. STDMETHOD_(SHORT, nPANSetMapDefault) (THIS_
  51. LPBYTE lpPanDef,
  52. USHORT unSizePanDef ) PURE;
  53. STDMETHOD_(BOOL, bPANEnableMapDefault) (THIS_
  54. BOOL bEnable ) PURE;
  55. STDMETHOD_(BOOL, bPANIsDefaultEnabled) (THIS) PURE;
  56. STDMETHOD_(USHORT, unPANPickFonts) (THIS_
  57. USHORT FAR *lpIndsBest,
  58. USHORT FAR *lpMatchValues,
  59. LPBYTE lpPanWant,
  60. USHORT unNumInds,
  61. LPBYTE lpPanFirst,
  62. USHORT unNumAvail,
  63. SHORT nRecSize,
  64. BYTE jMapToFamily ) PURE ;
  65. STDMETHOD_(USHORT, unPANGetMapThreshold) (THIS) PURE;
  66. STDMETHOD_(BOOL, bPANSetMapThreshold) (THIS_
  67. USHORT unThreshold ) PURE;
  68. STDMETHOD_(BOOL, bPANIsThresholdRelaxed) (THIS) PURE;
  69. STDMETHOD_(VOID, vPANRelaxThreshold) (THIS) PURE;
  70. STDMETHOD_(BOOL, bPANRestoreThreshold) (THIS) PURE;
  71. STDMETHOD_(BOOL, bPANGetMapWeights) (THIS_
  72. BYTE jFamilyA,
  73. BYTE jFamilyB,
  74. LPBYTE lpjWts,
  75. LPBOOL lpbIsCustom ) PURE;
  76. STDMETHOD_(BOOL, bPANSetMapWeights) (THIS_
  77. BYTE jFamilyA,
  78. BYTE jFamilyB, LPBYTE lpjWts ) PURE;
  79. STDMETHOD_(BOOL, bPANClearMapWeights) (THIS_
  80. BYTE jFamilyA,
  81. BYTE jFamilyB ) PURE;
  82. };
  83. typedef IPANOSEMapper FAR * LPPANOSEMAPPER;
  84. //------------------------------------------------------------------------
  85. // Mapper definitions.
  86. //
  87. #endif // __PANOLE2_H__
  88.