gdidefs.inc
来自「用于查询PC机上的USB端口是否有设备挂接上」· INC 代码 · 共 1,679 行 · 第 1/5 页
INC
1,679 行
DT_JUMBO equ 11 ; SPAG LJ cool thing
; Curve Capabilities
CC_NONE equ 0000000000000000B ; Curves not supported
CC_CIRCLES equ 0000000000000001B ; Can do circles
CC_PIE equ 0000000000000010B ; Can do pie wedges
CC_CHORD equ 0000000000000100B ; Can do chord arcs
CC_ELLIPSES equ 0000000000001000B ; Can do ellipses (full arcs)
CC_WIDE equ 0000000000010000B ; Can do wide lines
CC_STYLED equ 0000000000100000B ; Can do styled lines
CC_WIDESTYLED equ 0000000001000000B ; Can do wide styled lines
CC_INTERIORS equ 0000000010000000B ; Can do interiors
CC_ROUNDRECT equ 0000000100000000B ; Can do round rectangles
CC_POLYBEZIER equ 0000001000000000B ; Can do beziers
; Line Capabilities
LC_NONE equ 00000000B ; Lines not supported
LC_POLYSCANLINE equ 00000001B ; Poly Scanlines supported
LC_POLYLINE equ 00000010B ; Can do polylines
LC_MARKER equ 00000100B ; Can do markers
LC_POLYMARKER equ 00001000B ; Can do polymarkers
LC_WIDE equ 00010000B ; Can do wide lines
LC_STYLED equ 00100000B ; Can do styled lines
LC_WIDESTYLED equ 01000000B ; Can do wide styled lines
LC_INTERIORS equ 10000000B ; Can do interiors
; Polygonal Capabilities
PC_NONE equ 0000000000000000B ; Polygonals not supported
PC_ALTPOLYGON equ 0000000000000001B ; Can do alternate polygons
PC_POLYGON equ 0000000000000001B ; an old name for ALTPOLYGON
PC_RECTANGLE equ 0000000000000010B ; Can do rectangles
PC_WINDPOLYGON equ 0000000000000100B ; Can do winding polygons
PC_TRAPEZOID equ 0000000000000100B ; an old name for WINDPOLYGON
PC_SCANLINE equ 0000000000001000B ; Can do scanlines
PC_WIDE equ 0000000000010000B ; Can do wide borders
PC_STYLED equ 0000000000100000B ; Can do styled borders
PC_WIDESTYLED equ 0000000001000000B ; Can do wide styled borders
PC_INTERIORS equ 0000000010000000B ; Can do interiors
PC_POLYPOLYGON equ 0000000100000000B ; Can do PolyPolygons
PC_PATHS equ 0000001000000000B ; Can do Paths
; Clipping Capabilities
CP_NONE equ 00000000B ; No clipping at device level
CP_RECTANGLE equ 00000001B ; Device Output clips to rectangles
CP_REGION equ 00000010B ; Not supported.
CP_REGION32 equ 00000100B ; Device Output clips to regions
; Text Capabilities
TC_OP_CHARACTER equ 0000000000000001B ; Can do OutputPrecision CHARACTER
TC_OP_STROKE equ 0000000000000010B ; Can do OutputPrecision STROKE
TC_CP_STROKE equ 0000000000000100B ; Can do ClipPrecision STROKE
TC_CR_90 equ 0000000000001000B ; Can do CharRotAbility 90
TC_CR_ANY equ 0000000000010000B ; Can do CharRotAbility ANY
TC_SF_X_YINDEP equ 0000000000100000B ; Can do ScaleFreedom X_YINDEPENDENT
TC_SA_DOUBLE equ 0000000001000000B ; Can do ScaleAbility DOUBLE
TC_SA_INTEGER equ 0000000010000000B ; Can do ScaleAbility INTEGER
TC_SA_CONTIN equ 0000000100000000B ; Can do ScaleAbility CONTINUOUS
TC_EA_DOUBLE equ 0000001000000000B ; Can do EmboldenAbility DOUBLE
TC_IA_ABLE equ 0000010000000000B ; Can do ItalisizeAbility ABLE
TC_UA_ABLE equ 0000100000000000B ; Can do UnderlineAbility ABLE
TC_SO_ABLE equ 0001000000000000B ; Can do StrikeOutAbility ABLE
TC_RA_ABLE equ 0010000000000000B ; Can do RasterFontAble ABLE
TC_VA_ABLE equ 0100000000000000B ; Can do VectorFontAble ABLE
TC_RESERVED equ 1000000000000000B ; Reserved. Must be returned zero.
; Raster Capabilities
RC_NONE equ 0000000000000000b ; No Raster Capabilities
RC_BITBLT equ 0000000000000001b ; Can do bitblt
RC_BANDING equ 0000000000000010b ; Requires banding support
RC_SCALING equ 0000000000000100b ; does scaling while banding
RC_BITMAP64 equ 0000000000001000b ; supports >64k bitmaps
RC_GDI20_OUTPUT equ 0000000000010000b ; has 2.0 output calls
RC_GDI20_STATE equ 0000000000100000b ; dc has a state block
RC_SAVEBITMAP equ 0000000001000000b ; can save bitmaps locally
RC_DI_BITMAP equ 0000000010000000b ; can do device independent bitmaps
RC_PALETTE equ 0000000100000000b ; can do color palette management
RC_DIBTODEV equ 0000001000000000b ; can do SetDIBitsToDevice
RC_BIGFONT equ 0000010000000000b ; does BIGFONTs
RC_STRETCHBLT equ 0000100000000000b ; can do StretchBlt
RC_FLOODFILL equ 0001000000000000b ; can do FloodFill
RC_STRETCHDIB equ 0010000000000000b ; can do StretchDIBits
RC_OP_DX_OUTPUT equ 0100000000000000b ;dev opaque and dx array capable
RC_DEVBITS equ 1000000000000000b ; supports device bitmaps
; DC Management Flags
DC_SPDevice equ 00000001b ;Seperate PDevice required per device/filename
DC_1PDevice equ 00000010b ;Only 1 PDevice allowed per device/filename
DC_IgnoreDFNP equ 00000100b ;Ignore device/filename pairs when matching
; dpCaps1 capability bits
C1_TRANSPARENT equ 0000000000000001b ; supports transparency
TC_TT_ABLE equ 0000000000000010b ; can do TT fonts through DDI or brute
C1_TT_CR_ANY equ 0000000000000100b ; can do rotated TT fonts
C1_EMF_COMPLIANT equ 0000000000001000b ; Win95 - supports metafile spooling
C1_DIBENGINE equ 0000000000010000b ; DIB Engine compliant driver
C1_GAMMA_RAMP equ 0000000000100000b ; supports gamma ramp setting
C1_ICM equ 0000000001000000b ; does some form of ICM support
C1_REINIT_ABLE equ 0000000010000000b ; driver supports ReEnable call
C1_GLYPH_INDEX equ 0000000100000000b ; Driver supports glyph index fonts
C1_BIT_PACKED equ 0000001000000000b ; Supports bit-packed glyphs
C1_BYTE_PACKED equ 0000010000000000b ; Supports byte-packed glyphs
C1_COLORCURSOR equ 0000100000000000b ; Supports color-cursors and async SetCursor
C1_CMYK_ABLE equ 0001000000000000b ; Supports CMYK ColorRefs
C1_SLOW_CARD equ 0010000000000000b ; Little or no acceleration (VGA, etc.)
; dpCapsFE capability bits
FEC_TT_DBCS equ 0000000000100000b ; can output DBCS TT fonts correctly
FEC_WIFE_ABLE equ 0000000010000000b ; can handle WIFE font as Engine font
if 0
*/
#define InquireInfo 0x01 /* Inquire Device GDI Info */
#define EnableDevice 0x00 /* Enable Device */
#define InfoContext 0x8000 /* Inquire/Enable for info context */
/* Device Technologies */
#define DT_PLOTTER 0 /* Vector plotter */
#define DT_RASDISPLAY 1 /* Raster display */
#define DT_RASPRINTER 2 /* Raster printer */
#define DT_RASCAMERA 3 /* Raster camera */
#define DT_CHARSTREAM 4 /* Character-stream, PLP */
#define DT_METAFILE 5 /* Metafile, VDM */
#define DT_DISPFILE 6 /* Display-file */
#define DT_JUMBO 11 /* SPAG LJ cool thing */
/* Curve Capabilities */
#define CC_NONE 0x0000 /* Curves not supported */
#define CC_CIRCLES 0x0001 /* Can do circles */
#define CC_PIE 0x0002 /* Can do pie wedges */
#define CC_CHORD 0x0004 /* Can do chord arcs */
#define CC_ELLIPSES 0x0008 /* Can do ellipese */
#define CC_WIDE 0x0010 /* Can do wide lines */
#define CC_STYLED 0x0020 /* Can do styled lines */
#define CC_WIDESTYLED 0x0040 /* Can do wide styled lines*/
#define CC_INTERIORS 0x0080 /* Can do interiors */
#define CC_ROUNDRECT 0x0100 /* Can do round rectangles */
#define CC_POLYBEZIER 0x0200 /* Can do polybeziers */
/* Line Capabilities */
#define LC_NONE 0x0000 /* Lines not supported */
#define LC_POLYSCANLINE 0x0001 /* Poly Scanlines supported*/
#define LC_POLYLINE 0x0002 /* Can do polylines */
#define LC_MARKER 0x0004 /* Can do markers */
#define LC_POLYMARKER 0x0008 /* Can do polymarkers */
#define LC_WIDE 0x0010 /* Can do wide lines */
#define LC_STYLED 0x0020 /* Can do styled lines */
#define LC_WIDESTYLED 0x0040 /* Can do wide styled lines*/
#define LC_INTERIORS 0x0080 /* Can do interiors */
/* Polygonal Capabilities */
#define PC_NONE 0x0000 /* Polygonals not supported*/
#define PC_ALTPOLYGON 0x0001 /* Can do even odd polygons*/
#define PC_POLYGON 0x0001 /* old name for ALTPOLYGON */
#define PC_RECTANGLE 0x0002 /* Can do rectangles */
#define PC_WINDPOLYGON 0x0004 /* Can do winding polygons */
#define PC_TRAPEZOID 0x0004 /* old name for WINDPOLYGON*/
#define PC_SCANLINE 0x0008 /* Can do scanlines */
#define PC_WIDE 0x0010 /* Can do wide borders */
#define PC_STYLED 0x0020 /* Can do styled borders */
#define PC_WIDESTYLED 0x0040 /* Can do wide styled borders*/
#define PC_INTERIORS 0x0080 /* Can do interiors */
#define PC_POLYPOLYGON 0x0100 /* Can do PolyPolygons */
/* Clipping Capabilities */
#define CP_NONE 0x0000 /* no clipping of Output */
#define CP_RECTANGLE 0x0001 /* Output clipped to Rects */
#define CP_REGION 0x0002 /* not supported */
#define CP_REGION32 0x0004 /* Output clipped to regions */
/* Text Capabilities */
#define TC_OP_CHARACTER 0x0001 /* Can do OutputPrecision CHARACTER */
#define TC_OP_STROKE 0x0002 /* Can do OutputPrecision STROKE */
#define TC_CP_STROKE 0x0004 /* Can do ClipPrecision STROKE */
#define TC_CR_90 0x0008 /* Can do CharRotAbility 90 */
#define TC_CR_ANY 0x0010 /* Can do CharRotAbility ANY */
#define TC_SF_X_YINDEP 0x0020 /* Can do ScaleFreedom X_YINDEPENDENT */
#define TC_SA_DOUBLE 0x0040 /* Can do ScaleAbility DOUBLE */
#define TC_SA_INTEGER 0x0080 /* Can do ScaleAbility INTEGER */
#define TC_SA_CONTIN 0x0100 /* Can do ScaleAbility CONTINUOUS */
#define TC_EA_DOUBLE 0x0200 /* Can do EmboldenAbility DOUBLE */
#define TC_IA_ABLE 0x0400 /* Can do ItalisizeAbility ABLE */
#define TC_UA_ABLE 0x0800 /* Can do UnderlineAbility ABLE */
#define TC_SO_ABLE 0x1000 /* Can do StrikeOutAbility ABLE */
#define TC_RA_ABLE 0x2000 /* Can do RasterFontAble ABLE */
#define TC_VA_ABLE 0x4000 /* Can do VectorFontAble ABLE */
#define TC_RESERVED 0x8000 /* Reserved. Must be returned zero. */
/* Raster Capabilities */
#define RC_NONE 0x0000 /* No Raster Capabilities */
#define RC_BITBLT 0x0001 /* Can do bitblt */
#define RC_BANDING 0x0002 /* Requires banding support */
#define RC_SCALING 0x0004 /* does scaling while banding */
#define RC_BITMAP64 0x0008 /* supports >64k bitmaps */
#define RC_GDI20_OUTPUT 0x0010 /* has 2.0 output calls */
#define RC_GDI20_STATE 0x0020 /* dc has a state block */
#define RC_SAVEBITMAP 0x0040 /* can save bitmaps locally */
#define RC_DI_BITMAP 0x0080 /* can do DIBs */
#define RC_PALETTE 0x0100 /* can do color pal management */
#define RC_DIBTODEV 0x0200 /* can do SetDIBitsToDevice */
#define RC_BIGFONT 0x0400 /* can do BIGFONTs */
#define RC_STRETCHBLT 0x0800 /* can do StretchBlt */
#define RC_FLOODFILL 0x1000 /* can do FloodFill */
#define RC_STRETCHDIB 0x2000 /* can do StretchDIBits */
#define RC_OP_DX_OUTPUT 0x4000 /* can do smart ExtTextOut w/dx */
#define RC_DEVBITS 0x8000 /* supports device bitmaps */
/* DC Management Flags */
#define DC_SPDevice 0000001 /* Seperate PDevice required per device/filename */
#define DC_1PDevice 0000002 /* Only 1 PDevice allowed per device/filename */
#define DC_IgnoreDFNP 0000004 /* Ignore device/filename pairs when matching */
/* dpCaps1 capability bits */
#define C1_TRANSPARENT 0x0001 /* supports transparency */
#define TC_TT_ABLE 0x0002 /* can do TT through DDI or brute */
#define C1_TT_CR_ANY 0x0004 /* can do rotated TT fonts */
#define C1_EMF_COMPLIANT 0x0008 /* Win95 - supports metafile spooling */
#define C1_DIBENGINE 0x0010 /* DIB Engine compliant driver */
#define C1_GAMMA_RAMP 0x0020 /* supports gamma ramp setting */
#define C1_ICM 0x0040 /* does some form of ICM support */
#define C1_REINIT_ABLE 0x0080 /* Driver supports ReEnable */
#define C1_GLYPH_INDEX 0x0100 /* Driver supports glyph index fonts */
#define C1_BIT_PACKED 0x0200 /* Supports bit-packed glyphs */
#define C1_BYTE_PACKED 0x0400 /* Supports byte-packed glyphs */
#define C1_COLORCURSOR 0x0800 /* Driver supports color_cursors and async SetCursor */
#define C1_CMYK_ABLE 0x1000 /* Driver supports CMYK ColorRefs */
/* dpCapsFE capability bits */
#define FEC_TT_DBCS 0x0020 /* can output DBCS TT fonts correctly */
#define FEC_WIFE_ABLE 0x0080 /* can handle WIFE font as Engine font */
/*
endif
GDIINFO struc ;*/ typedef struct { /*
dpVersion dw 0 ; Version = 0100h for now ;*/ short int dpVersion; /*
dpTechnology dw 0 ; Device classification ;*/ short int dpTechnology; /*
dpHorzSize dw 0 ; Horizontal size in millimeters ;*/ short int dpHorzSize; /*
dpVertSize dw 0 ; Vertical size in millimeters ;*/ short int dpVertSize; /*
dpHorzRes dw 0 ; Horizontal width in pixels ;*/ short int dpHorzRes; /*
dpVertRes dw 0 ; Vertical width in pixels ;*/ short int dpVertRes; /*
dpBitsPixel dw 0 ; Number of bits per pixel ;*/ short int dpBitsPixel; /*
dpPlanes dw 0 ; Number of planes ;*/ short int dpPlanes; /*
dpNumBrushes dw 0 ; Number of brushes the device has ;*/ short int dpNumBrushes; /*
dpNumPens dw 0 ; Number of pens the device has ;*/ short int dpNumPens; /*
dpCapsFE dw 0 ; capability bits for Far East ;*/ short int dpCapsFE; /*
dpNumFonts dw 0 ; Number of fonts the device has ;*/ short int dpNumFonts; /*
dpNumColors dw 0 ; Number of colors in color table ;*/ short int dpNumColors; /*
dpDEVICEsize dw 0 ; Size required for the device descriptor ;*/ short int dpDEVICEsize; /*
dpCurves dw 0 ; Curves capabilities ;*/ unsigned short int /*
;*/ dpCurves; /*
dpLines dw 0 ; Line capabilities ;*/ unsigned short int /*
;*/ dpLines; /*
dpPolygonals dw 0 ; Polygonal capabilities ;*/ unsigned short int /*
;*/ dpPolygonals; /*
dpText dw 0 ; Text capabilities ;*/ unsigned short int /*
;*/ dpText; /*
dpClip dw 0 ; Clipping capabilities ;*/ unsigned short int /*
;*/ dpClip; /*
dpRaster dw 0 ; Bitblt capabilities ;*/ unsigned short int /*
;*/ dpRaster; /*
dpAspectX dw 0 ; Length of X leg ;*/ short int dpAspectX; /*
dpAspectY dw 0 ; Length of Y leg ;*/ short int dpAspectY; /*
dpAspectXY dw 0 ; Length of hypotenuse ;*/ short int dpAspectXY; /*
dpStyleLen dw 0 ; Length of segment for line styles ;*/ short int dpStyleLen; /*
dpMLoWin dw 0 ; Metric Lo res WinX,WinY (PTTYPE) ;*/ PTTYPE dpMLoWin; /*
dw 0
dpMLoVpt dw 0 ; Metric Lo res VptX,VptY (PTTYPE) ;*/ PTTYPE dpMLoVpt; /*
dw 0
dpMHiWin dw 0 ; Metric Hi res WinX,WinY (PTTYPE) ;*/ PTTYPE dpMHiWin; /*
dw 0
dpMHiVpt dw 0 ; Metric Hi res VptX,VptY (PTTYPE) ;*/ PTTYPE dpMHiVpt; /*
dw 0
dpELoWin dw 0 ; English Lo res WinX,WinY (PTTYPE) ;*/ PTTYPE dpELoWin; /*
dw 0
dpELoVpt dw 0 ; English Lo res VptX,VptY (PTTYPE) ;*/ PTTYPE dpELoVpt; /*
dw 0
dpEHiWin dw 0 ; English Hi res WinX,WinY (PTTYPE) ;*/ PTTYPE dpEHiWin; /*
dw 0
dpEHiVpt dw 0 ; English Hi res VptX,VptY (PTTYPE) ;*/ PTTYPE dpEHiVpt; /*
dw 0
dpTwpWin dw 0 ; Twips WinX,WinY (PTTYPE) ;*/ PTTYPE dpTwpWin; /*
dw 0
dpTwpVpt dw 0 ; Twips VptX,VptY (PTTYPE) ;*/ PTTYPE dpTwpVpt; /*
dw 0
dpLogPixelsX dw 0 ;Logical pixels/inch in X ;*/ short int dpLogPixelsX; /*
dpLogPixelsY dw 0 ;Logical pixels/inch in Y ;*/ short int dpLogPixelsY; /*
dpDCManage dw 0 ;DC Management flags ;*/ short int dpDCManage; /*
dpCaps1 dw 0 ; more capability bits ;*/ unsigned short int dpCaps1; /*
dpSpotSizeX dw 0 ;*/ short int futureuse4; /*
dw 0 ;*/ short int futureuse5; /*
dpSpotSizeY dw 0 ;*/ short int futureuse6; /*
dw 0 ;*/ short int futureuse7; /*
; start of entries in version 3.0 of this structure
dpNumPalReg dw 0 ; Number of entries in device's palette ;*/ WORD dpNumPalReg; /*
dpPalReserved dw 0 ; Number of reserved entries palette ;*/ WORD dpPalReserved; /*
dpColorRes dw 0 ; bits of color resolution (total) ;*/ WORD dpColorRes; /*
GDIINFO ends ;*/ } GDIINFO; /*
endif
endif
page
; Font Definitions
ifdef incFont
if incFont
; flags for extended textout
ETO_GRAYED equ 0001h
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?