# CodeIgniter User Guide Version 1.7

Search User Guide

# 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');`

The following functions are available:

## auto_typography()

Formats text so that it is semantically and typographically correct HTML. Takes a string as input and returns it with the following formatting:

- Surrounds paragraphs within <p></p> (looks for double line breaks to identify paragraphs).
- Single line breaks are converted to <br />, except those that appear within <pre> tags.
- Block level elements, like <div> tags, are not wrapped within paragraphs, but their contained text is if it contains paragraphs.
- Quotes are converted to correctly facing curly quote entities, except those that appear within tags.
- Apostrophes are converted to curly apostrophy entities.
- Double dashes (either like -- this or like--this) are converted to em—dashes.
- Three consecutive periods either preceding or following a word are converted to ellipsis…
- Double spaces following sentences are converted to non-breaking spaces to mimic double spacing.

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()

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);`