我有一个Lambda函数,可以使用PhantomJS生成PDF。英文版很有魅力,但问题是其他语言(日语、印地语、乌尔都语等(
我尝试了提供的将字体和字体配置与lambda函数绑定的解决方案,但没有成功。
有人能告诉我哪里出了问题吗?
CSS:
@font-face {
font-family: 'Noto Serif Devanagari';
src: url('./fonts/NotoSerifDevanagari-Regular.ttf') format('truetype');
font-weight: normal;
font-style: normal;
}
FontConfig:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<dir>/var/task/fonts</dir>
<cachedir>/tmp/fonts-cache/</cachedir>
<config></config>
</fontconfig>
谢谢。
终于找到了我的问题的解决方案。支持字体的方法与我上面所做的类似,只是有一个变化:
@font-face {
font-family: 'Noto Serif Devanagari';
font-weight: normal;
font-style: normal;
}
src:url('./fonts/NotoSerifDevanagari-Regular.ttf'(格式('truetype'(删除了src:url((行,因为这是在将文本转换为光栅图像,并且PDF大小因此而增加。
此外,只需在中添加所需的字体即可/font文件夹,并在nodejs代码中使用以下行:
process.env.FONTCONFIG_PATH='/var/task/fonts';
或者更好地将FONTCONFIG_PATH添加为lambda函数中的环境变量,其值为/var/task/fonts
由于上述解决方案正在发挥作用,因此现在可以解决此问题。