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

# ScriptGetLogicalWidths(3w)

## NAME

**ScriptGetLogicalWidths** (USP10.@)

## SYNOPSIS

HRESULT ScriptGetLogicalWidths\
  (\
   const SCRIPT\_ANALYSIS\* *sa*,\
   int                    *nbchars*,\
   int                    *nbglyphs*,\
   const int\*             *glyph\_width*,\
   const WORD\*            *log\_clust*,\
   const SCRIPT\_VISATTR\*  *sva*,\
   int\*                   *widths*\
  )

## DESCRIPTION

Convert advance *widths* to logical *widths*.

## PARAMS

*sa* **\[In\]**  Script analysis.

*nbchars* **\[In\]**  Number of characters.

*nbglyphs* **\[In\]**  Number of glyphs.

*glyph\_width* **\[In\]**  Array of glyph *widths*.

*log\_clust* **\[In\]**  Array of logical clusters.

*sva* **\[In\]**  Visual attributes.

*widths* **\[Out\]**  Array of logical *widths*.

## RETURNS

**Success:** **S\_OK**

**Failure:** a non-zero **HRESULT**.

## IMPLEMENTATION

Declared in **"usp10.h"**.

Implemented in **"dlls/usp10/usp10.c"**.

Debug channel **"uniscribe"**.
