Udostępnij za pośrednictwem


CDC::MaskBlt

Łączy dane koloru dla map bitowych źródłowego i docelowego przy użyciu danego maski i rastrowe operacji.

BOOL MaskBlt(
   int x,
   int y,
   int nWidth,
   int nHeight,
   CDC* pSrcDC,
   int xSrc,
   int ySrc,
   CBitmap& maskBitmap,
   int xMask,
   int yMask,
   DWORD dwRop 
);

Parametry

  • x
    Określa logiczną współrzędną x lewego górnego rogu prostokąt docelowy.

  • y
    Określa logiczną współrzędną y lewego górnego rogu prostokąt docelowy.

  • nWidth
    Określa szerokość, w jednostkach logicznych bitmapy docelowy prostokąt i źródła.

  • nHeight
    Określa wysokość, w jednostkach logicznych bitmapy docelowy prostokąt i źródła.

  • pSrcDC
    Identyfikuje kontekstu urządzenia, z którego ma zostać skopiowany bitmapy.Musi być zero, jeśli dwRop parametr określa operację rastrowych, która nie zawiera źródła.

  • xSrc
    Określa logiczną współrzędną x lewego górnego rogu źródłowa bitmapa.

  • ySrc
    Określa logiczną współrzędną y lewego górnego rogu źródłowa bitmapa.

  • maskBitmap
    Identyfikuje bitmap monochromatycznych maski połączone z mapy bitowej kolor w kontekście urządzenia źródłowego.

  • xMask
    Określa przesunięcie poziome pikseli bitmapy maski określonej przez maskBitmap parametru.

  • yMask
    Określa przesunięcie pionowe pikseli bitmapy maski określonej przez maskBitmap parametru.

  • dwRop
    Określa tła i pierwszego planu trójskładnikowych rastrowych operacji kody funkcja używa się do kombinacji dane źródłowe i docelowe.Kod operacji rastrowych tła jest przechowywany w bajcie wyraz wysokiej wartości; Kod operacji rastrowych pierwszego planu jest przechowywany w bajcie wyraz wysokiej wartości; niższe słowo tej wartości jest ignorowany i powinna być równa zero.Makro MAKEROP4 tworzy takich kombinacji pierwszego planu i tła rastrowych kodów operacji.Zobacz sekcję Uwagi do dyskusji pierwszego planu i tła w kontekście tej funkcji.Zobacz BitBlt Członkowskie funkcji listę kodów operacji rastrowych wspólnej.

Wartość zwracana

Niezerowa, jeśli funkcja jest pomyślne; 0 inaczej.

Uwagi

Wartość 1 w masce określonej przez maskBitmap wskazuje, że kod operacji rastrowych pierwszego planu określonej przez dwRop powinny być stosowane w tej lokalizacji.Wartość 0 w masce wskazuje, że kod operacji rastrowych tła określone przez dwRop powinny być stosowane w tej lokalizacji.Jeśli operacje rastrowych wymagają źródła, prostokąt maska musi obejmować prostokąta źródłowego.Jeśli nie, funkcja nie powiedzie się.Jeśli operacje rastrowych wymaga źródła, prostokąt maska musi obejmować prostokąt docelowy.Jeśli nie, funkcja nie powiedzie się.

Jeżeli obrót lub Ścinanie transformacji obowiązuje dla kontekstu urządzenia źródłowego po wywołaniu tej funkcji, wystąpi błąd.Jednakże dopuszcza się inne rodzaje przekształceń.

Jeżeli różnią się formaty kolor źródła, deseń i przeznaczenia bitmapy, ta funkcja konwertuje wzorzec lub format źródła lub zarówno pasować do formatu docelowego.Jeśli bitmapy maska nie jest bitmap monochromatycznych, wystąpi błąd.Po nagraniu rozszerzony metaplik wystąpi błąd (i funkcja zwraca 0) Jeśli kontekstu urządzenia źródła identyfikuje kontekstu urządzenia rozszerzonych metaplików.Nie wszystkie urządzenia obsługują MaskBlt.Aplikacja powinna wywołać GetDeviceCaps do ustalenia, czy urządzenie obsługuje tę funkcję.Jeżeli maska mapy bitowej jest podany, funkcja zachowuje się dokładnie tak jak BitBlt, przy użyciu kodu operacji rastrowych pierwszego planu.Piksel przesuwa się w mapie mapy bitowej maski do punktu (0,0) bitowej kontekstu urządzenia źródłowego.Jest to przydatne dla przypadków, w których bitmapy maska zawiera zestaw maski; aplikacji można łatwo zastosować jeden z nich do zadań kopiowanie maska-bloku z powierzchni dostosowując przesunięcia pikseli i rozmiary prostokąt wysyłane do MaskBlt.

Wymagania

Nagłówek: afxwin.h

Zobacz też

Informacje

Klasa CDC

Wykres hierarchii

CDC::BitBlt

CDC::GetDeviceCaps

CDC::PlgBlt

CDC::StretchBlt

MaskBlt