Pango.shape_item
Description: Reference for Pango.shape_item

### Function

# Pangoshape_item

#### Declaration [src]

    void
    pango_shape_item (
      PangoItem* item,
      const char* paragraph_text,
      int paragraph_length,
      PangoLogAttr* log_attrs,
      PangoGlyphString* glyphs,
      PangoShapeFlags flags
    )

#### Description [src]

Convert the characters in `item` into glyphs.

This is similar to `pango_shape_with_flags()`, except it takes a `PangoItem` instead of separate `item_text` and `analysis` arguments. It also takes `log_attrs`, which may be used in implementing text transforms.

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 do not pass the full paragraph text as `paragraph_text`, you need to subtract the item offset from their indices before calling `pango_shape_with_flags()`.

Available since: | 1.50

#### Parameters

`item` | `PangoItem`
| `PangoItem` to shape.
| The data is owned by the caller of the function.
`paragraph_text` | `const char*`
| Text of the paragraph (see details).
| The argument can be `NULL`.
| The data is owned by the caller of the function.
| The value is a NUL terminated UTF-8 string.
`paragraph_length` | `int`
| The length (in bytes) of `paragraph_text`. -1 means nul-terminated text.
`log_attrs` | `PangoLogAttr`
| Array of `PangoLogAttr` for `item`.
| The argument can be `NULL`.
| The data is owned by the caller of the function.
`glyphs` | `PangoGlyphString`
| Glyph string in which to store results.
| The data is owned by the caller of the function.
`flags` | `PangoShapeFlags`
| Flags influencing the shaping process.