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