Dela via


Beskärningseffekt

Använd beskärningseffekten för att mata ut en angiven region i en bild.

CLSID för den här effekten är CLSID_D2D1Crop.

Exempelbild

Före
bilden före effekten.
Efter
bilden efter transformen.
ComPtr<ID2D1Effect> cropEffect;
m_d2dContext->CreateEffect(CLSID_D2D1Crop, &cropEffect);

cropEffect->SetInput(0, bitmap);
cropEffect->SetValue(D2D1_CROP_PROP_RECT, D2D1::RectF(0.0f, 0.0f, 256.0f, 192.0f));

m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(cropEffect.Get());
m_d2dContext->EndDraw();

Effektegenskaper

Visningsnamn och indexuppräkning Typ- och standardvärde Beskrivning
Rect
D2D1_VECTOR_4F
Den region som ska beskäras anges som en vektor i formuläret (vänster, överkant, bredd, höjd).
D2D1_CROP_PROP_RECT
{-FLT_MAX, -FLT_MAX, FLT_MAX, FLT_MAX}
Enheterna finns i DIP:er.
Obs!
Rect trunkeras om den överlappar kantgränserna för indatabilden.
D2D1_CROP_PROP_BORDER_MODE
D2D1_BORDER_MODE
D2D1_BORDER_MODE_SOFT
  • D2D1_BORDER_MODE_SOFT : Om rektangeln för grödan faller på koordinater för bråkpunkter tillämpas antialiasering som resulterar i en mjuk kant.
  • D2D1_BORDER_MODE_HARD : Om rektangeln för grödan faller på koordinater för bråkpunkter, klämmer effekten som resulterar i en hård kant.

Utdatabitmapp

Resultatet av den här effekten är storleken på egenskapen Rect. Längden och bredden beräknas

ulated med hjälp av ekvationerna här:

Utdatalängd i Pixels=(Rect.Right-Rect.Left)*(Användarens DPI/96)
Utdatahöjd i bildpunkter=(Rect.Bottom-Rect.Top)*(Användarens DPI/96)

Krav

Krav Värde
Lägsta klient som stöds Windows 8 och Platform Update för Windows 7 [skrivbordsappar | Windows Store-appar]
Lägsta server som stöds Windows 8 och Platform Update för Windows 7 [skrivbordsappar | Windows Store-appar]
Rubrik d2d1effects.h
Bibliotek d2d1.lib, dxguid.lib

ID2D1Effect