📄 wingdi.h
字号:
BYTE tmCharSet;} TEXTMETRICA,*PTEXTMETRICA,*LPTEXTMETRICA;typedef struct tagTEXTMETRICW { LONG tmHeight; LONG tmAscent; LONG tmDescent; LONG tmInternalLeading; LONG tmExternalLeading; LONG tmAveCharWidth; LONG tmMaxCharWidth; LONG tmWeight; LONG tmOverhang; LONG tmDigitizedAspectX; LONG tmDigitizedAspectY; WCHAR tmFirstChar; WCHAR tmLastChar; WCHAR tmDefaultChar; WCHAR tmBreakChar; BYTE tmItalic; BYTE tmUnderlined; BYTE tmStruckOut; BYTE tmPitchAndFamily; BYTE tmCharSet;} TEXTMETRICW,*PTEXTMETRICW,*LPTEXTMETRICW;typedef struct _RGNDATAHEADER { DWORD dwSize; DWORD iType; DWORD nCount; DWORD nRgnSize; RECT rcBound;} RGNDATAHEADER;typedef struct _RGNDATA { RGNDATAHEADER rdh; char Buffer[1];} RGNDATA,*LPRGNDATA;/* for GetRandomRgn */#define SYSRGN 4typedef struct tagGCP_RESULTSA { DWORD lStructSize; LPSTR lpOutString; UINT *lpOrder; INT *lpDx; INT *lpCaretPos; LPSTR lpClass; UINT *lpGlyphs; UINT nGlyphs; UINT nMaxFit;} GCP_RESULTSA,*LPGCP_RESULTSA;typedef struct tagGCP_RESULTSW { DWORD lStructSize; LPWSTR lpOutString; UINT *lpOrder; INT *lpDx; INT *lpCaretPos; LPWSTR lpClass; UINT *lpGlyphs; UINT nGlyphs; UINT nMaxFit;} GCP_RESULTSW,*LPGCP_RESULTSW;typedef struct _GLYPHMETRICS { UINT gmBlackBoxX; UINT gmBlackBoxY; POINT gmptGlyphOrigin; short gmCellIncX; short gmCellIncY;} GLYPHMETRICS,*LPGLYPHMETRICS;typedef struct tagKERNINGPAIR { WORD wFirst; WORD wSecond; int iKernAmount;} KERNINGPAIR,*LPKERNINGPAIR;typedef struct _FIXED { WORD fract; short value;} FIXED;typedef struct _MAT2 { FIXED eM11; FIXED eM12; FIXED eM21; FIXED eM22;} MAT2,*LPMAT2;typedef struct _OUTLINETEXTMETRICA { UINT otmSize; TEXTMETRICA otmTextMetrics; BYTE otmFiller; PANOSE otmPanoseNumber; UINT otmfsSelection; UINT otmfsType; int otmsCharSlopeRise; int otmsCharSlopeRun; int otmItalicAngle; UINT otmEMSquare; int otmAscent; int otmDescent; UINT otmLineGap; UINT otmsCapEmHeight; UINT otmsXHeight; RECT otmrcFontBox; int otmMacAscent; int otmMacDescent; UINT otmMacLineGap; UINT otmusMinimumPPEM; POINT otmptSubscriptSize; POINT otmptSubscriptOffset; POINT otmptSuperscriptSize; POINT otmptSuperscriptOffset; UINT otmsStrikeoutSize; int otmsStrikeoutPosition; int otmsUnderscoreSize; int otmsUnderscorePosition; PSTR otmpFamilyName; PSTR otmpFaceName; PSTR otmpStyleName; PSTR otmpFullName;} OUTLINETEXTMETRICA,*POUTLINETEXTMETRICA,*LPOUTLINETEXTMETRICA;typedef struct _OUTLINETEXTMETRICW { UINT otmSize; TEXTMETRICW otmTextMetrics; BYTE otmFiller; PANOSE otmPanoseNumber; UINT otmfsSelection; UINT otmfsType; int otmsCharSlopeRise; int otmsCharSlopeRun; int otmItalicAngle; UINT otmEMSquare; int otmAscent; int otmDescent; UINT otmLineGap; UINT otmsCapEmHeight; UINT otmsXHeight; RECT otmrcFontBox; int otmMacAscent; int otmMacDescent; UINT otmMacLineGap; UINT otmusMinimumPPEM; POINT otmptSubscriptSize; POINT otmptSubscriptOffset; POINT otmptSuperscriptSize; POINT otmptSuperscriptOffset; UINT otmsStrikeoutSize; int otmsStrikeoutPosition; int otmsUnderscoreSize; int otmsUnderscorePosition; PSTR otmpFamilyName; PSTR otmpFaceName; PSTR otmpStyleName; PSTR otmpFullName;} OUTLINETEXTMETRICW,*POUTLINETEXTMETRICW,*LPOUTLINETEXTMETRICW;typedef struct _RASTERIZER_STATUS { short nSize; short wFlags; short nLanguageID;} RASTERIZER_STATUS,*LPRASTERIZER_STATUS;typedef struct _POLYTEXTA { int x; int y; UINT n; LPCSTR lpstr; UINT uiFlags; RECT rcl; int *pdx;} POLYTEXTA;typedef struct _POLYTEXTW { int x; int y; UINT n; LPCWSTR lpstr; UINT uiFlags; RECT rcl; int *pdx;} POLYTEXTW;typedef struct tagPIXELFORMATDESCRIPTOR { WORD nSize; WORD nVersion; DWORD dwFlags; BYTE iPixelType; BYTE cColorBits; BYTE cRedBits; BYTE cRedShift; BYTE cGreenBits; BYTE cGreenShift; BYTE cBlueBits; BYTE cBlueShift; BYTE cAlphaBits; BYTE cAlphaShift; BYTE cAccumBits; BYTE cAccumRedBits; BYTE cAccumGreenBits; BYTE cAccumBlueBits; BYTE cAccumAlphaBits; BYTE cDepthBits; BYTE cStencilBits; BYTE cAuxBuffers; BYTE iLayerType; BYTE bReserved; DWORD dwLayerMask; DWORD dwVisibleMask; DWORD dwDamageMask;} PIXELFORMATDESCRIPTOR,*PPIXELFORMATDESCRIPTOR,*LPPIXELFORMATDESCRIPTOR;typedef struct tagMETAFILEPICT { LONG mm; LONG xExt; LONG yExt; HMETAFILE hMF;} METAFILEPICT,*LPMETAFILEPICT;typedef struct tagLOCALESIGNATURE { DWORD lsUsb[4]; DWORD lsCsbDefault[2]; DWORD lsCsbSupported[2];} LOCALESIGNATURE,*PLOCALESIGNATURE,*LPLOCALESIGNATURE;typedef LONG LCSTYPE;#pragma pack(push,4)typedef struct tagNEWTEXTMETRICA { LONG tmHeight; LONG tmAscent; LONG tmDescent; LONG tmInternalLeading; LONG tmExternalLeading; LONG tmAveCharWidth; LONG tmMaxCharWidth; LONG tmWeight; LONG tmOverhang; LONG tmDigitizedAspectX; LONG tmDigitizedAspectY; BYTE tmFirstChar; BYTE tmLastChar; BYTE tmDefaultChar; BYTE tmBreakChar; BYTE tmItalic; BYTE tmUnderlined; BYTE tmStruckOut; BYTE tmPitchAndFamily; BYTE tmCharSet; DWORD ntmFlags; UINT ntmSizeEM; UINT ntmCellHeight; UINT ntmAvgWidth;} NEWTEXTMETRICA,*PNEWTEXTMETRICA,*LPNEWTEXTMETRICA;typedef struct tagNEWTEXTMETRICW { LONG tmHeight; LONG tmAscent; LONG tmDescent; LONG tmInternalLeading; LONG tmExternalLeading; LONG tmAveCharWidth; LONG tmMaxCharWidth; LONG tmWeight; LONG tmOverhang; LONG tmDigitizedAspectX; LONG tmDigitizedAspectY; WCHAR tmFirstChar; WCHAR tmLastChar; WCHAR tmDefaultChar; WCHAR tmBreakChar; BYTE tmItalic; BYTE tmUnderlined; BYTE tmStruckOut; BYTE tmPitchAndFamily; BYTE tmCharSet; DWORD ntmFlags; UINT ntmSizeEM; UINT ntmCellHeight; UINT ntmAvgWidth;} NEWTEXTMETRICW,*PNEWTEXTMETRICW,*LPNEWTEXTMETRICW;#pragma pack(pop)typedef struct tagNEWTEXTMETRICEXA { NEWTEXTMETRICA ntmTm; FONTSIGNATURE ntmFontSig;} NEWTEXTMETRICEXA;typedef struct tagNEWTEXTMETRICEXW { NEWTEXTMETRICW ntmTm; FONTSIGNATURE ntmFontSig;} NEWTEXTMETRICEXW;typedef struct tagPELARRAY { LONG paXCount; LONG paYCount; LONG paXExt; LONG paYExt; BYTE paRGBs;} PELARRAY,*PPELARRAY,*LPPELARRAY;typedef struct tagENUMLOGFONTA { LOGFONTA elfLogFont; BYTE elfFullName[LF_FULLFACESIZE]; BYTE elfStyle[LF_FACESIZE];} ENUMLOGFONTA,*LPENUMLOGFONTA;typedef struct tagENUMLOGFONTW { LOGFONTW elfLogFont; WCHAR elfFullName[LF_FULLFACESIZE]; WCHAR elfStyle[LF_FACESIZE];} ENUMLOGFONTW,*LPENUMLOGFONTW;typedef struct tagENUMLOGFONTEXA { LOGFONTA elfLogFont; BYTE elfFullName[LF_FULLFACESIZE]; BYTE elfStyle[LF_FACESIZE]; BYTE elfScript[LF_FACESIZE];} ENUMLOGFONTEXA,*LPENUMLOGFONTEXA;typedef struct tagENUMLOGFONTEXW { LOGFONTW elfLogFont; WCHAR elfFullName[LF_FULLFACESIZE]; BYTE elfStyle[LF_FACESIZE]; BYTE elfScript[LF_FACESIZE];} ENUMLOGFONTEXW,*LPENUMLOGFONTEXW;typedef struct tagPOINTFX { FIXED x; FIXED y;} POINTFX,*LPPOINTFX;typedef struct tagTTPOLYCURVE { WORD wType; WORD cpfx; POINTFX apfx[1];} TTPOLYCURVE,*LPTTPOLYCURVE;typedef struct tagTTPOLYGONHEADER { DWORD cb; DWORD dwType; POINTFX pfxStart;} TTPOLYGONHEADER,*LPTTPOLYGONHEADER;typedef struct _POINTFLOAT { FLOAT x; FLOAT y;} POINTFLOAT,*PPOINTFLOAT;typedef struct _GLYPHMETRICSFLOAT { FLOAT gmfBlackBoxX; FLOAT gmfBlackBoxY; POINTFLOAT gmfptGlyphOrigin; FLOAT gmfCellIncX; FLOAT gmfCellIncY;} GLYPHMETRICSFLOAT,*PGLYPHMETRICSFLOAT,*LPGLYPHMETRICSFLOAT;typedef struct tagLAYERPLANEDESCRIPTOR { WORD nSize; WORD nVersion; DWORD dwFlags; BYTE iPixelType; BYTE cColorBits; BYTE cRedBits; BYTE cRedShift; BYTE cGreenBits; BYTE cGreenShift; BYTE cBlueBits; BYTE cBlueShift; BYTE cAlphaBits; BYTE cAlphaShift; BYTE cAccumBits; BYTE cAccumRedBits; BYTE cAccumGreenBits; BYTE cAccumBlueBits; BYTE cAccumAlphaBits; BYTE cDepthBits; BYTE cStencilBits; BYTE cAuxBuffers; BYTE iLayerPlane; BYTE bReserved; COLORREF crTransparent;} LAYERPLANEDESCRIPTOR,*PLAYERPLANEDESCRIPTOR,*LPLAYERPLANEDESCRIPTOR;typedef struct _BLENDFUNCTION { BYTE BlendOp; BYTE BlendFlags; BYTE SourceConstantAlpha; BYTE AlphaFormat; } BLENDFUNCTION,*PBLENDFUNCTION,*LPBLENDFUNCTION; typedef BOOL (CALLBACK *ABORTPROC)(HDC,int);typedef int (CALLBACK *MFENUMPROC)(HDC,HANDLETABLE*,METARECORD*,int,LPARAM);typedef int (CALLBACK *ENHMFENUMPROC)(HDC,HANDLETABLE*,ENHMETARECORD*,int,LPARAM);typedef int (CALLBACK *OLDFONTENUMPROCA)(const LOGFONTA*,const TEXTMETRICA*,DWORD,LPARAM);typedef int (CALLBACK *OLDFONTENUMPROCW)(const LOGFONTW*,const TEXTMETRICW*,DWORD,LPARAM);typedef OLDFONTENUMPROCA FONTENUMPROCA;typedef OLDFONTENUMPROCW FONTENUMPROCW;typedef int (CALLBACK *ICMENUMPROCA)(LPSTR,LPARAM);typedef int (CALLBACK *ICMENUMPROCW)(LPWSTR,LPARAM);typedef void (CALLBACK *GOBJENUMPROC)(LPVOID,LPARAM);typedef void (CALLBACK *LINEDDAPROC)(int,int,LPARAM);typedef UINT (CALLBACK *LPFNDEVMODE)(HWND,HMODULE,LPDEVMODEA,LPSTR,LPSTR,LPDEVMODEA,LPSTR,UINT);typedef DWORD (CALLBACK *LPFNDEVCAPS)(LPSTR,LPSTR,UINT,LPSTR,LPDEVMODEA);#define RGB(r,g,b) ((DWORD)(((BYTE)(r)|((WORD)(g)<<8))|(((DWORD)(BYTE)(b))<<16)))#define MAKEPOINTS(l) (*((POINTS*)&(l)))#define MAKEROP4(f,b) (DWORD)((((b)<<8)&0xFF000000)|(f))#define PALETTEINDEX(i) ((0x01000000|(COLORREF)(WORD)(i)))#define PALETTERGB(r,g,b) (0x02000000|RGB(r,g,b))int WINAPI AbortDoc(HDC);BOOL WINAPI AbortPath(HDC);int WINAPI AddFontResourceA(LPCSTR);int WINAPI AddFontResourceW(LPCWSTR);BOOL WINAPI AngleArc(HDC,int,int,DWORD,FLOAT,FLOAT);BOOL WINAPI AnimatePalette(HPALETTE,UINT,UINT,const PALETTEENTRY*);BOOL WINAPI Arc(HDC,int,int,int,int,int,int,int,int);BOOL WINAPI ArcTo(HDC,int,int,int,int,int,int,int,int);BOOL WINAPI BeginPath(HDC);BOOL WINAPI BitBlt(HDC,int,int,int,int,HDC,int,int,DWORD);BOOL WINAPI CancelDC(HDC);BOOL WINAPI CheckColorsInGamut(HDC,PVOID,PVOID,DWORD);BOOL WINAPI Chord(HDC,int,int,int,int,int,int,int,int);int WINAPI ChoosePixelFormat(HDC,CONST PIXELFORMATDESCRIPTOR*);HENHMETAFILE WINAPI CloseEnhMetaFile(HDC);BOOL WINAPI CloseFigure(HDC);HMETAFILE WINAPI CloseMetaFile(HDC);BOOL WINAPI ColorMatchToTarget(HDC,HDC,DWORD);int WINAPI CombineRgn(HRGN,HRGN,HRGN,int);BOOL WINAPI CombineTransform(LPXFORM,const XFORM*,const XFORM*);HENHMETAFILE WINAPI CopyEnhMetaFileA(HENHMETAFILE,LPCSTR);HENHMETAFILE WINAPI CopyEnhMetaFileW(HENHMETAFILE,LPCWSTR);HMETAFILE WINAPI CopyMetaFileA(HMETAFILE,LPCSTR);HMETAFILE WINAPI CopyMetaFileW(HMETAFILE,LPCWSTR);HBITMAP WINAPI CreateBitmap(int,int,UINT,UINT,PCVOID);HBITMAP WINAPI CreateBitmapIndirect(const BITMAP*);HBRUSH WINAPI CreateBrushIndirect(const LOGBRUSH*);HCOLORSPACE WINAPI CreateColorSpaceA(LPLOGCOLORSPACEA);HCOLORSPACE WINAPI CreateColorSpaceW(LPLOGCOLORSPACEW);HBITMAP WINAPI CreateCompatibleBitmap(HDC,int,int);HDC WINAPI CreateCompatibleDC(HDC);HDC WINAPI CreateDCA(LPCSTR,LPCSTR,LPCSTR,const DEVMODEA*);HDC WINAPI CreateDCW(LPCWSTR,LPCWSTR,LPCWSTR,const DEVMODEW*);HBITMAP WINAPI CreateDIBitmap(HDC,const BITMAPINFOHEADER*,DWORD,PCVOID,const BITMAPINFO*,UINT);HBRUSH WINAPI CreateDIBPatternBrush(HGLOBAL,UINT);HBRUSH WINAPI CreateDIBPatternBrushPt(PCVOID,UINT);HBITMAP WINAPI CreateDIBSection(HDC,const BITMAPINFO*,UINT,void**,HANDLE,DWORD);HBITMAP WINAPI CreateDiscardableBitmap(HDC,int,int);HRGN WINAPI CreateEllipticRgn(int,int,int,int);HRGN WINAPI CreateEllipticRgnIndirect(LPCRECT);HDC WINAPI CreateEnhMetaFileA(HDC,LPCSTR,LPCRECT,LPCSTR);HDC WINAPI CreateEnhMetaFileW(HDC,LPCWSTR,LPCRECT,LPCWSTR);HFONT WINAPI CreateFontA(int,int,int,int,int,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPCSTR);HFONT WINAPI CreateFontW(int,int,int,int,int,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,LPCWSTR);HFONT WINAPI CreateFontIndirectA(const LOGFONTA*);HFONT WINAPI CreateFontIndirectW(const LOGFONTW*);HPALETTE WINAPI CreateHalftonePalette(HDC);HBRUSH WINAPI CreateHatchBrush(int,COLORREF);HDC WINAPI CreateICA(LPCSTR,LPCSTR,LPCSTR,const DEVMODEA*);HDC WINAPI CreateICW(LPCWSTR,LPCWSTR,LPCWSTR,const DEVMODEW*);HDC WINAPI CreateMetaFileA(LPCSTR);HDC WINAPI CreateMetaFileW(LPCWSTR);HPALETTE WINAPI CreatePalette(const LOGPALETTE*);HBRUSH WINAPI CreatePatternBrush(HBITMAP);HPEN WINAPI CreatePen(int,int,COLORREF);HPEN WINAPI CreatePenIndirect(const LOGPEN*);HRGN WINAPI CreatePolygonRgn(const POINT*,int,int);HRGN WINAPI CreatePolyPolygonRgn(const POINT*,const INT*,int,int);HRGN WINAPI CreateRectRgn(int,int,int,int);HRGN WINAPI CreateRectRgnIndirect(LPCRECT);HRGN WINAPI CreateRoundRectRgn(int,int,int,int,int,int);BOOL WINAPI CreateScalableFontResourceA(DWORD,LPCSTR,LPCSTR,LPCSTR);BOOL WINAPI CreateScalableFontResourceW(DWORD,LPCWSTR,LPCWSTR,LPCWSTR);HBRUSH WINAPI CreateSolidBrush(COLORREF);BOOL WINAPI DeleteColorSpace(HCOLORSPACE);BOOL WINAPI DeleteDC(HDC);BOOL WINAPI DeleteEnhMetaFile(HENHMETAFILE);BOOL WINAPI DeleteMetaFile(HMETAFILE);BOOL WINAPI DeleteObject(HGDIOBJ);int WINAPI DescribePixelFormat(HDC,int,UINT,LPPIXELFORMATDESCRIPTOR);DWORD WINAPI DeviceCapabilitiesA(LPCSTR,LPCSTR,WORD,LPSTR,const DEVMODEA*);DWORD WINAPI DeviceCapabilitiesW(LPCWSTR,LPCWSTR,WORD,LPWSTR,const DEVMODEW*);BOOL WINAPI DPtoLP(HDC,LPPOINT,int);int WINAPI DrawEscape(HDC,int,int,LPCSTR);BOOL WINAPI Ellipse(HDC,int,int,int,int);int WINAPI EndDoc(HDC);int WINAPI EndPage(HDC);BOOL WINAPI EndPath(HDC);BOOL WINAPI EnumEnhMetaFile(HDC,HENHMETAFILE,ENHMFENUMPROC,PVOID,LPCRECT);int WINAPI EnumFontFamiliesA(HDC,LPCSTR,FONTENUMPROCA,LPARAM);int WINAPI EnumFontFamiliesW(HDC,LPCWSTR,FONTENUMPROCW,LPARAM);int WINAPI EnumFontFamiliesExA(HDC,PLOGFONTA,FONTENUMPROCA,LPARAM,DWORD);int WINAPI EnumFontFamiliesExW(HDC,PLOGFONTW,FONTENUMPROCW,LPARAM,DWORD);int WINAPI EnumFontsA(HDC,LPCSTR,FONTENUMPROCA,LPARAM);int WINAPI EnumFontsW(HDC,LPCWSTR,FONTENUMPROCA,LPARAM);int WINAPI EnumICMProfilesA(HDC,ICMENUMPROCA,LPARAM);int WINAPI EnumICMProfilesW(HDC,ICMENUMPROCW,LPARAM);BOOL WINAPI EnumMetaFile(HDC,HMETAFILE,MFENUMPROC,LPARAM);int WINAPI EnumObjects(HDC,int,GOBJENUMPROC,LPARAM);BOOL WINAPI EqualRgn(HRGN,HRGN);int WINAPI Escape(HDC,int,int,LPCSTR,PVOID);int WINAPI ExcludeClipRect(HDC,int,int,int,int);int WINAPI ExcludeUpdateRgn(HDC,HWND);HPEN WINAPI ExtCreatePen(DWORD,DWORD,const LOGBRUSH*,DWORD,const DWORD*);HRGN WINAPI ExtCreateRegion(const XFORM*,DWORD,const RGNDATA*);int WINAPI ExtEscape(HDC,int,int,LPCSTR,int,LPSTR);BOOL WINAPI ExtFloodFill(HDC,int,int,COLORREF,UINT);int WINAPI ExtSelectClipRgn(HDC,HRGN,int);BOOL WINAPI ExtTextOutA(HDC,int,int,UINT,LPCRECT,LPCSTR,UINT,const INT*);BOOL WINAPI ExtTextOutW(HDC,int,int,UINT,LPCRECT,LPCWSTR,UINT,const INT*);BOOL WINAPI FillPath(HDC);int WINAPI FillRect(HDC,LPCRECT,HBRUSH);int WINAPI FillRgn(HDC,HRGN,HBRUSH);BOOL WINAPI FixBrushOrgEx(HDC,int,int,LPPOINT);BOOL WINAPI FlattenPath(HDC);BOOL WINAPI FloodFill(HDC,int,int,COLORREF);BOOL WINAPI GdiComment(HDC,UINT,const BYTE*);BOOL WINAPI GdiFlush(void);DWORD WINAPI GdiGetBatchLimit(void);DWORD WINAPI GdiSetBatchLimit(DWORD);#define GetCValue(cmyk) ((BYTE)(cmyk))#define GetMValue(cmyk) ((BYTE)((cmyk)>> 8))#define GetYValue(cmyk) ((BYTE)((cmyk)>>16))#define GetKValue(cmyk) ((BYTE)((cmyk)>>24))#define CMYK(c,m,y,k) ((COLORREF)((((BYTE)(c)|((WORD)((BYTE)(m))<<8))|(((DWORD)(BYTE)(y))<<16))|(((DWORD)(BYTE)(k))<<24)))#define GetRValue(c) ((BYTE)(c))#define GetGValue(c) ((BYT
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -