Mercurial > games > semicongine
comparison fuhtark_test/include/ddk/prntfont.h @ 1500:91c8c3b7cbf0
add: futhark tests for generating vulkan api
| author | sam <sam@basx.dev> |
|---|---|
| date | Wed, 26 Nov 2025 21:36:48 +0700 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 1499:1f58458b7ef7 | 1500:91c8c3b7cbf0 |
|---|---|
| 1 /* | |
| 2 * prntfont.h | |
| 3 * | |
| 4 * Declarations for Windows NT printer driver font metrics | |
| 5 * | |
| 6 * This file is part of the w32api package. | |
| 7 * | |
| 8 * Contributors: | |
| 9 * Created by Filip Navara <xnavara@volny.cz> | |
| 10 * | |
| 11 * THIS SOFTWARE IS NOT COPYRIGHTED | |
| 12 * | |
| 13 * This source code is offered for use in the public domain. You may | |
| 14 * use, modify or distribute it freely. | |
| 15 * | |
| 16 * This code is distributed in the hope that it will be useful but | |
| 17 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY | |
| 18 * DISCLAIMED. This includes but is not limited to warranties of | |
| 19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
| 20 * | |
| 21 */ | |
| 22 | |
| 23 #ifndef __PRNTFONT_H | |
| 24 #define __PRNTFONT_H | |
| 25 | |
| 26 #define UNIFM_VERSION_1_0 0x10000 | |
| 27 #define UNI_GLYPHSETDATA_VERSION_1_0 0x10000 | |
| 28 | |
| 29 #define UFM_SOFT 1 | |
| 30 #define UFM_CART 2 | |
| 31 #define UFM_SCALABLE 4 | |
| 32 | |
| 33 #define DF_TYPE_HPINTELLIFONT 0 | |
| 34 #define DF_TYPE_TRUETYPE 1 | |
| 35 #define DF_TYPE_PST1 2 | |
| 36 #define DF_TYPE_CAPSL 3 | |
| 37 #define DF_TYPE_OEM1 4 | |
| 38 #define DF_TYPE_OEM2 5 | |
| 39 #define DF_NOITALIC 1 | |
| 40 #define DF_NOUNDER 2 | |
| 41 #define DF_XM_CR 4 | |
| 42 #define DF_NO_BOLD 8 | |
| 43 #define DF_NO_DOUBLE_UNDERLINE 16 | |
| 44 #define DF_NO_STRIKETHRU 32 | |
| 45 #define DF_BKSP_OK 64 | |
| 46 | |
| 47 #define MTYPE_COMPOSE 1 | |
| 48 #define MTYPE_DIRECT 2 | |
| 49 #define MTYPE_PAIRED 4 | |
| 50 #define MTYPE_FORMAT_MASK 7 | |
| 51 #define MTYPE_SINGLE 8 | |
| 52 #define MTYPE_DOUBLE 16 | |
| 53 #define MTYPE_DOUBLEBYTECHAR_MASK 24 | |
| 54 #define MTYPE_REPLACE 32 | |
| 55 #define MTYPE_ADD 64 | |
| 56 #define MTYPE_DISABLE 128 | |
| 57 #define MTYPE_PREDEFIN_MASK 192 | |
| 58 | |
| 59 #define CC_NOPRECNV 0x0000FFFF | |
| 60 #define CC_DEFAULT 0 | |
| 61 #define CC_CP437 -1 | |
| 62 #define CC_CP850 -2 | |
| 63 #define CC_CP863 -3 | |
| 64 #define CC_BIG5 -10 | |
| 65 #define CC_ISC -11 | |
| 66 #define CC_JIS -12 | |
| 67 #define CC_JIS_ANK -13 | |
| 68 #define CC_NS86 -14 | |
| 69 #define CC_TCA -15 | |
| 70 #define CC_GB2312 -16 | |
| 71 #define CC_SJIS -17 | |
| 72 #define CC_WANSUNG -18 | |
| 73 | |
| 74 #define UFF_FILE_MAGIC 'UFF1' | |
| 75 #define UFF_VERSION_NUMBER 0x10001 | |
| 76 #define FONT_DIR_SORTED 1 | |
| 77 #define FONT_REC_SIG 'CERF' | |
| 78 #define WINNT_INSTALLER_SIG 'IFTN' | |
| 79 | |
| 80 #define FONT_FL_UFM 0x0001 | |
| 81 #define FONT_FL_IFI 0x0002 | |
| 82 #define FONT_FL_SOFTFONT 0x0004 | |
| 83 #define FONT_FL_PERMANENT_SF 0x0008 | |
| 84 #define FONT_FL_DEVICEFONT 0x0010 | |
| 85 #define FONT_FL_GLYPHSET_GTT 0x0020 | |
| 86 #define FONT_FL_GLYPHSET_RLE 0x0040 | |
| 87 #define FONT_FL_RESERVED 0x8000 | |
| 88 | |
| 89 #define DATA_UFM_SIG 'MFUD' | |
| 90 #define DATA_IFI_SIG 'IFID' | |
| 91 #define DATA_GTT_SIG 'TTGD' | |
| 92 #define DATA_CTT_SIG 'TTCD' | |
| 93 #define DATA_VAR_SIG 'RAVD' | |
| 94 | |
| 95 #define FG_CANCHANGE 128 | |
| 96 #define WM_FI_FILENAME 900 | |
| 97 | |
| 98 #define GET_UNIDRVINFO(pUFM) ((PUNIDRVINFO)((ULONG_PTR)(pUFM) + (pUFM)->loUnidrvInfo)) | |
| 99 #define GET_IFIMETRICS(pUFM) ((IFIMETRICS*)((ULONG_PTR)(pUFM) + (pUFM)->loIFIMetrics)) | |
| 100 #define GET_EXTTEXTMETRIC(pUFM) ((EXTTEXTMETRIC*)((ULONG_PTR)(pUFM) + (pUFM)->loExtTextMetric)) | |
| 101 #define GET_WIDTHTABLE(pUFM) ((PWIDTHTABLE)((ULONG_PTR)(pUFM) + (pUFM)->loWidthTable)) | |
| 102 #define GET_KERNDATA(pUFM) ((PKERNDATA)((ULONG_PTR)(pUFM) + (pUFM)->loKernPair)) | |
| 103 #define GET_SELECT_CMD(pUni) ((PCHAR)(pUni) + (pUni)->SelectFont.loOffset) | |
| 104 #define GET_UNSELECT_CMD(pUni) ((PCHAR)(pUni) + (pUni)->UnSelectFont.loOffset) | |
| 105 #define GET_GLYPHRUN(pGTT) ((PGLYPHRUN)((ULONG_PTR)(pGTT) + ((PUNI_GLYPHSETDATA)pGTT)->loRunOffset)) | |
| 106 #define GET_CODEPAGEINFO(pGTT) ((PUNI_CODEPAGEINFO)((ULONG_PTR)(pGTT) + ((PUNI_GLYPHSETDATA)pGTT)->loCodePageOffset)) | |
| 107 #define GET_MAPTABLE(pGTT) ((PMAPTABLE)((ULONG_PTR)(pGTT) + ((PUNI_GLYPHSETDATA)pGTT)->loMapTableOffset)) | |
| 108 | |
| 109 typedef struct _UNIFM_HDR | |
| 110 { | |
| 111 DWORD dwSize; | |
| 112 DWORD dwVersion; | |
| 113 ULONG ulDefaultCodepage; | |
| 114 LONG lGlyphSetDataRCID; | |
| 115 DWORD loUnidrvInfo; | |
| 116 DWORD loIFIMetrics; | |
| 117 DWORD loExtTextMetric; | |
| 118 DWORD loWidthTable; | |
| 119 DWORD loKernPair; | |
| 120 DWORD dwReserved[2]; | |
| 121 } UNIFM_HDR, *PUNIFM_HDR; | |
| 122 | |
| 123 typedef struct _INVOC | |
| 124 { | |
| 125 DWORD dwCount; | |
| 126 DWORD loOffset; | |
| 127 } INVOC, *PINVOC; | |
| 128 | |
| 129 typedef struct _UNIDRVINFO | |
| 130 { | |
| 131 DWORD dwSize; | |
| 132 DWORD flGenFlags; | |
| 133 WORD wType; | |
| 134 WORD fCaps; | |
| 135 WORD wXRes; | |
| 136 WORD wYRes; | |
| 137 SHORT sYAdjust; | |
| 138 SHORT sYMoved; | |
| 139 WORD wPrivateData; | |
| 140 SHORT sShift; | |
| 141 INVOC SelectFont; | |
| 142 INVOC UnSelectFont; | |
| 143 WORD wReserved[4]; | |
| 144 } UNIDRVINFO, *PUNIDRVINFO; | |
| 145 | |
| 146 typedef struct _EXTTEXTMETRIC | |
| 147 { | |
| 148 SHORT emSize; | |
| 149 SHORT emPointSize; | |
| 150 SHORT emOrientation; | |
| 151 SHORT emMasterHeight; | |
| 152 SHORT emMinScale; | |
| 153 SHORT emMaxScale; | |
| 154 SHORT emMasterUnits; | |
| 155 SHORT emCapHeight; | |
| 156 SHORT emXHeight; | |
| 157 SHORT emLowerCaseAscent; | |
| 158 SHORT emLowerCaseDescent; | |
| 159 SHORT emSlant; | |
| 160 SHORT emSuperScript; | |
| 161 SHORT emSubScript; | |
| 162 SHORT emSuperScriptSize; | |
| 163 SHORT emSubScriptSize; | |
| 164 SHORT emUnderlineOffset; | |
| 165 SHORT emUnderlineWidth; | |
| 166 SHORT emDoubleUpperUnderlineOffset; | |
| 167 SHORT emDoubleLowerUnderlineOffset; | |
| 168 SHORT emDoubleUpperUnderlineWidth; | |
| 169 SHORT emDoubleLowerUnderlineWidth; | |
| 170 SHORT emStrikeOutOffset; | |
| 171 SHORT emStrikeOutWidth; | |
| 172 WORD emKernPairs; | |
| 173 WORD emKernTracks; | |
| 174 } EXTTEXTMETRIC, *PEXTTEXTMETRIC; | |
| 175 | |
| 176 typedef struct _WIDTHRUN | |
| 177 { | |
| 178 WORD wStartGlyph; | |
| 179 WORD wGlyphCount; | |
| 180 DWORD loCharWidthOffset; | |
| 181 } WIDTHRUN, *PWIDTHRUN; | |
| 182 | |
| 183 typedef struct _WIDTHTABLE | |
| 184 { | |
| 185 DWORD dwSize; | |
| 186 DWORD dwRunNum; | |
| 187 WIDTHRUN WidthRun[1]; | |
| 188 } WIDTHTABLE, *PWIDTHTABLE; | |
| 189 | |
| 190 typedef struct _KERNDATA | |
| 191 { | |
| 192 DWORD dwSize; | |
| 193 DWORD dwKernPairNum; | |
| 194 FD_KERNINGPAIR KernPair[1]; | |
| 195 } KERNDATA, *PKERNDATA; | |
| 196 | |
| 197 typedef struct _UNI_GLYPHSETDATA | |
| 198 { | |
| 199 DWORD dwSize; | |
| 200 DWORD dwVersion; | |
| 201 DWORD dwFlags; | |
| 202 LONG lPredefinedID; | |
| 203 DWORD dwGlyphCount; | |
| 204 DWORD dwRunCount; | |
| 205 DWORD loRunOffset; | |
| 206 DWORD dwCodePageCount; | |
| 207 DWORD loCodePageOffset; | |
| 208 DWORD loMapTableOffset; | |
| 209 DWORD dwReserved[2]; | |
| 210 } UNI_GLYPHSETDATA, *PUNI_GLYPHSETDATA; | |
| 211 | |
| 212 typedef struct _UNI_CODEPAGEINFO | |
| 213 { | |
| 214 DWORD dwCodePage; | |
| 215 INVOC SelectSymbolSet; | |
| 216 INVOC UnSelectSymbolSet; | |
| 217 } UNI_CODEPAGEINFO, *PUNI_CODEPAGEINFO; | |
| 218 | |
| 219 typedef struct _GLYPHRUN | |
| 220 { | |
| 221 WCHAR wcLow; | |
| 222 WORD wGlyphCount; | |
| 223 } GLYPHRUN, *PGLYPHRUN; | |
| 224 | |
| 225 typedef struct _TRANSDATA | |
| 226 { | |
| 227 BYTE ubCodePageID; | |
| 228 BYTE ubType; | |
| 229 union | |
| 230 { | |
| 231 SHORT sCode; | |
| 232 BYTE ubCode; | |
| 233 BYTE ubPairs[2]; | |
| 234 } uCode; | |
| 235 } TRANSDATA, *PTRANSDATA; | |
| 236 | |
| 237 typedef struct _MAPTABLE { | |
| 238 DWORD dwSize; | |
| 239 DWORD dwGlyphNum; | |
| 240 TRANSDATA Trans[1]; | |
| 241 } MAPTABLE, *PMAPTABLE; | |
| 242 | |
| 243 typedef struct _UFF_FILEHEADER { | |
| 244 DWORD dwSignature; | |
| 245 DWORD dwVersion; | |
| 246 DWORD dwSize; | |
| 247 DWORD nFonts; | |
| 248 DWORD nGlyphSets; | |
| 249 DWORD nVarData; | |
| 250 DWORD offFontDir; | |
| 251 DWORD dwFlags; | |
| 252 DWORD dwReserved[4]; | |
| 253 } UFF_FILEHEADER, *PUFF_FILEHEADER; | |
| 254 | |
| 255 typedef struct _UFF_FONTDIRECTORY { | |
| 256 DWORD dwSignature; | |
| 257 WORD wSize; | |
| 258 WORD wFontID; | |
| 259 SHORT sGlyphID; | |
| 260 WORD wFlags; | |
| 261 DWORD dwInstallerSig; | |
| 262 DWORD offFontName; | |
| 263 DWORD offCartridgeName; | |
| 264 DWORD offFontData; | |
| 265 DWORD offGlyphData; | |
| 266 DWORD offVarData; | |
| 267 } UFF_FONTDIRECTORY, *PUFF_FONTDIRECTORY; | |
| 268 | |
| 269 typedef struct _DATA_HEADER { | |
| 270 DWORD dwSignature; | |
| 271 WORD wSize; | |
| 272 WORD wDataID; | |
| 273 DWORD dwDataSize; | |
| 274 DWORD dwReserved; | |
| 275 } DATA_HEADER, *PDATA_HEADER; | |
| 276 | |
| 277 typedef struct _OEMFONTINSTPARAM { | |
| 278 DWORD cbSize; | |
| 279 HANDLE hPrinter; | |
| 280 HANDLE hModule; | |
| 281 HANDLE hHeap; | |
| 282 DWORD dwFlags; | |
| 283 PWSTR pFontInstallerName; | |
| 284 } OEMFONTINSTPARAM, *POEMFONTINSTPARAM; | |
| 285 | |
| 286 #endif /* __PRNTFONT_H */ |
