2015-06-17 104 views
2

這裏是我的代碼:類型錯誤而與pdfmake生成PDF

<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文檔,但是我有以下錯誤:類型錯誤:r是未定義。

你能幫我解決這個問題嗎?

+0

您能否顯示您從getBinaryResource(url)返回的內容,並且可以在創建PDF之前查看您的docDef以查看其外觀? –

+0

@AndréKoolhttp://pastebin.com/tFUMBJm5 – walter

+1

刪除「.replace(/^data:image \ /(png | jpg); base64,/,」「);」在您的代碼中,您實際上需要該部分,因此pdfmake可以將其識別爲base64圖像格式。我希望能解決它。 –

回答

1

As @AndréKool指出刪除「.replace(/^data:image /(png | jpg); base64,/,」「);」 soved it