home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / OS2BAS.ZIP / PMFONT.BI < prev    next >
Text File  |  1989-07-25  |  3KB  |  115 lines

  1. '**************************************************************
  2. '*
  3. '* Include File: PMFonts.BI
  4. '*
  5. '* Requires:     none
  6. '*
  7. '* Description:  Font types and constants
  8. '*
  9. '*************************************************************
  10.  
  11. TYPE FOCAMETRICS    ' foca
  12.     ulIdentity AS LONG
  13.     ulSize AS LONG
  14.     szFamilyname AS STRING * 32
  15.     szFacename AS STRING * 32
  16.     usRegistryId AS INTEGER
  17.     usCodePage AS INTEGER
  18.     yEmHeight AS INTEGER
  19.     yXHeight AS INTEGER
  20.     yMaxAscender AS INTEGER
  21.     yMaxDescender AS INTEGER
  22.     yLowerCaseAscent AS INTEGER
  23.     yLowerCaseDescent AS INTEGER
  24.     yInternalLeading AS INTEGER
  25.     yExternalLeading AS INTEGER
  26.     xAveCharWidth AS INTEGER
  27.     xMaxCharInc AS INTEGER
  28.     xEmInc AS INTEGER
  29.     yMaxBaselineExt AS INTEGER
  30.     sCharSlope AS INTEGER
  31.     sInlineDir AS INTEGER
  32.     sCharRot AS INTEGER
  33.     usWeightClass AS INTEGER
  34.     usWidthClass AS INTEGER
  35.     xDeviceRes AS INTEGER
  36.     yDeviceRes AS INTEGER
  37.     usFirstChar AS INTEGER
  38.     usLastChar AS INTEGER
  39.     usDefaultChar AS INTEGER
  40.     usBreakChar AS INTEGER
  41.     usNominalPointSize AS INTEGER
  42.     usMinimumPointSize AS INTEGER
  43.     usMaximumPointSize AS INTEGER
  44.     fsTypeFlags AS INTEGER
  45.     fsDefn AS INTEGER
  46.     fsSelectionFlags AS INTEGER
  47.     fsCapabilities AS INTEGER
  48.     ySubscriptXSize AS INTEGER
  49.     ySubscriptYSize AS INTEGER
  50.     ySubscriptXOffset AS INTEGER
  51.     ySubscriptYOffset AS INTEGER
  52.     ySuperscriptXSize AS INTEGER
  53.     ySuperscriptYSize AS INTEGER
  54.     ySuperscriptXOffset AS INTEGER
  55.     ySuperscriptYOffset AS INTEGER
  56.     yUnderscoreSize AS INTEGER
  57.     yUnderscorePosition AS INTEGER
  58.     yStrikeoutSize AS INTEGER
  59.     yStrikeoutPosition AS INTEGER
  60.     usKerningPairs AS INTEGER
  61.     usKerningTracks AS INTEGER
  62.     pszDeviceNameOffset AS LONG
  63. END TYPE
  64.  
  65. TYPE FONTDEFINITIONHEADER      ' fdh
  66.     ulIdentity AS LONG
  67.     ulSize AS LONG
  68.     fsFontdef AS INTEGER
  69.     fsChardef AS INTEGER
  70.     usCellSize AS INTEGER
  71.     xCellWidth AS INTEGER
  72.     yCellHeight AS INTEGER
  73.     xCellIncrement AS INTEGER
  74.     xCellA AS INTEGER
  75.     xCellB AS INTEGER
  76.     xCellC AS INTEGER
  77.     pCellBaseOffset AS INTEGER
  78. END TYPE
  79.  
  80. CONST FONTDEFFONT1 =    &H0047       ' set width, height, inc. & base offset
  81. CONST FONTDEFFONT2 =    &H0042       ' set height & base offset
  82. CONST FONTDEFFONT3 =    &H0042       ' set height & base offset
  83. CONST FONTDEFCHAR1 =    &H0081       ' set char offset and width
  84. CONST FONTDEFCHAR2 =    &H0081       ' set char offset and width
  85. CONST FONTDEFCHAR3 =    &H00b8       ' set char offset, A, B, and C space
  86. CONST SPACEUNDEF   =    &H8000       ' space undefined = take default
  87.  
  88. TYPE FONTSIGNATURE    ' fs
  89.     ulIdentity AS LONG
  90.     ulSize AS LONG
  91.     achSignature AS STRING * 12
  92. END TYPE
  93.  
  94. TYPE FOCAFONT        ' ff
  95.     fssignature AS FONTSIGNATURE
  96.     fmMetrics AS FOCAMETRICS
  97.     fdDefinitions AS FONTDEFINITIONHEADER
  98. END TYPE
  99.  
  100. CONST FONTSIGNATURE  =    &Hfffffffe ' Identity header start
  101. CONST FONTMETRICS    =    &H00000001 ' Identity metrics
  102. CONST FONTDEFINITION =    &H00000002 ' Identity definition
  103. CONST FONTENDRECORD  =    &Hffffffff ' Identity record end
  104.  
  105. ' Options for QueryFonts
  106.  
  107. CONST QUERYPUBLICFONTS    =    &H0001
  108. CONST QUERYPRIVATEFONTS =    &H0002
  109.  
  110. CONST CDEFGENERIC     =    &H0001
  111. CONST CDEFBOLD         =    &H0002
  112. CONST CDEFITALIC     =    &H0004
  113. CONST CDEFUNDERSCORE     =    &H0008
  114. CONST CDEFSTRIKEOUT     =    &H0010
  115.