javascript - jsPDF中的addImage错误(无法读取未定义的属性'addImage')
问题描述
我正在开发一个电子学习课程,成功完成课程后可以下载证书。我正在使用 jsPDF,一切正常,我可以将变量从课程复制到 pdf,我可以保存 pdf,但是当我尝试添加背景图像时遇到了问题。
我不是 JavaScript 专家,所以我正确地遵循了文档。我能够将脚本加载到 html 中,除了 addimage 函数之外,javascript 代码运行良好,它总是给出“无法读取未定义的属性 'addImage'”并使脚本崩溃。
这是我正在使用的 javascript:
var player = parent.GetPlayer();
var doc = new jsPDF('p', 'mm', 'a4');
var certif = player.GetVar("cert");
if (certif == 1) {
parent.backgroundimage ();
}
var namename = player.GetVar("input1");
doc.setFontSize(18);
doc.setTextColor(0,0,0);
doc.setFontStyle("bold");
doc.text(17, 55, namename);
doc.save('Certificate.pdf');
这是我单独保存的 backgroundimage 函数的单独 javascript (image.js),因为 Articulate Storyline 不直接支持 Base64。
function backgroundimage() {
var imgData = 'data:image/jpeg;base64,... string with over 120.000 characters'
doc.addImage(imgData, 'JPEG', 0, 0, 210, 223)
}
这是我在 html 头部包含的脚本:
<script src="https://unpkg.com/jspdf@latest/dist/jspdf.min.js" type="text/javascript"></script>
<script src="https://unpkg.com/jspdf@1.5.3/dist/jspdf.debug.js" type="text/javascript"></script>
<script src="image.js" type="text/javascript"></script>
一切似乎都正常,我可以创建、保存 pdf、定位文本,我可以调用函数“backgroundimage”(使用 console.log 测试)我只在包含 doc.addimage 时出现错误。我已经使用 jspdf 中包含的 addimage.js 进行了测试,但没有结果。我使用下载的 javascripts,并且仅尝试使用 jspdf.js,可能是我能想到的所有可能性,但没有结果。
解决方案
推荐阅读
- scala - 在 Gatling 测试中传递配置
- plot - Gnuplot 填充曲线未正确显示
- tsql - 如果列中的日期来自上个月,如何计算
- vim - 如何映射
到 g:ycm_key_list_select_completion 和 ? - apache-spark - 尝试保存 pyspark 数据框时出错
- c# - 使用实体框架进行分组的前 5 个 LINQ 查询
- android - Android中的这种数据绑定方法是否适合生产使用?它是否包含隐藏的问题?
- django - pip打包一个django项目
- android - 在 Exoplayer 中加载视频时添加进度条加载器
- java - JOOQ - 将 fetchOne().into() 转换为 fetchValue(query)