【问题标题】:How to fix 'jsPDFAPI is not defined'如何修复“未定义 jsPDFAPI”
【发布时间】:2019-09-02 22:16:54
【问题描述】:

我正在将 calibri.ttf 字体添加到 jsPDF 文件中, 根据使用 UTF-8 / TTF:this github link 中给出的部分

我关注了this 页面,生成的 *.js 文件包含在我的项目中,就像这样。

<script src="~/Scripts/jspdf.min.js"></script>
<script src="~/Scripts/calibri-normal.js"></script>

然后尝试使用字体为:

var option = {
    orientation: 'l',
    unit: 'in',
    format: [9, 6.9],
    putOnlyUsedFonts: false
}
var lx = 0.5, ly = 1;
var gap = 0.3;
var doc = new jsPDF(option)
//doc.addFont('calibri-normal.ttf', 'calibri', 'normal');
doc.setFontStyle('calibri')
doc.setFontSize(8)
   .text('Custom Font Family Used', lx + 1.0, ly - 0.05);

在此处添加/删除行;

doc.addFont('calibri-normal.ttf', 'calibri', 'normal');

没有实现calibri字体,
虽然

doc.getFontList()

显示包含的字体“calibri”,未实现自定义字体。仍然使用默认字体。

然后在检查生成的 custom-font.js 时,出现错误消息:'jsPDFAPI is not defined'。

Error Message Thrown in custome-font.js While Inspecting

如何解决“未定义 jsPDFAPI”问题? 我在这里错过了在 jsPDF 中实现自定义字体。

提前谢谢你。

【问题讨论】:

  • 也许你应该用 jspdf.debug.js 替换 jspdf.min.js ?

标签: jspdf


【解决方案1】:

就我而言,我从here 下载了库,它是 1.3.2 版。之后,我使用了cdn版本。目前使用 1.5.3,它工作正常。看来原网站下载的文件没有更新,很可能1.3.2版本中没有包含utf-8的支持。

因此,不要使用该网站,只需包含来自 cdn 的最新版本; https://unpkg.com/jspdf@1.5.3/dist/jspdf.min.js

【讨论】:

    猜你喜欢
    • 2019-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-11
    • 1970-01-01
    • 2019-09-20
    • 2022-01-20
    • 2020-01-26
    相关资源
    最近更新 更多