---
name: "TabbedTextOutW"
section: "3w"
platform: "linux"
package: "libwine-dev"
version: "1.4.1-4"
release: "Debian 7 (Wheezy)"
platforms: ["linux"]
url: "https://new.carta.tech/TabbedTextOutW"
---

# TabbedTextOutW(3w)

## NAME

**TabbedTextOutW** (USER32.@)

## SYNOPSIS

LONG TabbedTextOutW\
  (\
   HDC        *hdc*,\
   INT        *x*,\
   INT        *y*,\
   LPCWSTR    *str*,\
   INT        *count*,\
   INT        *cTabStops*,\
   const INT\* *lpTabPos*,\
   INT        *nTabOrg*\
  )

## DESCRIPTION

Draws tabbed text aligned using the specified tab stops.

## PARAMS

*hdc* **\[In\]**  Handle to device context to draw to.

*x* **\[In\]**  X co-ordinate to start drawing the text at in logical units.

*y* **\[In\]**  Y co-ordinate to start drawing the text at in logical units.

*str* **\[In\]**  Pointer to the characters to draw.

*count* **\[In\]**  Number of WCHARs pointed to by *str*.

*cTabStops* **\[In\]**  Number of tab stops pointed to by *lpTabPos*.

*lpTabPos* **\[In\]**  Tab stops in logical units. Should be sorted in ascending order.

*nTabOrg* **\[In\]**  Starting position to expand tabs from in logical units.

## RETURNS

The dimensions of the string drawn. The height is in the high-order word and the width is in the low-order word.

## NOTES

The tabs stops can be negative, in which case the text is right aligned to that tab stop and, despite what **MSDN** says, this is supported on Windows **XP** SP2.

## BUGS

**MSDN** says that the **TA\_UPDATECP** from GetTextAlign causes this function to ignore the *x* and *y* co-ordinates, but this is unimplemented at the moment.

## IMPLEMENTATION

Declared in **"winuser.h"**.

Implemented in **"dlls/user32/text.c"**.

Debug channel **"text"**.
