2017-02-22 4 views
0

나는 jsPdf 플러그인을 사용하고 있습니다 및 어도비 리더에서 열려 그 pdf 파일이 110 오류를 말하는 동안 내가 pdf 파일을 다운로드 할 생각이를 사용하여이PDF로 차트를 변환하고 다운로드하는 방법?

var data = google.visualization.arrayToDataTable(dataValues,true); 
     var chart = new google.visualization.CandlestickChart(document.getElementById(id)); 
     google.visualization.events.addListener(chart, 'ready', function() { 
      var content = '<img src="' + chart.getImageURI() + '">'; 
      $('#graph-images').append(content); 
     }); 

function generatePDF() { 
     var imageTags = $('#graph-images img'); 
     var doc = new jsPDF(); 
     doc.setFontSize(33); 
     doc.setFillColor(135, 124,45,0); 
     doc.addImage(imageTags[0], 'png', 10, 10, 150, 100); 
     doc.save('sample.pdf'); 
    } 

했다.

아무도 도와 드릴 수 있습니까?

답변

0

당신은 addImage()에 이미지 URI를 통과해야합니다

google.charts.setOnLoadCallback(function() { 
    var data = google.visualization.arrayToDataTable(dataValues, true) 
    var chart = new google.visualization.CandlestickChart(document.getElementById(id)) 
    chart.draw(data) 
    imgData = chart.getImageURI() 
}) 

function generatePDF() { 
    var doc = new jsPDF(); 
    doc.setFontSize(33); 
    doc.setFillColor(135, 124,45,0); 
    doc.addImage(imgData, 'png', 10, 10, 150, 100); 
    doc.save('sample.pdf'); 
} 

더 자세한 https://jsfiddle.net/p1frmxvp/1/

UPDATE이 라이브 데모를 확인하시기 바랍니다

이 밝혀 우리가 jspdf 1.3.2를 사용할 때 오류 만 발생 그리고 here과 같이 Adobe Reader를 사용하여 pdf 파일을 엽니 다. 지금까지 유일한 해결책은 다른 뷰어 (Chrome, Foxit Reader .etc)를 사용하여 pdf를 열거 나 jspdf를 1.2.61으로 다운 그레이드하는 것입니다. 다운 그레이드 된 jspdf를 사용하기 위해 위의 jsfiddle를 업데이트했습니다.

+0

어도비 리더에서 다운로드 한 파일을 여는 중 오류가 발생했습니다. 페이지를 처리하는 중에 오류가 발생했습니다. 이 문서 (110)를 읽는 데 문제가 있었습니까? –

+0

당신은 PDF 파일을 열 때 실수가 있다고 말하고 있습니까? https://jsfiddle.net/p1frmxvp/? 그렇다면 문제는 어도비 리더에 있습니다. 나는 아무런 문제없이 PDF 파일을 열 수있다. –

+0

그래, 고마워, 나는 Adobe Reader의 최신 버전을 다운로드하려고한다. 고맙습니다. –