Поделиться через


Функция TransparentBlt (wingdi.h)

Функция TransparentBlt выполняет битовую передачу цветовых данных, соответствующих прямоугольнику пикселей, из указанного контекста исходного устройства в контекст целевого устройства.

Синтаксис

BOOL TransparentBlt(
  [in] HDC  hdcDest,
  [in] int  xoriginDest,
  [in] int  yoriginDest,
  [in] int  wDest,
  [in] int  hDest,
  [in] HDC  hdcSrc,
  [in] int  xoriginSrc,
  [in] int  yoriginSrc,
  [in] int  wSrc,
  [in] int  hSrc,
  [in] UINT crTransparent
);

Параметры

[in] hdcDest

Дескриптор контекста целевого устройства.

[in] xoriginDest

Координата X в логических единицах левого верхнего угла целевого прямоугольника.

[in] yoriginDest

Координата Y в логических единицах левого верхнего угла целевого прямоугольника.

[in] wDest

Ширина (в логических единицах) целевого прямоугольника.

[in] hDest

Высота (в логических единицах) целевого прямоугольника.

[in] hdcSrc

Дескриптор контекста исходного устройства.

[in] xoriginSrc

Координата X исходного прямоугольника в логических единицах.

[in] yoriginSrc

Координата Y исходного прямоугольника в логических единицах.

[in] wSrc

Ширина исходного прямоугольника в логических единицах.

[in] hSrc

Высота исходного прямоугольника в логических единицах.

[in] crTransparent

Цвет RGB в исходном растровом рисунке для обработки как прозрачный.

Возвращаемое значение

Если функция выполняется успешно, возвращается значение TRUE.

Если функция завершается сбоем, возвращается значение FALSE.

Комментарии

Функция TransparentBlt работает с совместимыми растровыми изображениями (DDB).

Функция TransparentBlt поддерживает все форматы исходных растровых изображений. Однако для растровых изображений 32 бит/с он просто копирует альфа-значение. Используйте AlphaBlend , чтобы указать 32 битовые изображения на пиксель с прозрачностью.

Если исходный и целевой прямоугольники имеют разный размер, то растровое изображение источника растягивается в соответствии с прямоугольником назначения. При использовании функции SetStretchBltMode режимы iStretchMode blackONWHITE и WHITEONBLACK преобразуются в COLORONCOLOR для функции TransparentBlt .

Контекст целевого устройства указывает тип преобразования для координат назначения. Контекст исходного устройства указывает тип преобразования для исходных координат.

TransparentBlt не зеркало растровое изображение, если ширина или высота источника или назначения являются отрицательными.

При использовании в системе с несколькими мониторами hdcSrc и hdcDest должны ссылаться на одно и то же устройство, иначе функция завершится ошибкой. Чтобы передать данные между контроллерами домена для разных устройств, преобразуйте растровое изображение памяти в DIB, вызвав Метод GetDIBits. Чтобы отобразить DIB на втором устройстве, вызовите SetDIBits или StretchDIBits.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header wingdi.h (включая Windows.h)
Библиотека Msimg32.lib
DLL Msimg32.dll

См. также раздел

AlphaBlend

Функции точечных рисунков

Общие сведения о точечных изображениях

Getdibits

SetDIBits

SetStretchBltMode

StretchDIBits