使用 @react-pdf/renderer 生成波斯语 PDF

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

我在 PDF 文件上显示波斯语文本时遇到问题。渲染组件时它工作正常,但将其保存为 PDF 文件时它显示虚拟文本。

如何在网页上显示

下载后

我的代码:

import font from "./IRANsans.ttf";

Font.register({
  family: "IRANSans",
  format: "truetype",
  src: font,
});

const styles = StyleSheet.create({
  page: {
    fontFamily: "IRANSans",
  },


<Document style={{ backgroundColor: "white", padding: "10px" }}>
    <Page size="A4" style={styles.page}>
      <View >
        <Text>متن نوشته شده به فارسی</Text>
      </View>
    </Page>
  </Document>

有什么解决方案或建议吗? 谢谢

reactjs pdf react-pdf farsi
2个回答
0
投票

我也有同样的问题。我用这个方法解决了。我这样使用

Font.register

Font.register({
  family: 'IRANSans',
  fonts: [
    {
      src: IRANSansFont,
      fontWeight: 400
    }
  ]

})

src
中,您必须
import IranSans
TTF 文件。

我在打字稿上遇到了另一个问题,它不知道此导入,要解决它,您必须在 TTF 文件夹中创建一个

*.d
.ts 文件(例如:
Fonts.d.ts
)并在 .ts 文件中写入以下代码:声明模块
'*.ttf 
'.

最后,您可以在代码中使用

fontFamily: 'IRANSans'
样式


0
投票

它不支持大多数波斯字体。某些版本支持它。解决方案是使用Google Fonts中的波斯字体,例如: NotoSans 阿拉伯语

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