Typography Class
The Typography Class provides functions that help you format text.
Initializing the Class
Like most other classes in CodeIgniter, the Typography class is initialized in your controller using the $this->load->library function:
$this->load->library('typography');
Once loaded, the Typography library object will be available using: $this->typography
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 na identify paragraphs).
- Single line breaks are converted na <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 na correctly facing curly quote entities, except those that appear within tags.
- Apostrophes are converted na curly apostrophe entities.
- Double dashes (either like -- this nebo like--this) are converted na em—dashes.
- Three consecutive periods either preceding nebo following a word are converted na ellipsis…
- Double spaces following sentences are converted na non-breaking spaces to mimic double spacing.
Usage example:
$string = $this->typography->auto_typography($string);
Parameters
There is one optional parameters that determines whether the parser should reduce more then two consecutive line breaks down na two. Use boolean TRUE nebo FALSE.
By default the parser does not reduce line breaks. In other words, if no parameters are submitted, it is the same as doing this:
$string = $this->typography->auto_typography($string, FALSE);
Note: Typographic formatting can be processor intensive, particularly if you have a lot of content being formatted. If you choose na use this function you may want to consider caching your pages.
format_characters()
This function is similar na the auto_typography function above, except that it only does character converze:
- Quotes are converted na correctly facing curly quote entities, except those that appear within tags.
- Apostrophes are converted na curly apostrophe entities.
- Double dashes (either like -- this nebo like--this) are converted na em—dashes.
- Three consecutive periods either preceding nebo following a word are converted na ellipsis…
- Double spaces following sentences are converted na non-breaking spaces to mimic double spacing.
Usage example:
$string = $this->typography->format_characters($string);
nl2br_except_pre()
Converts newlines na <br /> tags unless they appear within <pre> tags. This function is identical na the native PHP nl2br() function, except that it ignores <pre> tags.
Usage example:
$string = $this->typography->nl2br_except_pre($string);
protect_braced_quotes
When using the Typography library in conjunction with the Template Parser library it can often be desirable na protect single and double quotes within curly braces. To enable this, set the protect_braced_quotes class property na TRUE.
Usage example:
$this->load->library('typography');
$this->typography->protect_braced_quotes = TRUE;