我正在尝试使用离子3创建一个pdf生成器,因此我使用this并使用
导入它npm install pdfmake
import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';
import * as pdfmake from 'pdfmake/build/pdfmake';
@Component({
selector: 'page-home',
templateUrl: 'home.html'
})
export class HomePage {
constructor(public navCtrl: NavController) { }
pdf(){
console.log("pdf", pdfmake)
var dd = { content: 'This is an sample PDF printed with pdfMake' };
pdfmake.createPdf(dd);
}
}
执行此操作后,我收到此错误
Error: File 'Roboto-Regular.ttf' not found in virtual file system
不知道如何解决这个问题可能有人帮我修复此问题,并使用cordova文件将其保存到我的设备存储中
答案 0 :(得分:0)
PdfMake使用字体作为数据。它将tff文件转换为js,然后将其转换回字体。
所以你只是错过了一个文件
<script src='build/vfs_fonts.js'>
您可以将其添加到索引html(坏坏坏)
或者你可以在你的ts文件中导入它,看看pdfmake是否可以选择它。
import 'pdfmake/build/vfs_fonts';
如果不是,您可能需要通过配置进行分配。 您可以在此处阅读更多内容:https://github.com/bpampuch/pdfmake/wiki/Custom-Fonts---client-side