가우시안 흐림 효과
Gaussian 흐림 효과를 사용하여 전체 입력 이미지에 대한 Gaussian 함수를 기반으로 흐림 효과를 만듭니다.
이 효과를 사용하여 네온 및 그림자를 만들고 복합 효과를 사용하여 결과를 원래 이미지에 적용할 수 있습니다. 하이라이트 및 그림자와 같은 필터에 대한 사진 처리에 유용합니다. 알파 채널이 흐리게 표시되고 조명 효과도 알파 채널을 사용하여 표면 기하 도형을 높이 맵으로 결정하기 때문에 반사 조명 또는 확산 조명 효과와 같은 조명 효과에 입력할 때 이 효과의 출력을 사용할 수 있습니다.
이 효과는 기본 제공 그림자 효과에 사용됩니다.
이 효과에 대한 CLSID는 CLSID_D2D1GaussianBlur.
예제 이미지
이전 |
---|
After |
ComPtr<ID2D1Effect> gaussianBlurEffect;
m_d2dContext->CreateEffect(CLSID_D2D1GaussianBlur, &gaussianBlurEffect);
gaussianBlurEffect->SetInput(0, bitmap);
gaussianBlurEffect->SetValue(D2D1_GAUSSIANBLUR_PROP_STANDARD_DEVIATION, 3.0f);
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(gaussianBlurEffect.Get());
m_d2dContext->EndDraw();
효과 속성
표시 이름 및 인덱스 열거형 | 설명 |
---|---|
StandardDeviation D2D1_GAUSSIANBLUR_PROP_STANDARD_DEVIATION |
이미지에 적용할 흐림 효과의 양입니다. 표준 편차를 3으로 곱하여 커널의 흐림 반경을 계산할 수 있습니다. 표준 편차와 흐림 반경 모두의 단위는 DIP입니다. DIP 값이 0이면 이 효과가 완전히 비활성화됩니다. FLOAT 형식입니다. 기본값은 3.0f입니다. |
Optimization D2D1_GAUSSIANBLUR_PROP_OPTIMIZATION |
최적화 모드입니다. 자세한 내용은 최적화 모드를 참조하세요. 형식이 D2D1_GAUSSIANBLUR_OPTIMIZATION. 기본값은 D2D1_GAUSSIANBLUR_OPTIMIZATION_BALANCED. |
BorderMode D2D1_GAUSSIANBLUR_PROP_BORDER_MODE |
소프트 또는 하드 이미지의 테두리를 계산하는 데 사용되는 모드입니다. 자세한 내용은 테두리 모드를 참조하세요. 형식이 D2D1_GAUSSIANBLUR_BORDER_MODE. 기본값은 D2D1_BORDER_MODE_SOFT. |
최적화 모드
속성 | 설명 |
---|---|
D2D1_DIRECTIONALBLUR_OPTIMIZATION_SPEED | 비교적 작은 반경에서 사전 크기 조정과 같은 내부 최적화를 적용합니다. 선형 필터링을 사용합니다. |
D2D1_DIRECTIONALBLUR_OPTIMIZATION_BALANCED | 속도 모드와 동일한 최적화 임계값을 사용하지만 삼선형 필터링을 사용합니다. |
D2D1_DIRECTIONALBLUR_OPTIMIZATION_QUALITY | 큰 흐림 반지름이 있는 내부 최적화만 사용합니다. 여기서 근사값은 표시될 가능성이 적습니다. 삼선형 필터링을 사용합니다. |
테두리 모드
속성 | 설명 |
---|---|
D2D1_BORDER_MODE_SOFT | 효과는 흐림 커널을 적용하여 부드러운 가장자리를 만들 때 투명한 검은색 픽셀로 이미지를 채운다. |
D2D1_BORDER_MODE_HARD | 효과는 출력을 입력 이미지의 크기로 고정합니다. 효과가 흐림 커널을 적용하면 입력 범위를 벗어난 샘플에 대한 미러 형식 테두리 변환을 사용하여 입력 이미지를 확장합니다. |
출력 비트맵
이 효과의 출력은 흐림 반경 및 테두리 모드에 따라 입력 비트맵보다 클 수 있습니다. 테두리 모드가 D2D1_BORDER_MODE_SOFT 설정되면 출력 비트맵의 크기가 픽셀 단위로 표시되는 흐림 커널의 크기로 증가합니다. 이 표에서는 출력 비트맵을 계산하는 데 사용할 수 있는 수식을 제공합니다.
Output bitmap growth (X and Y) = StandardDeviation (DIPs)*6*((User DPI)/96)
따라서 이미지 크기가 각 방향에서 10픽셀 증가하면 이미지의 왼쪽 위 모서리는 (-5, -5)에, 오른쪽 아래는 (105, 105)에 있습니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 7용 Windows 8 및 플랫폼 업데이트 [데스크톱 앱 | Windows 스토어 앱] |
지원되는 최소 서버 | Windows 7용 Windows 8 및 플랫폼 업데이트 [데스크톱 앱 | Windows 스토어 앱] |
헤더 | d2d1effects.h |
라이브러리 | d2d1.lib, dxguid.lib |