### Function

# Pango shape

#### Declaration [src]

    void
    pango_shape (
      const char* text,
      int length,
      const PangoAnalysis* analysis,
      PangoGlyphString* glyphs
    )

#### Description [src]

Convert the characters in `text` into glyphs.

Given a segment of text and the corresponding `PangoAnalysis` structure returned from `pango_itemize()`, convert the characters into glyphs. You may also pass in only a substring of the item from `pango_itemize()`.

It is recommended that you use `pango_shape_full()` instead, since that API allows for shaping interaction happening across text item boundaries.

Note that the extra attributes in the `analyis` that is returned from `pango_itemize()` have indices that are relative to the entire paragraph, so you need to subtract the item offset from their indices before calling `pango_shape()`.

#### Parameters

`text`

  Type: `const char*`

  The text to process.

  The data is owned by the caller of the function.
  The value is a NUL terminated UTF-8 string.

`length`

  Type: `int`

  The length (in bytes) of `text`.

`analysis`

  Type: `PangoAnalysis`

  `PangoAnalysis` structure from `pango_itemize()`

  The data is owned by the caller of the function.

`glyphs`

  Type: `PangoGlyphString`

  Glyph string in which to store results.

  The data is owned by the caller of the function.