【发布时间】:2018-08-09 22:42:38
【问题描述】:
这是我的代码:
<script type="text/javascript">
var url = 'localhost:8080/chartGenerator';
function myFunction() {
var docDef={ content: [
'This is an sample PDF printed with pdfMake',
{
image: getBinaryResource(url)
}
]
}
pdfMake.createPdf(docDef).download('optionalName.pdf');
}
function getBinaryResource(url){
var req = new XMLHttpRequest();
req.open("GET", url, false);
req.overrideMimeType('text/plain; charset=x-user-defined');
req.send(null);
if (req.status == 200) {
return req.responseText.replace(/^data:image\/(png|jpg);base64,/, "");
} else return null
}
</script>
我需要使用从服务器获取的图像生成 pdf 文档,但出现以下错误:TypeError: r is undefined.
你能帮我解决这个问题吗?
【问题讨论】:
-
能否展示您从 getBinaryResource(url) 返回的内容,并在创建 PDF 之前检查您的 docDef 以查看其外观?
-
@AndréKool pastebin.com/tFUMBJm5
-
删除 ".replace(/^data:image\/(png|jpg);base64,/, "");"在您的代码中,您实际上需要该部分,以便 pdfmake 可以将其识别为 base64 图像格式。我希望能解决它。
标签: javascript pdfmake