팔레트

DrawDib 함수를 사용하려면 애플리케이션이 두 개의 색상표 지향 메시지인 WM _ QUERYNEWPALETTEWM _ PALETTECHANGED에 응답해야 합니다. 애플리케이션이 색상표를 인식하지 못하는 경우 이러한 각 메시지에 대한 처리기를 추가해야 합니다. WM _ QUERYNEWPALETTEWM _ PALETTECHANGED 메시지 처리에 대한 자세한 내용은 색상표 메시지 처리기 추가를 참조하세요.

DrawDibRealize 함수를 사용하여 DC에 대한 현재 DrawDib 색상표를 실현할 수 있습니다. WM _ QUERYNEWPALETTE 또는 WM _ PALETTECHANGED 메시지에 대한 응답으로 또는 DrawDibDraw 함수를 사용하여 이미지 시퀀스를 표시하도록 준비할 때 색상표를 인식해야 합니다.

DrawDibSetPalette 함수를 사용하여 다른 색상표에 매핑된 이미지를 그릴 수 있습니다. 이 함수는 DrawDib DC가 지정된 색상표를 사용하도록 강제하여 이미지 품질에 영향을 줄 수 있습니다. 예를 들어 색상표를 인식하는 애플리케이션은 색상표를 인식하여 DrawDib가 자체 색상표를 실현하지 못하도록 해야 할 수 있습니다. 애플리케이션은 DrawDibSetPalette를 사용하여 DrawDib에 사용할 색상표를 알릴 수 있습니다.

DrawDibGetPalette 함수를 사용하여 현재 전경 팔레트의 핸들을 가져올 수 있습니다. 애플리케이션이 현재 전경 색상표를 사용하는 경우 색상표를 단독으로 사용하지 않으며 다른 애플리케이션이 색상표 핸들을 무효화할 수 있습니다. 애플리케이션 사용을 마치면 색상표를 사용하지 않아야 합니다. 색상표를 확보하면 다른 애플리케이션에 대한 색상표 핸들이 무효화할 수 있습니다.

DrawDibChangePalette 함수를 사용하여 색상표에 대한 새 색 값을 받도록 DrawDib를 준비할 수 있습니다. DrawDibChangePalette 다음 코드에서 색상표 색 테이블에 대한 새 값을 할당합니다. DrawDibChangePalette 를 호출할 때 DDF _ ANIMATE 플래그가 DrawDib DC에 설정되지 않은 경우 DrawDibRealize를 사용하여 색상표를 적용하여 색상표를 변경할 수 있습니다. 그런 다음 DrawDibDraw를 사용하여 이미지를 다시 그릴 수 있습니다. DDF _ ANIMATE 플래그가 DrawDib DC에 설정된 경우 DrawDibDraw 또는 DrawDibRealize 를 사용하여 표시된 비트맵의 색상표와 색에 애니메이션을 적용할 수 있습니다. DrawDibEndDrawDibBegin 함수를 사용하여 DDF _ ANIMATE 플래그를 업데이트할 수 있습니다.

참고

DC에서 DrawDib 색상표를 선택한 경우 DC에서 색상표를 사용할 때 GDI(그래픽 디바이스 인터페이스) 오류가 발생할 수 있습니다. 대신 애플리케이션에서 DrawDibSetPalette를 사용하여 DrawDib DC를 변경하여 기본 색상표 또는 다른 색상표를 사용해야 합니다.

DrawDibEnd, DrawDibCloseDrawDibBegin 함수는 DrawDib 색상표를 비워도 됩니다. 그러나 이러한 함수는 DC에서 색상표를 선택하지 않은 경우에만 사용해야 합니다. DrawDibDraw 함수는 동일한 DrawDib DC를 사용할 때 색상표를 비울 수도 있지만 다른 그리기 매개 변수(lpbi, dxDst , dyDst, dxSrc 또는 dySrc) 또는 다른 형식을 지정합니다.

이미지 렌더링