---
name: "ggiPutHLine"
section: "3"
platform: "linux"
package: "libggi2-dev"
version: "1:2.2.2-5"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/ggiDrawHLine"
---

# ggiPutHLine(3)

Draw, put, and get a horizontal line from a visual

Part of [ggiDrawHLine(3)](/ggiDrawHLine/3.md).

## NAME

**ggiDrawHLine**, **ggiPutHLine**, **ggiGetHLine** - Draw, put, and get a horizontal line from a visual

## SYNOPSIS

```
#include <ggi/ggi.h>
int ggiDrawHLine(ggi_visual_t vis, int x, int y, int w);
int ggiPutHLine(ggi_visual_t vis, int x, int y, int w, const void *buf);
int ggiGetHLine(ggi_visual_t vis, int x, int y, int w, void *buf);
```

## DESCRIPTION

Draw, put, or get a horizontal line from (*x*, *y*), extending *w* pixels in the positive x direction (normally right).  The height is one pixel.

The *buf* parameter in Get/Put functions points to a buffer from which the pixels will be read, or to which they will be written (it must be correctly allocated), respectively. See `ggiPackColors(3)` and `ggiUnmapPixel(3)` functions for details on how to deal with pixels.

## RETURN VALUE

All three functions return **0** to indicate success.

## SEE ALSO

`ggiDrawBox(3)`, `ggiDrawLine(3)`, `ggiDrawVLine(3)`, `ggiMapColor(3)`, `ggi_pixelformat(3)`
