📄 wingdi.pas
字号:
peFlags: BYTE;
end;
{$EXTERNALSYM tagPALETTEENTRY}
PALETTEENTRY = tagPALETTEENTRY;
{$EXTERNALSYM PALETTEENTRY}
LPPALETTEENTRY = ^PALETTEENTRY;
{$EXTERNALSYM LPPALETTEENTRY}
TPaletteEntry = PALETTEENTRY;
// Logical Palette
PLogPalette = ^TLogPalette;
tagLOGPALETTE = record
palVersion: WORD;
palNumEntries: WORD;
palPalEntry: array [0..0] of PALETTEENTRY;
end;
{$EXTERNALSYM tagLOGPALETTE}
LOGPALETTE = tagLOGPALETTE;
{$EXTERNALSYM LOGPALETTE}
LPLOGPALETTE = ^LOGPALETTE;
{$EXTERNALSYM LPLOGPALETTE}
NPLOGPALETTE = ^LOGPALETTE;
{$EXTERNALSYM NPLOGPALETTE}
TLogPalette = LOGPALETTE;
// Logical Font
const
LF_FACESIZE = 32;
{$EXTERNALSYM LF_FACESIZE}
type
PLogFontA = ^TLogFontA;
tagLOGFONTA = record
lfHeight: LONG;
lfWidth: LONG;
lfEscapement: LONG;
lfOrientation: LONG;
lfWeight: LONG;
lfItalic: BYTE;
lfUnderline: BYTE;
lfStrikeOut: BYTE;
lfCharSet: BYTE;
lfOutPrecision: BYTE;
lfClipPrecision: BYTE;
lfQuality: BYTE;
lfPitchAndFamily: BYTE;
lfFaceName: array [0..LF_FACESIZE - 1] of CHAR;
end;
{$EXTERNALSYM tagLOGFONTA}
LOGFONTA = tagLOGFONTA;
{$EXTERNALSYM LOGFONTA}
LPLOGFONTA = ^LOGFONTA;
{$EXTERNALSYM LPLOGFONTA}
NPLOGFONTA = ^LOGFONTA;
{$EXTERNALSYM NPLOGFONTA}
TLogFontA = LOGFONTA;
PLogFontW = ^TLogFontW;
tagLOGFONTW = record
lfHeight: LONG;
lfWidth: LONG;
lfEscapement: LONG;
lfOrientation: LONG;
lfWeight: LONG;
lfItalic: BYTE;
lfUnderline: BYTE;
lfStrikeOut: BYTE;
lfCharSet: BYTE;
lfOutPrecision: BYTE;
lfClipPrecision: BYTE;
lfQuality: BYTE;
lfPitchAndFamily: BYTE;
lfFaceName: array [0..LF_FACESIZE - 1] of WCHAR;
end;
{$EXTERNALSYM tagLOGFONTW}
LOGFONTW = tagLOGFONTW;
{$EXTERNALSYM LOGFONTW}
LPLOGFONTW = ^LOGFONTW;
{$EXTERNALSYM LPLOGFONTW}
NPLOGFONTW = ^LOGFONTW;
{$EXTERNALSYM NPLOGFONTW}
TLogFontW = LOGFONTW;
{$IFDEF UNICODE}
LOGFONT = LOGFONTW;
{$EXTERNALSYM LOGFONT}
PLOGFONT = PLOGFONTW;
{$EXTERNALSYM PLOGFONT}
NPLOGFONT = NPLOGFONTW;
{$EXTERNALSYM NPLOGFONT}
LPLOGFONT = LPLOGFONTW;
{$EXTERNALSYM LPLOGFONT}
TLogFont = TLogFontW;
{$ELSE}
LOGFONT = LOGFONTA;
{$EXTERNALSYM LOGFONT}
PLOGFONT = PLOGFONTA;
{$EXTERNALSYM PLOGFONT}
NPLOGFONT = NPLOGFONTA;
{$EXTERNALSYM NPLOGFONT}
LPLOGFONT = LPLOGFONTA;
{$EXTERNALSYM LPLOGFONT}
TLogFont = TLogFontA;
{$ENDIF}
const
LF_FULLFACESIZE = 64;
{$EXTERNALSYM LF_FULLFACESIZE}
// Structure passed to FONTENUMPROC
type
PEnumLogFontA = ^TEnumLogFontA;
tagENUMLOGFONTA = record
elfLogFont: LOGFONTA;
elfFullName: array [ 0..LF_FULLFACESIZE - 1] of BYTE;
elfStyle: array [0..LF_FACESIZE - 1] of BYTE;
end;
{$EXTERNALSYM tagENUMLOGFONTA}
ENUMLOGFONTA = tagENUMLOGFONTA;
{$EXTERNALSYM ENUMLOGFONTA}
LPENUMLOGFONTA = ^ENUMLOGFONTA;
{$EXTERNALSYM LPENUMLOGFONTA}
TEnumLogFontA = ENUMLOGFONTA;
// Structure passed to FONTENUMPROC
PEnumLogFontW = ^TEnumLogFontW;
tagENUMLOGFONTW = record
elfLogFont: LOGFONTW;
elfFullName: array [0..LF_FULLFACESIZE - 1] of WCHAR;
elfStyle: array [0..LF_FACESIZE - 1] of WCHAR;
end;
{$EXTERNALSYM tagENUMLOGFONTW}
ENUMLOGFONTW = tagENUMLOGFONTW;
{$EXTERNALSYM ENUMLOGFONTW}
LPENUMLOGFONTW = ^ENUMLOGFONTW;
{$EXTERNALSYM LPENUMLOGFONTW}
TEnumLogFontW = ENUMLOGFONTW;
{$IFDEF UNICODE}
ENUMLOGFONT = ENUMLOGFONTW;
{$EXTERNALSYM ENUMLOGFONT}
LPENUMLOGFONT = LPENUMLOGFONTW;
{$EXTERNALSYM LPENUMLOGFONT}
TEnumLogFont = TEnumLogFontW;
PEnumLogFont = PEnumLogFontW;
{$ELSE}
ENUMLOGFONT = ENUMLOGFONTA;
{$EXTERNALSYM ENUMLOGFONT}
LPENUMLOGFONT = LPENUMLOGFONTA;
{$EXTERNALSYM LPENUMLOGFONT}
TEnumLogFont = TEnumLogFontA;
PEnumLogFont = PEnumLogFontA;
{$ENDIF}
PEnumLogFontExA = ^TEnumLogFontExA;
tagENUMLOGFONTEXA = record
elfLogFont: LOGFONTA;
elfFullName: array [0..LF_FULLFACESIZE - 1] of BYTE;
elfStyle: array [0..LF_FACESIZE - 1] of BYTE;
elfScript: array [0..LF_FACESIZE - 1] of BYTE;
end;
{$EXTERNALSYM tagENUMLOGFONTEXA}
ENUMLOGFONTEXA = tagENUMLOGFONTEXA;
{$EXTERNALSYM ENUMLOGFONTEXA}
LPENUMLOGFONTEXA = ^ENUMLOGFONTEXA;
{$EXTERNALSYM LPENUMLOGFONTEXA}
TEnumLogFontExA = ENUMLOGFONTEXA;
PEnumLogFontExW = ^TEnumLogFontExW;
tagENUMLOGFONTEXW = record
elfLogFont: LOGFONTW;
elfFullName: array [0..LF_FULLFACESIZE - 1] of WCHAR;
elfStyle: array [0..LF_FACESIZE - 1] of WCHAR;
elfScript: array [0..LF_FACESIZE - 1] of WCHAR;
end;
{$EXTERNALSYM tagENUMLOGFONTEXW}
ENUMLOGFONTEXW = tagENUMLOGFONTEXW;
{$EXTERNALSYM ENUMLOGFONTEXW}
LPENUMLOGFONTEXW = ^ENUMLOGFONTEXW;
{$EXTERNALSYM LPENUMLOGFONTEXW}
TEnumLogFontExW = ENUMLOGFONTEXW;
{$IFDEF UNICODE}
ENUMLOGFONTEX = ENUMLOGFONTEXW;
{$EXTERNALSYM ENUMLOGFONTEX}
LPENUMLOGFONTEX = LPENUMLOGFONTEXW;
{$EXTERNALSYM LPENUMLOGFONTEX}
TEnumLogFontEx = TEnumLogFontExW;
PEnumLogFontEx = PEnumLogFontExW;
{$ELSE}
ENUMLOGFONTEX = ENUMLOGFONTEXA;
{$EXTERNALSYM ENUMLOGFONTEX}
LPENUMLOGFONTEX = LPENUMLOGFONTEXA;
{$EXTERNALSYM LPENUMLOGFONTEX}
TEnumLogFontEx = TEnumLogFontExA;
PEnumLogFontEx = PEnumLogFontExA;
{$ENDIF}
const
OUT_DEFAULT_PRECIS = 0;
{$EXTERNALSYM OUT_DEFAULT_PRECIS}
OUT_STRING_PRECIS = 1;
{$EXTERNALSYM OUT_STRING_PRECIS}
OUT_CHARACTER_PRECIS = 2;
{$EXTERNALSYM OUT_CHARACTER_PRECIS}
OUT_STROKE_PRECIS = 3;
{$EXTERNALSYM OUT_STROKE_PRECIS}
OUT_TT_PRECIS = 4;
{$EXTERNALSYM OUT_TT_PRECIS}
OUT_DEVICE_PRECIS = 5;
{$EXTERNALSYM OUT_DEVICE_PRECIS}
OUT_RASTER_PRECIS = 6;
{$EXTERNALSYM OUT_RASTER_PRECIS}
OUT_TT_ONLY_PRECIS = 7;
{$EXTERNALSYM OUT_TT_ONLY_PRECIS}
OUT_OUTLINE_PRECIS = 8;
{$EXTERNALSYM OUT_OUTLINE_PRECIS}
OUT_SCREEN_OUTLINE_PRECIS = 9;
{$EXTERNALSYM OUT_SCREEN_OUTLINE_PRECIS}
OUT_PS_ONLY_PRECIS = 10;
{$EXTERNALSYM OUT_PS_ONLY_PRECIS}
CLIP_DEFAULT_PRECIS = 0;
{$EXTERNALSYM CLIP_DEFAULT_PRECIS}
CLIP_CHARACTER_PRECIS = 1;
{$EXTERNALSYM CLIP_CHARACTER_PRECIS}
CLIP_STROKE_PRECIS = 2;
{$EXTERNALSYM CLIP_STROKE_PRECIS}
CLIP_MASK = $f;
{$EXTERNALSYM CLIP_MASK}
CLIP_LH_ANGLES = (1 shl 4);
{$EXTERNALSYM CLIP_LH_ANGLES}
CLIP_TT_ALWAYS = (2 shl 4);
{$EXTERNALSYM CLIP_TT_ALWAYS}
CLIP_EMBEDDED = (8 shl 4);
{$EXTERNALSYM CLIP_EMBEDDED}
DEFAULT_QUALITY = 0;
{$EXTERNALSYM DEFAULT_QUALITY}
DRAFT_QUALITY = 1;
{$EXTERNALSYM DRAFT_QUALITY}
PROOF_QUALITY = 2;
{$EXTERNALSYM PROOF_QUALITY}
NONANTIALIASED_QUALITY = 3;
{$EXTERNALSYM NONANTIALIASED_QUALITY}
ANTIALIASED_QUALITY = 4;
{$EXTERNALSYM ANTIALIASED_QUALITY}
DEFAULT_PITCH = 0;
{$EXTERNALSYM DEFAULT_PITCH}
FIXED_PITCH = 1;
{$EXTERNALSYM FIXED_PITCH}
VARIABLE_PITCH = 2;
{$EXTERNALSYM VARIABLE_PITCH}
MONO_FONT = 8;
{$EXTERNALSYM MONO_FONT}
ANSI_CHARSET = 0;
{$EXTERNALSYM ANSI_CHARSET}
DEFAULT_CHARSET = 1;
{$EXTERNALSYM DEFAULT_CHARSET}
SYMBOL_CHARSET = 2;
{$EXTERNALSYM SYMBOL_CHARSET}
SHIFTJIS_CHARSET = 128;
{$EXTERNALSYM SHIFTJIS_CHARSET}
HANGEUL_CHARSET = 129;
{$EXTERNALSYM HANGEUL_CHARSET}
HANGUL_CHARSET = 129;
{$EXTERNALSYM HANGUL_CHARSET}
GB2312_CHARSET = 134;
{$EXTERNALSYM GB2312_CHARSET}
CHINESEBIG5_CHARSET = 136;
{$EXTERNALSYM CHINESEBIG5_CHARSET}
OEM_CHARSET = 255;
{$EXTERNALSYM OEM_CHARSET}
JOHAB_CHARSET = 130;
{$EXTERNALSYM JOHAB_CHARSET}
HEBREW_CHARSET = 177;
{$EXTERNALSYM HEBREW_CHARSET}
ARABIC_CHARSET = 178;
{$EXTERNALSYM ARABIC_CHARSET}
GREEK_CHARSET = 161;
{$EXTERNALSYM GREEK_CHARSET}
TURKISH_CHARSET = 162;
{$EXTERNALSYM TURKISH_CHARSET}
VIETNAMESE_CHARSET = 163;
{$EXTERNALSYM VIETNAMESE_CHARSET}
THAI_CHARSET = 222;
{$EXTERNALSYM THAI_CHARSET}
EASTEUROPE_CHARSET = 238;
{$EXTERNALSYM EASTEUROPE_CHARSET}
RUSSIAN_CHARSET = 204;
{$EXTERNALSYM RUSSIAN_CHARSET}
MAC_CHARSET = 77;
{$EXTERNALSYM MAC_CHARSET}
BALTIC_CHARSET = 186;
{$EXTERNALSYM BALTIC_CHARSET}
FS_LATIN1 = $00000001;
{$EXTERNALSYM FS_LATIN1}
FS_LATIN2 = $00000002;
{$EXTERNALSYM FS_LATIN2}
FS_CYRILLIC = $00000004;
{$EXTERNALSYM FS_CYRILLIC}
FS_GREEK = $00000008;
{$EXTERNALSYM FS_GREEK}
FS_TURKISH = $00000010;
{$EXTERNALSYM FS_TURKISH}
FS_HEBREW = $00000020;
{$EXTERNALSYM FS_HEBREW}
FS_ARABIC = $00000040;
{$EXTERNALSYM FS_ARABIC}
FS_BALTIC = $00000080;
{$EXTERNALSYM FS_BALTIC}
FS_VIETNAMESE = $00000100;
{$EXTERNALSYM FS_VIETNAMESE}
FS_THAI = $00010000;
{$EXTERNALSYM FS_THAI}
FS_JISJAPAN = $00020000;
{$EXTERNALSYM FS_JISJAPAN}
FS_CHINESESIMP = $00040000;
{$EXTERNALSYM FS_CHINESESIMP}
FS_WANSUNG = $00080000;
{$EXTERNALSYM FS_WANSUNG}
FS_CHINESETRAD = $00100000;
{$EXTERNALSYM FS_CHINESETRAD}
FS_JOHAB = $00200000;
{$EXTERNALSYM FS_JOHAB}
FS_SYMBOL = $80000000;
{$EXTERNALSYM FS_SYMBOL}
// Font Families
FF_DONTCARE = (0 shl 4); // Don't care or don't know.
{$EXTERNALSYM FF_DONTCARE}
FF_ROMAN = (1 shl 4); // Variable stroke width, serifed.
{$EXTERNALSYM FF_ROMAN}
// Times Roman, Century Schoolbook, etc.
FF_SWISS = (2 shl 4); // Variable stroke width, sans-serifed.
{$EXTERNALSYM FF_SWISS}
// Helvetica, Swiss, etc.
FF_MODERN = (3 shl 4); // Constant stroke width, serifed or sans-serifed.
{$EXTERNALSYM FF_MODERN}
// Pica, Elite, Courier, etc.
FF_SCRIPT = (4 shl 4); // Cursive, etc.
{$EXTERNALSYM FF_SCRIPT}
FF_DECORATIVE = (5 shl 4); // Old English, etc.
{$EXTERNALSYM FF_DECORATIVE}
// Font Weights
FW_DONTCARE = 0;
{$EXTERNALSYM FW_DONTCARE}
FW_THIN = 100;
{$EXTERNALSYM FW_THIN}
FW_EXTRALIGHT = 200;
{$EXTERNALSYM FW_EXTRALIGHT}
FW_LIGHT = 300;
{$EXTERNALSYM FW_LIGHT}
FW_NORMAL = 400;
{$EXTERNALSYM FW_NORMAL}
FW_MEDIUM = 500;
{$EXTERNALSYM FW_MEDIUM}
FW_SEMIBOLD = 600;
{$EXTERNALSYM FW_SEMIBOLD}
FW_BOLD = 700;
{$EXTERNALSYM FW_BOLD}
FW_EXTRABOLD = 800;
{$EXTERNALSYM FW_EXTRABOLD}
FW_HEAVY = 900;
{$EXTERNALSYM FW_HEAVY}
FW_ULTRALIGHT = FW_EXTRALIGHT;
{$EXTERNALSYM FW_ULTRALIGHT}
FW_REGULAR = FW_NORMAL;
{$EXTERNALSYM FW_REGULAR}
FW_DEMIBOLD = FW_SEMIBOLD;
{$EXTERNALSYM FW_DEMIBOLD}
FW_ULTRABOLD = FW_EXTRABOLD;
{$EXTERNALSYM FW_ULTRABOLD}
FW_BLACK = FW_HEAVY;
{$EXTERNALSYM FW_BLACK}
PANOSE_COUNT = 10;
{$EXTERNALSYM PANOSE_COUNT}
PAN_FAMILYTYPE_INDEX = 0;
{$EXTERNALSYM PAN_FAMILYTYPE_INDEX}
PAN_SERIFSTYLE_INDEX = 1;
{$EXTERNALSYM PAN_SERIFSTYLE_INDEX}
PAN_WEIGHT_INDEX = 2;
{$EXTERNALSYM PAN_WEIGHT_INDEX}
PAN_PROPORTION_INDEX = 3;
{$EXTERNALSYM PAN_PROPORTION_INDEX}
PAN_CONTRAST_INDEX = 4;
{$EXTERNALSYM PAN_CONTRAST_INDEX}
PAN_STROKEVARIATION_INDEX = 5;
{$EXTERNALSYM PAN_STROKEVARIATION_INDEX}
PAN_ARMSTYLE_INDEX = 6;
{$EXTERNALSYM PAN_ARMSTYLE_INDEX}
PAN_LETTERFORM_INDEX = 7;
{$EXTERNALSYM PAN_LETTERFORM_INDEX}
PAN_MIDLINE_INDEX = 8;
{$EXTERNALSYM PAN_MIDLINE_INDEX}
PAN_XHEIGHT_INDEX = 9;
{$EXTERNALSYM PAN_XHEIGHT_INDEX}
PAN_CULTURE_LATIN = 0;
{$EXTERNALSYM PAN_CULTURE_LATIN}
type
PPanose = ^TPanose;
tagPANOSE = record
bFamilyType: BYTE;
bSerifStyle: BYTE;
bWeight: BYTE;
bProportion: BYTE;
bContrast: BYTE;
bStrokeVariation: BYTE;
bArmStyle: BYTE;
bLetterform: BYTE;
bMidline: BYTE;
bXHeight: BYTE;
end;
{$EXTERNALSYM tagPANOSE}
PANOSE = tagPANOSE;
{$EXTERNALSYM PANOSE}
LPPANOSE = ^PANOSE;
{$EXTERNALSYM LPPANOSE}
TPanose = PANOSE;
const
PAN_ANY = 0; // Any
{$EXTERNALSYM PAN_ANY}
PAN_NO_FIT = 1; // No Fit
{$EXTERNALSYM PAN_NO_FIT}
PAN_FAMILY_TEXT_DISPLAY = 2; // Text and Display
{$EXTERNALSYM PAN_FAMILY_TEXT_DISPLAY}
PAN_FAMILY_SCRIPT = 3; // Script
{$EXTERNALSYM PAN_FAMILY_SCRIPT}
PAN_FAMILY_DECORATIVE = 4; // Decorative
{$EXTERNALSYM PAN_FAMILY_DECORATIVE}
PAN_FAMILY_PICTORIAL = 5; // Pictorial
{$EXTERNALSYM PAN_FAMILY_PICTORIAL}
PAN_SERIF_COVE = 2; // Cove
{$EXTERNALSYM PAN
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -