Table of Contents


XCreatePixmap, XFreePixmap - create or destroy pixmaps


Pixmap XCreatePixmap(Display *display, Drawable d,
unsigned int width, unsigned int height, unsigned int depth);
int XFreePixmap(Display *display, Pixmap pixmap);


Specifies which screen the pixmap is created on.

Specifies the depth of the pixmap.

Specifies the connection to the X server.

Specifies the pixmap.

Specify the width and height, which define the dimensions of the pixmap.


The XCreatePixmap function creates a pixmap of the width, height, and depth you specified and returns a pixmap ID that identifies it. It is valid to pass an InputOnly window to the drawable argument. The width and height arguments must be nonzero, or a BadValue error results. The depth argument must be one of the depths supported by the screen of the specified drawable, or a BadValue error results.

The server uses the specified drawable to determine on which screen to create the pixmap. The pixmap can be used only on this screen and only with other drawables of the same depth (see XCopyPlane for an exception to this rule). The initial contents of the pixmap are undefined.

XCreatePixmap can generate BadAlloc, BadDrawable, and BadValue errors.

The XFreePixmap function first deletes the association between the pixmap ID and the pixmap. Then, the X server frees the pixmap storage when there are no references to it. The pixmap should never be referenced again.

XFreePixmap can generate a BadPixmap error.


The server failed to allocate the requested resource or server memory.
A value for a Drawable argument does not name a defined Window or Pixmap.
A value for a Pixmap argument does not name a defined Pixmap.
Some numeric value falls outside the range of values accepted by the request. Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error.

See Also

Xlib - C Language X Interface

Table of Contents