自定义字体 JSPDF Angular

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

如何在 Angular 中使用 JSPDF 的自定义字体。我已经尝试将js转换后的文件导入到index.html中。尝试导入它:

 const doc = new jsPDF('p', 'mm', 'a4');

// Load Montserrat font
doc.addFileToVFS(
  'assets/fonts/Montserrat-Regular.ttf',
  'Montserrat-Regular'
);

这些都不起作用,也许有人已经使用 Angular 和 JSPDF 导入了自定义字体并且可以帮助我。

angular jspdf jspdf-autotable
1个回答
0
投票
  • 使用
    jsPDF 字体转换器将您的 
    .ttf 字体转换为 js 脚本
  • 将转换后的
    .ttf
    字体下载到
    .js
    文件中后,只需复制
    AAEAAAASAQAABAA...
    中的
    var font = 'AAEAAAASAQAABAA...';
    字体内容,然后从新的
    .ts
    文件中将其导出为字符串。
  • 要将字体添加到VFS中,请将字体内容作为字符串导入,然后执行
    addFileToVFS()
import { jsPDF } from 'jspdf';
import { NotoSansTCRegular } from './font/NotoSansTC-Regular';

const doc = new jsPDF('l', 'pt', 'a4', true); // adjust this line based on your preference
doc.addFileToVFS('NotoSansTC-Regular.ttf', NotoSansTCRegular);
doc.addFont('NotoSansTC-Regular.ttf', 'NotoSansTC-Regular', 'normal');
doc.setFont('NotoSansTC-Regular', 'normal');
© www.soinside.com 2019 - 2024. All rights reserved.