linebreaks4imagettftext is a function to automatically insert line breaks into your text while using PHP’s imagettftext function.
Install using Composer
Either run this command:
composer require andrewgjohnson/linebreaks4imagettftext
or add this to the
require section of your composer.json file:
// You can use \andrewgjohnson\linebreaks4imagettftext() to add line breaks ("\n") to long strings to help format text when using imagettftext() $string = 'It was the best of times, it was the worst of times, it was the age of wisdom, it was the age of foolishness, it was the epoch of belief, it was the epoch of incredulity, it was the season of Light, it was the season of Darkness, it was the spring of hope, it was the winter of despair, we had everything before us, we had nothing before us, we were all going direct to Heaven, we were all going direct the other way--in short, the period was so far like the present period, that some of its noisiest authorities insisted on its being received, for good or for evil, in the superlative degree of comparison only.'; $stringWithLineBreaks = \andrewgjohnson\linebreaks4imagettftext(20, 0, $font, $string, 200); echo $stringWithLineBreaks; //"It was the best of times, it was the\nworst of times, it was the age of\nwisdom, it was the age of\nfoolishness, it was the epoch of\nbelief, it was the epoch of\nincredulity, it was the season of\nLight, it was the season of\nDarkness, it was the spring of\nhope, it was the winter of despair,\nwe had everything before us, we\nhad nothing before us, we were all\ngoing direct to Heaven, we were all\ngoing direct the other way--in short,\nthe period was so far like the\npresent period, that some of its\nnoisiest authorities insisted on its\nbeing received, for good or for evil,\nin the superlative degree of\ncomparison only." // This will work but there will be no line breaks so your text will likely overflow horizontally imagettftext($im, 20, 0, 0, 0, $color, $font, $string); // This will work and you will not have to worry about text overflowing imagettftext($im, 20, 0, 0, 0, $color, $font, $stringWithLineBreaks);
Please post any questions on stackoverflow.com if you need help.
Please read our contributing guidelines if you want to contribute.
This project was started by Andrew G. Johnson (@andrewgjohnson).
Full list of contributors:
You can find all notable changes in the changelog.