autoFontGroupSize
(mPDF ≥ 2.3 & < 6.0)
autoFontGroupSize – Specify the chunk size of text to group when auto-detecting languages using SetAutoFont()
Value
void autoFontGroupSize
Specify the chunk size of text to group when auto-detecting languages using SetAutoFont().
Note: This variable is removed from mPDF v 6.0
Bigger chunks (3
) allows reversal of whole sentences of RTL text, not just letters in individual words; the disadvantage
is that it may include bits of other languages either side, forcing them in the font used for the “foreign” language.
Smaller chunks (1
) - analysing word by word - takes more processing time, and cannot reverse RTL sentences. In text with
CJK language, it makes it harder for mPDF to correctly identify between e.g. Korean and Chinese which share some
characters. Thus words may be identified alternately as Korean or Chinese.
Values
$autoFontGroupSize
Values
1
: individual words are analysed2
: words are analysed to see if they are distinctive of a particular language, and then surrounding text that is compatible is grouped together with these words3
: as big chunks as possible are grouped, including ASCII characters and punctuation
Default: 2
Changelog
Version | Description |
---|---|
2.3 | Variable was added. |
Examples
Example #1
<?php
// Require composer autoload
require_once __DIR__ . '/vendor/autoload.php';
$mpdf = new \Mpdf\Mpdf(['mode' => 'utf-8']);
$html = "
<style>
p {
font-family: FreeSerif;
}
</style>
Most of this text is in English, but has occasional words in Chinese:来自商务
or Vietnamese: Một khảo sát mới cho biết, or maybe even Arabic: الابيض
الابيض "بشدة" تفجير
其截至 WHO 年底 2005 笔
";
$mpdf->SetAutoFont();
$mpdf->autoFontGroupSize = 1;
$mpdf->WriteHTML($html);
$mpdf->autoFontGroupSize = 2;
$mpdf->WriteHTML($html);
$mpdf->autoFontGroupSize = 3;
$mpdf->WriteHTML($html);
$html2 = "
In this example, the word boundaries from different languages are already defined
by marking with <span> tags
Most of this text is in English, but has occasional words in
Chinese:<span>来自商务</span> or Vietnamese: <span>Một khảo sát mới cho biết</span>,
or maybe even Arabic: <span>الابيض</span>
";
$mpdf->WriteHTML($html2);
$mpdf->Output();
See Also
- useLang - Specify whether to recognise and support the HTML attribute lang
- SetAutoFont() - Use AutoFont to auto-detect text language in HTML input
- disableMultilingualJustify (mPDF < 6.0) - Specify whether to disable text justification in multilingual documents
- lang - Information on mPDF support for the HTML attribute lang