我正在使用Node.js 应用程序的100包来生成PDF,但当我try 生成阿拉伯文本时遇到了一个问题.它总是颠倒阿拉伯文本中的数字.
如果我想写:UNICODE 1992(1992年),它总是更改为(ساڵی),即使当我使用UNICODE自定义字体时,这个问题仍然存在.
这是一个图像中的示例:
以下是我的代码:
function generatePDFForRuleAndRegulation(data) {
const fileNamePDF = `${data.name}.pdf`;
const doc = new PDFDocument();
// Pipe the PDF document to a writable stream (file in this case)
const stream = fs.createWriteStream(fileNamePDF);
doc.pipe(stream);
doc
.font(`${path.join(__dirname, "../../assets/fonts/NRT-Reg.ttf")}`)
.fontSize(12)
.text(`${data.name}`, {
align: "center",
});
doc.moveDown(); // Move cursor down
doc
.font(`${path.join(__dirname, "../../assets/fonts/Rabar_021.ttf")}`)
.fontSize(10)
.text(data.text, { align: "right", features: ["rtla"] });
// Finalize the PDF document
doc.end();
// Inform when the file has been created
stream.on("finish", () => {
console.log(`PDF created: ${fileNamePDF}`);
});
}
您有什么建议的解决方案或变通办法吗?或者,您是否知道有其他程序包可以生成也支持阿拉伯字体的PDF?