pdfmake在服务器端为CJK,阿拉伯语和其他外语安装自定义字体

问题描述 投票:0回答:1

我正在使用PDFMake在NodeJS 12的服务器端生成PDF。

PDF正在渲染包含英语和外国语言字符的文本。 PDF正常运行,但是,没有任何外文字符可正确呈现。我做了一些研究,看来我需要安装可以处理外语字符的自定义字体。

我按照此处可接受的答案在服务器端安装了Google NotoSans字体。

How to create a PDF on Node.js using PDFMake and vfs_fonts?

  fonts = {
    NotoSans: {
      normal: path.join(__dirname, '..', 'public', 'fonts/NotoSans-unhinted/NotoSans-Black.ttf'),
      bold: path.join(__dirname, '..', 'public', 'fonts/NotoSans-unhinted/NotoSans-Bold.ttf'),
      italics: path.join(__dirname, '..', 'public','fonts/NotoSans-unhinted/NotoSans-BlackItalic.ttf'),
      bolditalics: path.join(__dirname, '..', 'public','fonts/NotoSans-unhinted/NotoSans-BoldItalic.ttf'),
    },
  }

字体已正确安装(所有英文字符均以该字体正确显示)。但是,中文和其他外语字符不起作用(它们只是显示为空矩形)。

我可以采取哪些其他故障排除步骤来解决此问题?谢谢!

更新:我安装的字体实际上并不支持我需要的所有语言,是否有支持该字体的字体?还是我需要找到一种将多种字体组合成一种字体的方法?

node.js arabic cjk pdfmake
1个回答
1
投票

您必须检查字体的语言支持!

© www.soinside.com 2019 - 2024. All rights reserved.