### Function

# Clutter Color from_string

#### Declaration [src]

    gboolean
    clutter_color_from_string (
      ClutterColor* color,
      const gchar* str
    )

#### Description [src]

Parses a string definition of a color, filling the `ClutterColor`.red, `ClutterColor`.green, `ClutterColor`.blue and `ClutterColor`.alpha fields of `color`.

The `color` is not allocated.

The format of `str` can be either one of:

- a standard name (as taken from the X11 rgb.txt file)
- an hexadecimal value in the form: `#rgb`, `#rrggbb`, `#rgba`, or `#rrggbbaa`
- a RGB color in the form: `rgb(r, g, b)`
- a RGB color in the form: `rgba(r, g, b, a)`
- a HSL color in the form: `hsl(h, s, l)` -a HSL color in the form: `hsla(h, s, l, a)`

where ‘r’, ‘g’, ‘b’ and ‘a’ are (respectively) the red, green, blue color intensities and the opacity. The ‘h’, ‘s’ and ‘l’ are (respectively) the hue, saturation and luminance values.

In the `rgb()` and `rgba()` formats, the ‘r’, ‘g’, and ‘b’ values are either integers between 0 and 255, or percentage values in the range between 0% and 100%; the percentages require the ‘%’ character. The ‘a’ value, if specified, can only be a floating point value between 0.0 and 1.0.

In the `hls()` and `hlsa()` formats, the ‘h’ value (hue) is an angle between 0 and 360.0 degrees; the ‘l’ and ‘s’ values (luminance and saturation) are percentage values in the range between 0% and 100%. The ‘a’ value, if specified, can only be a floating point value between 0.0 and 1.0.

Whitespace inside the definitions is ignored; no leading whitespace is allowed.

If the alpha component is not specified then it is assumed to be set to be fully opaque.

#### Parameters

`color`

  Type: `ClutterColor`

  Return location for a `ClutterColor`.

  The argument will be set by the function.
  The returned data is owned by the function.

`str`

  Type: `const gchar*`

  A string specifying a color.

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

#### Return value

Type: `gboolean`

`TRUE` if parsing succeeded, and `FALSE` otherwise.