● 관련 ━ 디스플레이,장치,정보
● 디스플레이 장치의 정보를 얻는다
● 원형
● 선언
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 |
비트 블록 이동을 이용한 스크롤 사용불가 |