---
name: "ImageByteOrder"
section: "3"
platform: "linux"
package: "libx11"
version: "1.8.14-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/ImageByteOrder"
---

# ImageByteOrder(3)

image format functions and macros

## NAME

ImageByteOrder, BitmapBitOrder, BitmapPad, BitmapUnit, DisplayHeight, DisplayHeightMM, DisplayWidth, DisplayWidthMM, XListPixmapFormats, XPixmapFormatValues - image format functions and macros

## SYNTAX

XPixmapFormatValues \*XListPixmapFormats(Display \**display*, int \**count\_return*);

int ImageByteOrder(Display \**display*);

int BitmapBitOrder(Display \**display*);

int BitmapPad(Display \**display*);

int BitmapUnit(Display \**display*);

int DisplayHeight(Display \**display*, int *screen\_number*);

int DisplayHeightMM(Display \**display*, int *screen\_number*);

int DisplayWidth(Display \**display*, int *screen\_number*);

int DisplayWidthMM(Display \**display*, int *screen\_number*);

## ARGUMENTS

- *display*

  Specifies the connection to the X server.

- *count\_return*

  Returns the number of pixmap formats that are supported by the display.

- *screen\_number*

  Specifies the appropriate screen number on the host server.

## DESCRIPTION

The **XListPixmapFormats** function returns an array of **XPixmapFormatValues** structures that describe the types of Z format images supported by the specified display. If insufficient memory is available, **XListPixmapFormats** returns NULL. To free the allocated storage for the **XPixmapFormatValues** structures, use **XFree**.

The **ImageByteOrder** macro specifies the required byte order for images for each scanline unit in XY format (bitmap) or for each pixel value in Z format.

The **BitmapBitOrder** macro returns **LSBFirst** or **MSBFirst** to indicate whether the leftmost bit in the bitmap as displayed on the screen is the least or most significant bit in the unit.

The **BitmapPad** macro returns the number of bits that each scanline must be padded.

The **BitmapUnit** macro returns the size of a bitmap's scanline unit in bits.

The **DisplayHeight** macro returns the height of the specified screen in pixels.

The **DisplayHeightMM** macro returns the height of the specified screen in millimeters.

The **DisplayWidth** macro returns the width of the screen in pixels.

The **DisplayWidthMM** macro returns the width of the specified screen in millimeters.

## STRUCTURES

The **XPixmapFormatValues** structure provides an interface to the pixmap format information that is returned at the time of a connection setup. It contains:

```
typedef struct {
        int depth;
        int bits_per_pixel;
        int scanline_pad;
} XPixmapFormatValues;
```

## SEE ALSO

[**AllPlanes**(3)](/AllPlanes/3.md), [**BlackPixelOfScreen**(3)](/BlackPixelOfScreen/3.md), [**IsCursorKey**(3)](/IsCursorKey/3.md), [**XFree**(3)](/XFree/3.md)\
 *Xlib - C Language X Interface*
