● 관련 ━ 디스플레이,장치,정보
● 디스플레이 장치의 정보를 얻는다
● 원형
● 선언
GetDeviceCaps Lib "GDI32" (ByVal hdc As Long, ByVal nIndex As Long) As Long
● 인수
hdc ━ 알고자 하는 DC 정보
nIndex ━ 알고자 하는 DC의 속성
● 반환
성공 ━ 지정된 항목에 해당하는 값
● 상수
● nIndex 사용, 속성
상수 |
값 |
설명 |
DRIVERVERSION |
0 |
DC와 관련된 장치의 드라이버 버전 |
TECHNOLOGY |
2 |
디바이스의 종류를 조사한다. DC의 대상 장치가 프린터인지 화면인지를 구분할 수 있다 |
HORZSIZE |
4 |
장치의 폭(밀리미터) |
VERTSIZE |
6 |
장치의 높이(밀리미터) |
HORZRES |
8 |
장치의 폭(픽셀) |
VERTRES |
10 |
장치의 높이(픽셀) |
LOGPIXELSX |
88 |
인치당 X축 픽셀수 |
LOGPIXELSY |
90 |
인치당 Y축 픽셀수 |
BITSPIXEL |
12 |
픽셀당 비트수 |
PLANES |
14 |
색상면의 수 |
NUMBRUSHES |
16 |
장치의 브러쉬 갯수 |
NUMPENS |
18 |
장치의 펜의 갯수 |
NUMFONTS |
22 |
장치의 폰트 갯수 |
NUMCOLORS |
24 |
장치가 8bpp이하 일경우 색상 테이블의 항목 수 |
ASPECTX |
40 |
선을 그을때 상대적인 폭 |
ASPECTY |
42 |
선을 그을때 상대적인 높이 |
ASPECTXY |
44 |
선을 그을때 대각선의 폭 |
PDEVICESIZE |
26 |
예약 |
CLIPCAPS |
36 |
장치의 클리핑 능력,클리핑 가능은 1, 그렇치 않으면 0 |
SIZEPALETTE |
104 |
시스템 팔레트의 엔트리 갯수 |
NUMRESERVED |
106 |
시스템 팔레트의 예약된 엔트리 갯수 |
COLORRES |
108 |
장치의 실제 색상 수 |
PHYSICALWIDTH |
110 |
프린터에 해당하며, 페이지의 실제 폭 |
PHYSICALHEIGHT |
111 |
프린터에 해당하며, 페이지의 실제 높이 |
PHYSICALOFFSETX |
112 |
인쇄 가능한 영역과 용지와의 X축 거리 |
PHYSICALOFFSETY |
113 |
인쇄 가능한 영역과 용지와의 X축 거리 |
SCALINGFACTORX |
114 |
프린터 확대시 X축 비율 |
SCALINGFACTORY |
115 |
프린터 확대시 Y축 비율 |
RASTERCAPS |
38 |
장치의 래스트 출력 능력 |
CURVECAPS |
28 |
장치의 곡선 기능 |
LINECAPS |
30 |
장치의 선 기능 |
POLYGONALCAPS |
32 |
장치의 폴리곤 기능 |
TEXTCAPS |
34 |
장치의 문자처리 기능 |
● nIndex 에서 TECHNOLOGY 지정시 반환된 값
상수 |
값 |
설명 |
DT_PLOTTER |
0 |
벡터 플로터 |
DT_RASDISPLAY |
1 |
라스터 표시장치 |
DT_RASPRINTER |
2 |
라스터 프린터 |
DT_RASCAMERA |
3 |
라스터 카메라 |
DT_CHARSTREAM |
4 |
문자 스트림 |
DT_METAFILE |
5 |
메타파일 |
DT_DISPFILE |
6 |
디스플레이 파일 |
● nIndex 에서 RASTERCAPS 지정시 반환된 각 비트값
상수 |
16 |
설명 |
RC_BANDING |
2 |
밴딩 지원이 요구 |
RC_BITBLT |
1 |
비트맵 전송을 지원,BitBlt 함수 사용 가능 |
RC_BITMAP64 |
8 |
64K 이상 비트맵 지원 |
RC_DI_BITMAP |
80 |
Get(Set)DlBits 함수 사용 가능 |
RC_DIBTODEV |
200 |
SetDlBitsToDevice 함수 사용 가능 |
RC_FLOODFILL |
1000 |
면 채우기 기능 사용 가능 |
RC_GDI20_OUTPUT |
10 |
16비트 윈도우 2.0 기능 지원 |
RC_PALETTE |
100 |
팔레트 기반 장치 |
RC_SCALING |
4 |
확대 지원 |
RC_STRETCHBLT |
800 |
StretchBlt 함수 사용 가능 |
RC_STRETCHDIB |
2000 |
StretchDIBits 함수 사용 가능 |
● nIndex 에서 CURVECAPS 지정시 반환된 값
상수 |
값 |
설명 |
CC_NONE |
0 |
곡선을 지원하지 않음 |
CC_CIRCLES |
1 |
원을 그릴 수 있음 |
CC_PIE |
2 |
파이(Pie)를 그릴 수 있음 |
CC_CHORD |
4 |
현을 그릴 수 있음 |
CC_ELLIPSES |
8 |
타원을 그릴 수 있음 |
CC_WIDE |
16 |
넓은 원주선을 그릴 수 있음 |
CC_STYLED |
32 |
무뉘가 있는 원주선을 그릴 수 있음 |
CC_WIDESTYLED |
64 |
넓은 무뉘가 있는 원주선을 그릴 수 있음 |
CC_INTERIORS |
128 |
내부 장식이 가능함 |
CC_ROUNDRECT |
256 |
둥근 사각형을 그릴 수 있음 |
● nIndex 에서 LINECAPS 지정시 반환된 값
상수 |
값 |
설명 |
LC_NONE |
0 |
선을 지원하지 않음 |
LC_POLYLINE |
2 |
다각선을 지원함 |
LC_MARKER |
4 |
표시마크를 지원함 |
LC_POLYMARKER |
8 |
여러 표시마크를 지원함 |
LC_WIDE |
16 |
넓은 선을 지원함 |
LC_STYLED |
32 |
무늬 선을 지원함 |
LC_WIDESTYLED |
64 |
넓은 무늬 선을 지원함 |
LC_INTERIORS |
128 |
내부 장식을 지원함 |
● nIndex 에서 POLYGONALCAPS 지정시 반환된 값
상수 |
값 |
설명 |
PC_NONE |
0 |
폴리곤을 지원하지 않음 |
PC_POLYGON |
1 |
채움 폴리곤을 지원함 |
PC_RECTANGLE |
2 |
사각형을 지원함 |
PC_WINDPOLYGON |
4 |
구불구불한 폴리곤을 지원함 |
PC_SCANLINE |
8 |
단일 스캔라인을 지원함 |
PC_WIDE |
16 |
넓은 외곽선을 지원함 |
PC_STYLED |
32 |
무늬 있는 외곽선을 지원함 |
PC_WIDESTYLED |
64 |
넓은 무늬 있는 외곽선을 지원함 |
PC_INTERIORS |
128 |
내부 장식을 지원함 |
● nIndex 에서 TEXTCAPS 지정시 반환된 값
상수 |
16 |
설명 |
TC_OP_CHARACTER |
1 |
문자 출력 |
TC_OP_STROKE |
2 |
강조 문자 출력 |
TC_CP_STROKE |
4 |
강조 클립 성능 |
TC_CR_90 |
8 |
90도 회전 가능 |
TC_CR_ANY |
10 |
모든 문자 회전 가능 |
TC_SF_X_YINDEP |
20 |
x 또는 y 방향으로 크기 변경 가능 |
TC_SA_DOUBLE |
40 |
2배 크기 가능 |
TC_SA_INTEGER |
80 |
문자 크기를 위해 배수 확대 가능 |
TC_SA_CONTIN |
100 |
정확한 문자 크기를 위한 배수 확대 가능 |
TC_EA_DOUBLE |
200 |
2중 문자 지원 |
TC_IA_ABLE |
400 |
이탤릭 문자 지원 |
TC_UA_ABLE |
800 |
밑줄 문자 지원 |
TC_SO_ABLE |
1000 |
강조 지원 |
TC_RA_ABLE |
2000 |
래스터 글꼴 지원 |
TC_VA_ABLE |
4000 |
백터 글꼴 지원 |
TC_RESERVED |
8000 |
예약 |
TC_SCROLLBLT |
10000 |
비트 블록 이동을 이용한 스크롤 사용불가 |