我在我的 laravel 项目中使用印地语字体使用 dompdf 生成 pdf。 我已经下载了 Noto Sans Devanagari 字体并放在 myproject\storage onts 文件夹下。
我在 blade html 文件中使用过这样的。
<style>
* { font-family: Noto Sans, sans-serif; }
</style>
我在数据库表列结构中以及在 config/database.php 中将排序规则和字符集设置为 utf8_unicode_ci。
'mysql' => [
'driver' => 'mysql',
'url' => env('DATABASE_URL'),
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'test'),
'username' => env('DB_USERNAME', 'test'),
'password' => env('DB_PASSWORD', ''),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'prefix_indexes' => true,
'strict' => false,
'engine' => null,
'options' => extension_loaded('pdo_mysql') ? array_filter([
PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
]) : [],
],
现在当我用印地语生成 pdf 时,它显示完美,现在我在相同的字体文件夹中添加了 Noto sans gujarati 并像这样修改我的视图文件。
<style>
* {
font-family: 'Noto Sans Devanagari', sans-serif;
font-family: 'Noto Sans Gujarati', sans-serif;
}
</style>
但是古吉拉特语字体显示不正确,要么显示框要么 ?? 我也试过像这样包括谷歌字体库。
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+Devanagari:wght@300&family=Noto+Sans+Gujarati:wght@300&display=swap" rel="stylesheet">
谁能建议我如何在 pdf 中显示古吉拉特语和印地语字体?
在项目根目录下创建一个新的字体文件夹。 如何在 Dompdf 中设置不同的字体系列
将要在 pdf 中使用的字体复制到字体文件夹中。我已将 OpenSans-Regular.ttf 和 OpenSans-Bold.ttf 复制到文件夹中。