[ Содержание ] | [ Перечень функций ] |
XImage *XGetImage(display, d, x, y, width, height, plane_mask, format) Display *display; Drawable d; int x, y; unsigned int width, height; unsigned long plane_mask; int format;
АРГУМЕНТЫ
Эта функция создаёт новый графический образ с размерами width, height и форматом format. После чего копирует содержимое прямоугольной области такого же размера из объекта вывода графики d. Левый верхний угол области указывается в аргументах x и y. В случае успешной операции функцией возвращается указатель на изображение, иначе будет получено значение NULL.
Если указывается формат изображения равный XYPixmap, то получаемое изображение будет содержать только те плоскости, которые указаны в plane_mask (соответствующие разряды в маске битовых плоскостей устанавливаются в единицу). Если формат изображения указан равным ZPixmap, то XGetImage будет обнулять в данных изображения разряды, cоответствующие не перечисленным в маске плоскостям. Для работы сразу со всеми плоскостями можно указать значение AllPlanes.
Глубина цветности изображения получается равной глубине цветности объекта вывода графики d, за исключением тех случаев, когда запрос делается только на несколько плоскостей для формата XYPixmap. В таких случаях глубина цветности изображения будет равна количеству запрошенных плоскостей.
Если d является графическим образом Pixmap, то запрашиваемая прямоугольная область должна полностью находиться внутри d, иначе появится ошибка BadMatch. Для случаев, когда d является окном InputOutput, прямоугольная область не должна выходить за бордюр окна.
Если d является окном и оно закрыто другими окнами, но содержимое его закрытых областей сохранено в backing_store, то содержимое окна будет восстановлено из backing_store, иначе результат будет неизвестно каким. Если окно закрыто дочерними окнами, то в изображение попадает содержимое этих окон. Причем, если глубина цветности окна d и дочерних окон разная, то результат для закрытых частей окна также будет неизвестен.
Изображение графического курсора не попадает в получаемое изображение, если d является окном и курсор находится над ним.
Функция XGetImage может генерировать следующие ошибки:
См. также: XCreateImage, XInitImagePixel, XGetPixel, XPutPixel, XSubImage, XAddPixel, XDestroyImage, XPutImage, XGetSubImage.
[ Содержание ] | [ Перечень функций ] |