Udostępnij przez


Efekt kompensacji DPI

Użyj efektu kompensacji DPI, aby automatycznie dostosować mapę bitową wejściową w celu dopasowania do dpi kontekstu. Jest to przydatne w sytuacjach, w których mapa bitowa jest tworzona lub ładowana w innej rozdzielczości DPI niż ekran.

Identyfikator CLSID dla tego efektu jest CLSID_D2D1DpiCompensation.

Właściwości efektu

Nazwa wyświetlana i wyliczenie indeksu Opis
InterpolacjaMode
D2D1_DPICOMPENSATION_PROP_INTERPOLATION_MODE
Tryb interpolacji używany przez efekt do skalowania obrazu.
Typ jest D2D1_DPICOMPENSATION_INTERPOLATION_MODE.
Wartość domyślna to D2D1_DPICOMPENSATION_INTERPOLATION_MODE_LINEAR .
BorderMode
D2D1_DPICOMPENSATION_PROP_BORDER_MODE
Tryb używany do obliczania obramowania obrazu, miękkiego lub twardego. Aby uzyskać więcej informacji, zobacz Tryby obramowania.
Typ to D2D1_BORDER_MODE.
Wartość domyślna to D2D1_BORDER_MODE_SOFT.
InputDpi
D2D1_DPICOMPENSATION_PROP_INPUT_DPI
DPI obrazu wejściowego.
Typ to FLOAT.
Wartość domyślna to 96.0f.

Tryby interpolacji

Wyliczenie Opis
D2D1_DPICOMPENSATION_INTERPOLATION_MODE_NEAREST_NEIGHBOR Próbkuje najbliższy pojedynczy punkt i używa go. Ten tryb używa mniej czasu przetwarzania, ale generuje obraz o najniższej jakości.
D2D1_DPICOMPENSATION_INTERPOLATION_MODE_LINEAR Używa próbki czterech punktów i interpolacji liniowej. Ten tryb używa więcej czasu przetwarzania niż tryb najbliższego sąsiada, ale generuje obraz o wyższej jakości.
D2D1_DPICOMPENSATION_INTERPOLATION_MODE_CUBIC Używa 16 przykładowego jądra sześciennego do interpolacji. Ten tryb używa najbardziej czasu przetwarzania, ale generuje obraz o wyższej jakości.
D2D1_DPICOMPENSATION_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR Używa 4 próbek liniowych w jednym pikselu do dobrego anty aliasowania krawędzi. Ten tryb jest dobry do skalowania w dół o małe ilości na obrazach z kilkoma pikselami.
D2D1_DPICOMPENSATION_INTERPOLATION_MODE_ANISOTROPIC Używa filtrowania anisotropowego do próbkowania wzorca zgodnie z przekształconym kształtem mapy bitowej.
D2D1_DPICOMPENSATION_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC Używa jądra sześciennego wysokiej jakości o zmiennej wysokiej jakości, aby wykonać wstępne skalowanie obrazu, jeśli skalowanie w dół jest zaangażowane w macierz transformacji. Następnie używa trybu interpolacji sześciennych dla końcowych danych wyjściowych.

Nuta

Jeśli nie wybierzesz trybu, efekt zostanie domyślnie D2D1_DPICOMPENSTION_INTERPOLATION_MODE_LINEAR.

Tryby obramowania

Nazwa Opis
D2D1_BORDER_MODE_SOFT Piksele poza granicami wejściowymi są generowane przez efekt dublowania obramowania.
D2D1_BORDER_MODE_HARD Piksele poza granicami wejściowymi są przezroczyste czarne.

Wymagania

Wymaganie Wartość
Minimalny obsługiwany klient Windows 8 i aktualizacja platformy dla systemu Windows 7 [aplikacje klasyczne | Aplikacje ze Sklepu Windows]
Minimalny obsługiwany serwer Windows 8 i aktualizacja platformy dla systemu Windows 7 [aplikacje klasyczne | Aplikacje ze Sklepu Windows]
Nagłówek d2d1effects.h
Biblioteka d2d1.lib, dxguid.lib

ID2D1Effect