PDF 中的俄语符号 (pdfkit)

问题描述

按照示例https://pspdfkit.com/blog/2019/generate-invoices-pdfkit-node/

创建一个pdf文件

问题是俄文字显示为:“Aô@Cä2CT@C¤0”,但应该是“Проверка”。如何将编码设置为 UTF-8?

function createInvoice(invoice,path) {
  let doc = new PDFDocument({ margin: 50 });

  generateHeader(doc);

  doc.end();
  doc.pipe(fs.createWriteStream(path));
}

function generateHeader(doc) {
  doc
    .image("logo.png",50,45,{ width: 50 })
    .fillColor("#444444")
    .fontSize(20)
    .text("Проверка",110,57)
    .fontSize(10)
    .text("Проверка",100,65,{ align: "right" })
    .text("Проверка",80,{ align: "right" })
    .moveDown();
}

解决方法

我下载了字体文件并将其包含在内:

.font(`${__dirname}/arial.ttf`)

谢谢!

,

我认为您必须使用支持俄语字符的字体

看看这个线程 https://github.com/foliojs/pdfkit/issues/262