A PHP library for improving your web typography:
- Hyphenation — over 50 languages supported
- Space control, including:
- widow protection
- gluing values to units
- forced internal wrapping of long URLs & email addresses
- Intelligent character replacement, including smart handling of:
- quote marks (‘single’, “double”)
- dashes ( – )
- ellipses (…)
- trademarks, copyright & service marks (™ ©)
- math symbols (5×5×5=53)
- fractions (1⁄16)
- ordinal suffixes (1st, 2nd)
- CSS hooks for styling:
- uppercase words,
- initial quotes & guillemets.
- PHP 5.6.0 or above
The best way to use this package is through Composer:
$ composer require mundschenk-at/php-typography $ vendor/bin/update-iana.php
- Create a
Settingsobject and enable the fixes you want.
- Create a
PHP_Typographyinstance and use it to process HTML fragments (or whole documents) using your defined settings.
$settings = new \PHP_Typography\Settings(); $settings->set_hyphenation( true ); $settings->set_hyphenation_language( 'en-US' ); $typo = new \PHP_Typography\PHP_Typography(); $hyphenated_html = $typo->process( $html_snippet, $settings );
Please have a look at ROADMAP file for upcoming releases.
PHP-Typography is licensed under the GNU General Public License 2 or later - see the LICENSE file for details.