Home >Backend Development >PHP Problem >What to do if the php mpdf file name is garbled

What to do if the php mpdf file name is garbled

藏色散人
藏色散人Original
2021-06-10 10:25:433043browse

php The solution to the garbled mpdf file name: 1. Set the "autoLangToFont" value to "true"; 2. Set the "autoScriptToLang" value to "true" as well.

What to do if the php mpdf file name is garbled

The operating environment of this article: windows7 system, PHP7.1 version, DELL G3 computer

php What should I do if the mpdf file name is garbled?

php-mpdf expansion package Chinese garbled problem

mpdf is an expansion package that can convert html web pages into pdf files. When I first started using it, I found that the Chinese characters were garbled. . I searched online for a long time, but many methods didn't work.

Finally, I found the cause of the problem in his document.

If you want to output Chinese, two parameters are crucial! ! !

  • autoLangToFont This value must be set to true
  • autoScriptToLang This value must also be set to true

As long as the above two settings is true, then your Chinese can be output normally. Believe me, if you can't output normally, come and hit me.

Look at the description above the mpdf document.

What to do if the php mpdf file name is garbled
What to do if the php mpdf file name is garbled

You can see that the default value is false, so we need to change it to true when using it.

Setting these two values ​​​​is also very simple.

use Mpdf\Mpdf;function test() {
    $pdf = new Mpdf;
    $pdf->autoLangToFont = true;
    $pdf->autoScriptToLang = true;

    $pdf->writeHTML(&#39;<h1>123</h1>&#39;);

	return $pdf->output(&#39;./test.pdf&#39;, &#39;D&#39;);}

In fact, there was an error in the mpdf document at the beginning. The default value written in his document was true instead of the current false. However, you can see from his source code that his default value is actually false.

[Recommended learning: PHP video tutorial]

Source code location: vendor/mpdf/mpdf/src/Config/ConfigVariables.php.
This file contains the default values ​​​​of many variables. If you search in it, you can see that these two values ​​​​are false.

// AUTOMATIC FONT SELECTION
// Based on script and/or language
// mPDF 6.0 (similar to previously using function SetAutoFont() )
&#39;autoScriptToLang&#39; => false,

// mPDF 6.0 (similar to old useLang)
&#39;autoLangToFont&#39; => false,

I raised an issue on their github, and they changed the document.

What to do if the php mpdf file name is garbled

Finally, attach the mpdf official document:

http://mpdf.github.io/fonts-languages/fonts-in-mpdf -7-x.html

The issue I raised with them:

https://github.com/mpdf/mpdf.github.io/issues/141

The above is the detailed content of What to do if the php mpdf file name is garbled. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn