반응형
CDC 클래스
- CDC 객체는 디스플레이 또는 프린터와 같이 윈도우 클라이언트 영역과 관련된 디스 플레이 컨텍스트와 관계된 작업을 수행하기 위한 멤버 함수를 제공한다.
데이터 멤버
m_hDC : CDC 객체에 의해서 사용되는 출력 디바이스 컨텍스트.
m_hAttribDC : CDC 객체에 의해서 사용되는 속성 디바이스 컨텍스트.
생성 관련 함수
CDC : CDC 객체를 생성한다.
CreateDC : 특정 디바이스에 대한 디바이스 컨텍스트를 만든다.
CreateIC : 특정 디바이스에 대한 정보 컨텍스트를 만든다. 이것은 디바이스 컨텍스트를 만들지 않고 디바이스에 관한 정보만 빠르게 얻을 수 있는 방법을 제공한다.
CreateCompatibleDC : 다른 디바이스 컨텍스트와 호환이 가능한 메모리 디바이스 컨텍스 트를 만든다. 이것은 메모리에 이미지를 미리 읽어 들이기 위해서 사용할 수 있다.
DeleteDC : CDC 객체와 관련된 윈도우 디바이스 컨텍스트를 삭제한다.
FromHandle : 디바이스 컨텍스트에 대한 핸들이 주어졌을 때 CDC 객체에 대한 포인터를 반환한다. 만약 CDC 객체가 핸들과 연관되지 않았다면 임시로 CDC 객체를 만들고 핸들을 추가한다.
DeleteTempMap : FromHandle에 의해서 만들어진 임시 CDC 객체를 삭제하기 위해서 CWinApp가 유휴 시간 핸들러를 사용해서 호출하도록 한다. 이것은 디바이스 컨텍스트로 부터 핸들을 분리시킨다.
Attach : CDC 객체에 윈도우 핸들을 추가한다.
Detach : CDC 객체로부터 윈도우 핸들을 분리한다.
SetAttribDC : 속성 디바이스 컨텍스트인 m_hAttribDC를 설정한다.
SetOutputDC : 출력 디바이스 컨텍스트인 m_hDC를 설정한다.
ReleaseAttribDC : 속성 디바이스 컨텍스트인 m_hAttribDC를 해제한다.
ReleaseOutputDC : 출력 디바이스 컨텍스트인 m_hDC를 해제한다.
GetCurrentBitmap : 현재 선택된 CBitmap 객체에 대한 포인터를 반환한다.
GetCurrentBrush : 현재 선택된 CBrush 객체에 대한 포인터를 반환한다.
GetCurrentFont :현재 선택된 CFont객체에 대한 포인터를 반환한다.
GetCurrentPalette : 현재 선택된 CPalette 객체에 대한 포인터를 반환한다.
GetCurrentPen : 현재 선택된 CPen 객체에 대한 포인터를 반환한다.
GetWindow : 디스플레이 디바이스 컨텍스트와 관련된 윈도우를 반환하다.
디바이스 컨텍스트 관련 함수
GetSafeHdc : 출력 디바이스 컨텍스트인 m_hDC를 반환한다.
SaveDC : 디바이스 컨텍스트의 현재 상태를 저장한다.
RestoreDC : SaveDC로 저장하기 이전 상태로 디바이스 컨텍스트를 복원한다.
ResetDC : m_hAttribDC 디바이스 컨텍스트를 갱신한다.
GetDeviceCaps : 주어진 디스플레이 디바이스의 성능에 관한 세부적인 디바이스 정보를 얻어 온다.
IsPrinting : 디바이스 컨텍스트가 인쇄를 위해서 사용될지의 여부를 결정한다.
드로잉 도구(drawing tool)
관련 함수
GetBrushOrg : 현재의 브러시의 원점 값을 얻는다.
SetBrushOrg : 디바이스 컨텍스트에서 선택된 브러시의 원점을 설정한다.
EnumObjects : 디바이스 컨텍스트에서 이용할 수 있는 펜들과 브러시들을 열거한다.
선택 helper 함수
SelectObject : 펜들과 같은 GDI 드로잉 객체를 선택한다.
SelectStockObject : 미리 정의된 스톡 펜, 브러시 또는 윈도우에 의해서 제공되는 폰트 중 에서 하나를 선택한다.
컬러와 컬러
팔레트 관련 함수
GetNearestColor : 지정된 디바이스가 나타낼 수 있는 논리 컬러에 가장 근접한 논리 컬러 를 얻는다.
SelectPalette : 논리 팔레트를 선택한다.
RealizePalette : 시스템 팔레트에 현재 논리 팔레트의 항목들을 매핑한다.
UpdatedColors : 픽셀당 픽셀을 기본으로 시스템 팔레트를 이용하여 현재 클라이언트 영 역을 일치시킴으로써 디바이스 컨텍스트의 클라이언트 영역을 갱신한다.
GetHalftoneBrush : 하프톤 브러시를 얻어온다.
드로잉 속성 관련 함수
GetBkColor : 현재의 배경색을 얻는다.
SetBkColor : 현재의 배경색을 설정한다.
GetBkMode : 배경 모드를 얻는다.
SetBkMode : 배경 모드를 설정한다.
GetPolyFillMode : 현재의 다각형을 채우기 위한 모드를 얻어 온다.
SetPolyFillMode : 다각형을 채우기 위한 모드를 설정한다.
GetROP2 : 현재의 드로잉 모드를 얻는다.
SetROP2 : 현재의 드로잉 모드를 설정한다.
GetStretchBltMode : 현재의 비트맵 확대 모드를 얻는다.
SetStretchBltMode : 비트맵 확대 모드를 설정한다.
GetTextColor : 현재의 텍스트 컬러를 얻는다.
SetTextColor : 텍스트 컬러를 설정한다.
GetColorAdjustment : 디바이스 컨텍스트에 대한 컬러 보정 값을 얻는다.
SetColorAdjustment : 특정 값을 사용하여 디바이스 컨텍스트에 대한 컬러 보정 값을 설정 한다.
매핑 관련 함수
GetMapMode : 현재의 매핑 모드를 얻는다.
SetMapMode : 현재의 매핑 모드를 설정한다.
GetViewportOrg : 뷰포트의 원점의 x와 y좌표를 얻는다.
SetViewportOrg : 뷰포트의 원점을 설정한다.
OffsetViewportOrg : 현재 뷰포트 원점의 좌표와 관련된 뷰포트의 원점을 수정한다.
GetViewportExt : 뷰포트의 x와 y좌표를 얻는다.
SetViewportExt : 뷰포트의 x와 y좌표를 설정한다.
ScaleViewportExt : 현재 값과 관련있는 뷰포트의 범위를 수정한다.
GetWindowOrg : 관련된 윈도우의 원점에 대한 x와 y 좌표를 얻는다.
SetWindowOrg : 디바이스 컨텍스트의 윈도우 원점을 설명한다.
OffsetWindowOrg : 현재의 윈도우 원점의 좌표와 관련된 윈도우의 원점을 수정한다.
GetWindowExt : 관련된 윈도우의 x와 y의 범위를 얻는다.
SetWindowExt : 관련된 윈도우의 x와 y의 범위를 설정한다.
ScaleWindowExt : 현재 값과 관련있는 윈도우의 범위를 수정한다.
좌표 변환 함수
DPtoHTMETRIC : 디바이스 단위를 HTMETRIC 단위로 변환한다.
DPtoLP : 디바이스 단위를 논리 단위로 변환한다.
HTMETRICtoDP : HTMETRIC 단위를 디바이스 단위로 변환한다.
HTMETRICtoLP : HTMETRIC 단위를 논리 단위로 변환한다.
LPtoDP : 논리 단위를 디바이스 단위로 변환한다.
LPtoHTMETRIC : 논리 단위를 HTMETRIC 단위로 변환한다.
영역 관련 함수
FillRgn : 지정된 브러시로 특정 영역을 채운다.
FrameRgn : 브러시를 사용하여 특정 영역 주위의 경계선을 그린다.
InvertRgn : 영역에 있는 컬러들을 전부 반전시킨다.
PaintRgn : 선택한 브러시로 특정 영역을 채운다.
클리핑(clipping)관련 함수
SetBoundsRect : 지정된 디바이스 컨텍스트에 대한 사각형 경계영역의 정보를 설정한다.
GetBoundsRect : 지정된 디바이스 컨텍스트에 대해서 현재 설정된 사각형 경계영역의 정 보를 반환한다.
GetClipBox : 화면의 클리핑 경계에 가장 가까운 사각형의 크기를 얻는다.
SelectClipRgn : 특정 모드를 사용하여 현재 클리핑 영역과 조합한다.
ExcludeClipRect : 현재의 클리핑 영역에서 지정된 사각형 영역을 빼낸 후에 새로운 클리핑 영역을 생성한다.
ExcludeUpdateRgn : 클리핑 영역에서 윈도우에 있는 갱신될 영역을 제외함으로써 유효하지 않은 영역에 그려지는 것을 막는다.
IntersectClipRect : 현재 영역과 사각형의 교차 영역을 만들어서 새로운 클리핑 영역을 만 든다.
OffsetClipRgn : 주어진 디바이스의 클리핑 영역 x 축과 y 축으로 각각 이동한다.
PtVisible : 클리핑 영역에 주어진 점이 존재하는지의 여부를 알아낸다.
RectVisible : 주어진 사각형의 임의의 부분이 클리핑 영역 내에 있는지를 알아낸다.
선 출력 함수
GetCurrentPosition : 펜의 현재 좌표를 얻는다.
MoveTo : 현재 좌표를 이동한다.
LineTo : 현재 좌표에서 지정된 좌표까지 선을 그린다.
Arc : 타원형의 호를 그린다.
Arcto : 타원형의 호를 그린다. (현재 좌표가 갱신되는 것을 제외하면 Arc와 비슷하다.)
AngleArc : 선분과 호를 그리고 현재 좌표를 호의 끝점으로 이동한다.
GetArcDirection : 디바이스 컨텍스트에서 현재 호를 그리는 방향을 반환한다.
SetArcDirection : 호와 사각형을 그리기 위한 방향을 설정한다.
PolyDraw : 선분과 베지어 스플라인을 그린다. 이 함수는 현재 좌표를 갱신한다.
PolyLine : 지정된 점들을 연결하는 선을 그린다.
PolyPolyLine : 연결된 선을 여러 개 그린다. 현재 좌표는 함수에 의해서 사용되거나 갱신되지 않는다.
PolyLineTo : 하나 이상의 직선을 그리고 마지막 선의 끝점으로 현재 좌표를 이동한다.
PolyBezier : 하나 이상의 베지어 스플라인을 그린다. 현재 좌표는 사용되나 갱신되지 않는 다.
PolyBezierTo : 하나 이상의 베지어 스플라인을 그리고 마지막 베지어 스플라인의 끝점으로 현재 좌표를 이동한다.
단순 드로잉 함수
FillRect : 특정 브러시를 사용하여 지정된 사각형을 채운다.
FrameRect : 사각형 주변에 경계선을 그린다.
InvertRect : 사각형 내부를 반전시킨다.
DrawIcon : 아이콘을 그린다.
DrawDragRect : 드래그된 사각형을 지우거나 다시 그린다.
FillSolidRect : 솔리드 컬러로 사각형을 채운다.
Draw3dRect : 3차원 형태의 사각형을 그린다.
DrawEdge : 사각형의 모서리를 그린다.
DrawFrameControl : 프레임 컨트롤을 그린다.
DrawState : 이미지를 출력하고 현재 상태를 나타내는 효과를 적용한다.
타원과 다각형(Polygon) 함수
Chord : 현을 그린다.
DrawFocusRect : 포커스를 가지고 있는 형태로 사각형을 그린다.
Ellipse : 타원을 그린다.
Pie : 파이 모양을 그린다.
Polygon : 선들에 의해서 연결된 두 개 이상의 점들로 이루어지는 다각형을 그린다.
PolyPolygon : 현재의 다각형 채우기 모드를 사용하여 두 개 이상의 다각형을 그린다. 이 다각형들은 합쳐지지는 않지만 겹쳐질 수는 있다.
Polyline : 지정된 점들을 연결하는 선들의 조합으로 이루어진 다각형을 그린다.
Rectangle : 현재의 펜을 사용하여 사각형을 그리고 현재의 브러시를 사용하여 사각형을 채운다.
RoundRect : 현재의 펜을 사용하여 모서리가 둥근 형태의 사각형을 그리고, 현재의 브러시 를 사용하여 채운다.
비트맵 함수
PatBlt : 비트 패턴을 만든다.
BitBlt : 지정된 디바이스 컨텍스트에서 비트맵을 복사한다.
StretchBlt : 디바이스의 원본 사각형에서 대상 사각형으로 비트맵을 이동시킨다. 비트맵의 크기가 대상 사각형의 원본보다 크거나 작다면 비트맵을 적당히 늘리거나 줄여서 이동시킨다.
GetPixel : 지정된 픽셀의 RGB컬러 값을 얻는다.
SetPixel : 지정된 컬러의 근사값으로 지정된 좌표에 점을 찍는다.
SetPixelV : 지정된 컬러의 근사값으로 지정된 좌표에 점을 찍는다. SetPixelV는 찍힌 점의 컬러 값을 반환할 필요가 없기 때문에 SetPixel보다 더 빠르다.
FloodFill : 현재의 브러시를 사용하여 영역을 채운다.
ExtFloodFill : 현재의 브러시로 영역을 채운다. FloodFill 멤버함수보다는 약간의 유연성을 제공한다.
MaskBlt : 주어진 마스크와 래스터 연산을 사용하여 원본과 대상 비트맵에 대한 컬러 데이터를 합친다.
PlgBlt : 원본 디바이스 컨텍스트의 지정된 사각형에서 주어진 디바이스 컨텍스트의 지정 된 평행사변형 영역에 비트맵을 복사한다.
텍스트 관련 함수
TextOut : 현재의 선택된 폰트를 사용하여 지정된 위치에 문자열을 출력한다.
ExtTextOut : 현재의 선택된 폰트를 사용하여 지정된 사각형의 영역 내에 문자열을 출력 한다.
TabbedTextOut : 탭이 멈추는 위치를 지정해 주면 그 위치에 문자열을 출력한다.
DrawText : 지정된 사각형 안에 포맷된 형태의 텍스트를 출력한다.
GetTextExtent : 크기를 결정하기 위해서 현재 폰트를 사용한 속성 디바이스 컨텍스트 상 에서 텍스트의 폭과 높이를 얻는다.
GetOutputTextExtent : 출력 디바이스 컨텍스트 상에서 텍스트의 폭과 높이를 얻는다.
GetTabbedTextExtent : 속성 디바이스 컨텍스트 상에서 주어진 탭 지정 문자열의 폭과 높이를 얻는다.
GetOutputTabbedTextExtent : 출력 디바이스 컨텍스트 상에서 주어진 탭 지정 문자열의 폭 과 높이를 얻는다.
GrayString : 주어진 위치에 희미하게 출력되는 텍스트를 출력한다.
GetTextAlign : 텍스트 정렬 플래그 값을 얻는다.
SetTextAlign : 텍스트 정렬 플래그 값을 설정한다.
GetTextFace : 버퍼에 현재 폰트의 폰트 이름을 복사한다.
GetTextMetrics : 속성 디바이스 컨텍스트에서 현재의 폰트에 대한 크기를 얻는다.
GetOutputTextMetrics : 출력 디바이스 컨텍스트에서 현재의 폰트에 대한 크기를 얻는다.
SetTextJustification : 문자열의 사이에 공백을 추가한다.
GetTextCharacterExtra : 현재 설정된 문자 사이의 공백을 얻는다.
SetTextCharacterExtra : 문자 사이의 공백을 설정한다.
폰트 함수
GetFontData : 폰트의 크기 정보를 가변폭 폰트 파일로 얻는다. 얻기 위한 정보는 폰트 파일 안에 오프셋을 지정함으로써 구별되고, 반환된 정보의 길이 역시 구별된다.
GetKerningPairs : 현재 지정된 디바이스 컨텍스트에서 선택된 폰트에 대한 문자 kerning 쌍을 얻는다.
GetOutputTextMetrics : 트루 타입 폰트에 대한 폰트 크기 정보를 얻는다.
GetGlyphOutline : 현재의 폰트에서 외곽선 문자에 대한 곡선 또는 비트맵을 얻는다.
GetCharABCWidths : 지정된 범위에 있는 연속된 문자의 폭을 논리 단위로 얻는다.
GetCharWidth : 속성 디바이스 컨텍스트에서 연속된 문자열에 대한 개별 문자의 폭을 얻는다.
GetOutputCharWidth : 출력 디바이스 컨텍스트에서 연속된 문자열에 대한 개별 문자의 폭 을 얻는다.
SetMapperFlags : 논리적인 폰트를 물리적인 폰트로 매핑할 때 폰트 매퍼가 사용할 알고리즘을 설정한다.
GetAspectRatioFilter : 현재 폰트의 종횡비 필터에 대한 설정 값을 얻는다.
프린터 확장 함수
QueryAbort : 애플리케이션에서 인쇄를 수행하거나 혹은 인쇄가 종료되었는지를 쿼리하기 위한 AbortProc 콜백함수를 호출한다.
Escape : GDI를 통해서 특별한 디바이스에 직접 사용할 수 없는 부분을 참조하기 위해서 애플리케이션을 허용하도록 한다. 또한 윈도우 확장 함수에 대한 참조를 허가한다
. 애플리케이션에 의해서 만들어진 Escape 호출은 적절히 변환되어 디바이스 드라이버에게 보내진다.
DrawEscape : GDI를 통해서 직접적으로 이용할 수 없는 비디오 디스플레이의 드로잉 능력을 참조한다.
StartDoc : 새로운 인쇄 작업이 시작되었음을 디바이스 드라이버에게 알린다.
StartPage : 새로운 페이지가 시작되었음을 디바이스 드라이버에게 알린다.
EndPage : 페이지가 끝났음을 디바이스 드라이버에게 알린다.
SetAbortProc : 인쇄 작업이 중단될 때 프로그래머가 작성한 콜백 함수를 호출할 수 있도록 설정한다.
AbortDoc : 애플리케이션이 StartDoc 멤버 함수의 마지막 호출 후에 디바이스 컨텍스트에 출력한 모든 내용을 지우고 현재의 인쇄 작업을 종결한다.
EndDoc : StartDoc 멤버 함수에 의해서 시작된 인쇄 작업을 마친다.
스크롤 관련 함수
ScrollDC : 직사각형 영역을 수평과 수직으로 스크롤한다.
메타 파일 관련 함수
PlayMetaFile : 주어진 디바이스 상에서 지정된 메타 파일의 내용을 수행한다. PlayMetaFile 의 확장된 버전은 주어진 확장 포맷 메타 파일에 저장된 그림을 출력한다. 메타 파일 은 원하는 만큼 재생이 가능하다.
AddMetaFileComment : 버퍼에서 지정된 확장 포맷 형태의 메타 파일로 주석을 복사한다.
경로 함수
AbortPath : 디바이스 컨텍스트에서 임의의 경로를 닫고 없앤다.
BeginPath : 디바이스 컨텍스트에서 경로 대괄호를 연다.
CloseFigure : 경로에서 열려있는 도형을 닫는다.
EndPath : 경로 대괄호를 닫고 디바이스 컨텍스트에서 대괄호로 정의된 경로를 선택한다.
FillPath : 현재 경로에 열려 있는 도형들을 닫고 현재의 브러시와 다각형을 채우기 위한 모드를 사용하여 경로의 내부를 채운다.
FlattenPath : 현재의 디바이스 컨텍스트의 선택된 경로에서 임의의 곡선을 전달하고 연속 된 선으로 변환한다.
GetMiterLimit : 디바이스 컨텍스트에 대한 미터 제한을 반환한다.
GetPath : 선의 끝점을 정의하는 좌표를 얻고 곡선의 제어점을 디바이스 컨텍스트에서 선택된 경로에서 찾는다.
SelectClipPath : 현재의 경로를 지정된 모드를 사용하여 기존의 클리핑 영역과 새로운 영 역을 결합한 디바이스 컨텍스트를 위한 클리핑 영역을 선택한다.
SetMiterLimit : 디바이스 컨텍스트를 위한 미터 결합의 한계를 설정한다.
StrockeAndFillPath : 경로 상에 열려 있는 도형을 닫고, 현재의 펜을 사용하여 경로의 외곽선을 그린 후에 현재의 브러시를 사용하여 내부를 채운다.
StrockPath : 현재의 펜을 사용하여 지정된 경로를 표현한다.
WidenPath : 디바이스 컨텍스트에서 선택된 현재의 펜으로 경로가 그려지면, 그 영역이 그려짐으로 인해서 현재 경로를 다시 정의하게 된다.
반응형
'Programming' 카테고리의 다른 글
리눅스 netstat (0) | 2015.08.24 |
---|---|
리눅스 그룹관리 (0) | 2015.08.20 |
데이터타입 (0) | 2015.06.23 |
언제 어느 컨테이너를 사용할 것인가? (0) | 2015.06.08 |
복사생성자 사용 (0) | 2015.06.05 |