Efekt obramowania
Użyj efektu obramowania, aby rozszerzyć obraz z krawędzi. Możesz użyć tego efektu, aby powtórzyć piksele z krawędzi obrazu, opakowować piksele z przeciwnego końca obrazu lub dublować piksele na obramowanie mapy bitowej, aby rozszerzyć region mapy bitowej.
Identyfikator CLSID dla tego efektu jest CLSID_D2D1Border.
Przykładowe obrazy
W poniższych przykładach pokazano dane wyjściowe efektu obramowania przy użyciu każdego trybu. Rozmiar danych wyjściowych jest nieskończony, ale te przykładowe obrazy są przycinane do dwukrotnego rozmiaru.
Lustro
Przed |
---|
![]() |
Po |
![]() |
Zacisk
Przed |
---|
![]() |
Po |
![]() |
Owijać
Przed |
---|
![]() |
Po |
![]() |
ComPtr<ID2D1Effect> borderEffect;
m_d2dContext->CreateEffect(CLSID_D2D1Border, &borderEffect);
borderEffect->SetInput(0, bitmap);
borderEffect->SetValue(D2D1_BORDER_PROP_EDGE_MODE_X, D2D1_BORDER_EDGE_MODE_MIRROR);
borderEffect->SetValue(D2D1_BORDER_PROP_EDGE_MODE_Y, D2D1_BORDER_EDGE_MODE_MIRROR);
m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(borderEffect.Get());
m_d2dContext->EndDraw();
Właściwości efektu
Nazwa wyświetlana i wyliczenie indeksu | Opis |
---|---|
Tryb krawędzi X D2D1_BORDER_PROP_EDGE_MODE_X |
Tryb krawędzi w kierunku X dla efektu. Można to ustawić na zacisk, zawijanie lub lustro. Aby uzyskać więcej informacji, zobacz tryby Edge. Typ to D2D1_BORDER_EDGE_MODE. Wartość domyślna to D2D1_BORDER_EDGE_MODE_CLAMP. |
Tryb krawędzi Y D2D1_BORDER_PROP_EDGE_MODE_Y |
Tryb krawędzi w kierunku Y dla efektu. Można to ustawić na zacisk, zawijanie lub lustro. Aby uzyskać więcej informacji, zobacz tryby Edge. Typ to D2D1_BORDER_EDGE_MODE. Wartość domyślna to D2D1_BORDER_EDGE_MODE_CLAMP. |
Tryby krawędzi
Nazwa wyświetlana i wyliczenie indeksu | Opis |
---|---|
Zacisk D2D1_BORDER_EDGE_MODE_CLAMP |
Powtarza piksele z krawędzi obrazu. |
Owijać D2D1_BORDER_EDGE_MODE_WRAP |
Używa pikseli z przeciwległej krawędzi końca obrazu. |
Lustro D2D1_BORDER_EDGE_MODE_MIRROR |
Odzwierciedla piksele na krawędzi obrazu. |
Mapa bitowa wyjściowa
Rozmiar mapy bitowej danych wyjściowych jest nieskończony dla wszystkich danych wejściowych, z wyjątkiem obrazu wejściowego o rozmiarze 0. Jeśli wysokość lub szerokość obrazu wejściowego wynosi 0, rozmiar danych wyjściowych wynosi 0.
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 |