# Typography Helper

The Typography Helper file contains functions that help your format text in semantically relevant ways.

## Loading this Helper

This helper is loaded using the following code:

    $this->load->helper('typography');

## Available Functions

The following functions are available:

auto_typography($str[, $reduce_linebreaks = FALSE])
  Parameters:

    - $str (`string`) – Input string

    - $reduce_linebreaks (`bool`) – Whether to reduce multiple instances of double newlines to two

  Returns:

    HTML-formatted typography-safe string

  Return type:

    `string`

  Formats text so that it is semantically and typographically correct HTML.

  This function is an alias for `CI_Typography::auto_typography()`. For more info, please see the Typography Library documentation.

  Usage example:

      $string = auto_typography($string);

  Note

  Typographic formatting can be processor intensive, particularly if you have a lot of content being formatted. If you choose to use this function you may want to consider caching your pages.

nl2br_except_pre($str)
  Parameters:

    - $str (`string`) – Input string

  Returns:

    String with HTML-formatted line breaks

  Return type:

    `string`

  Converts newlines to <br /> tags unless they appear within <pre> tags. This function is identical to the native PHP `nl2br()` function, except that it ignores <pre> tags.

  Usage example:

      $string = nl2br_except_pre($string);

entity_decode($str, $charset = NULL)
  Parameters:

    - $str (`string`) – Input string

    - $charset (`string`) – Character set

  Returns:

    String with decoded HTML entities

  Return type:

    `string`

  This function is an alias for `CI_Security::entity_decode()`. Fore more info, please see the Security Library documentation.