direct2d 예제

이 모듈 전체에서 D2D1 네임스페이스의 예제를 볼 수 있습니다. Direct2D 및 DirectWrite용 SDK에 포함된 예제는 새 API를 시작하는 데 필요한 기본 정보를 제공하지만 다소 번거롭고 이해하기 쉽게 사용하는 접근 방식을 찾을 수 있기를 바랍니다. MyForm은 최상위 창을 나타내는 클래스인 Form에서 파생됩니다. 그래픽:::팩토리 클래스는 Direct2D ID2D1Factory 인터페이스주변의 래퍼이며, 그래픽::WriteFactory는 DirectWrite IDWriteFactory 인터페이스 주변의 래퍼입니다. 둘 다 MyForm의 생성자에서 초기화됩니다: 두 번째 매개 변수인 D2D1_HWND_RENDER_TARGET_PROPERTIES 구조체는 콘텐츠가 렌더링되는 HWND, 렌더 대상의 초기 크기(픽셀) 및 프레젠테이션 옵션을 지정합니다. 이 예제에서는 D2D1::HwndRenderTarget속성 도움말 함수를 사용하여 HWND 및 초기 크기를 지정합니다. 기본 프레젠테이션 옵션을 사용합니다. 데모 응용 프로그램은 DirectWrite SDK 예제 중 하나와 동일한 기능을 구현하여 코드 크기를 크게 줄입니다. 우리는 합성 효과를 사용하여 두 개 이상의 이미지 및 / 또는 효과를 결합 할 수 있습니다. 다음은 예제입니다.

MFC 응용 프로그램에서 Direct2D 지원을 사용하도록 설정한 후에는 CD2DBitmap 생성자 중 하나를 사용하여 파일에서 이미지를 로드하는 데 아무런 땀이 없습니다. 불행히도 이미지 파일에 저장하는 CD2DBitmap 방법을 찾을 수 없습니다 (CImage::Save 또는 Gdiplus::Image::Save)와 유사합니다. 문제 없습니다, 우리는 그것을 스스로 하려고 할 수 있습니다. 다음은 다음과 같습니다: CreateHwndRenderTarget 메서드는 세 가지 매개 변수를 사용합니다. 첫 번째 매개 변수인 D2D1_RENDER_TARGET_PROPERTIES 구조체는 렌더링 대상을 소프트웨어 또는 하드웨어및 DPI에 렌더링하도록 강제할지 여부를 원격 표시 옵션을 지정합니다. 이 예제의 코드는 D2D1::RenderTargetProperties 도우미 함수를 사용하여 기본 렌더 대상 속성을 허용합니다. Direct2D 및 DirectWrite, 그리기 및 렌더링 텍스트 C ++ 소스 코드 1 이 시리즈의 첫 번째 문서는 C ++ 11 표준에 의해 가능하게 된 안전한 C ++ 개발에 대한 접근 방식을 설명하기위한 시리즈의 첫 번째 문서입니다. Api.

다음 문서 에서 C ++에서 Windows 개발, 메뉴와 함께 작업[^] 우리는 만들고 메뉴를 처리하기위한 Windows API를 탐구, C ++11이 안전한 프로그래밍 모델을 가능하게하는 방법을 향해 눈을 휘젓는다. 이 기사는 std::shared_ptr와 다른 스마트 포인터를 사용하여 가능하게 한 프로그래밍 스타일에 대해 Direct2D 및 DirectWrite에 관한 것보다 훨씬 더 많은 것입니다.