1
div가 높은 차트와 테이블을 모두 가지고 있으며 jspdf를 사용하여 pdf로 변환하려고합니다. canvas.toDataURL을 사용할 때 인덱스 또는 크기가 음수이거나 허용 된 양보다 큽니다.html2canvas 인덱스 또는 크기가 음수이거나 허용 된 값보다 큽니다
어떤 도움을 주셔서 감사합니다
div가 높은 차트와 테이블을 모두 가지고 있으며 jspdf를 사용하여 pdf로 변환하려고합니다. canvas.toDataURL을 사용할 때 인덱스 또는 크기가 음수이거나 허용 된 양보다 큽니다.html2canvas 인덱스 또는 크기가 음수이거나 허용 된 값보다 큽니다
어떤 도움을 주셔서 감사합니다
는 아래의 코드를하지만, 배경 색상은 내가 canvas.getContext와 todataurl을 제거하기 위해 노력했다 #FFFFFF
$("#btnSaveAsPDF").click(function() {
html2canvas($("#tblSaveAsPdf_canvas"), {
onrendered: function (canvas) {
var imageData = canvas.toDataURL("image/jpeg");
var image = new Image();
image = Canvas2Image.convertToJPEG(canvas);
var doc = new jsPDF();
doc.addImage(imageData, 'JPEG', 12, 10);
var croppingYPosition = 1095;
count = (image.height)/1095;
for (var i =1; i < count; i++) {
doc.addPage();
var sourceX = 0;
var sourceY = croppingYPosition;
var sourceWidth = image.width;
var sourceHeight = 1095;
var destWidth = sourceWidth;
var destHeight = sourceHeight;
var destX = 0;
var destY = 0;
var canvas1 = document.createElement('canvas');
canvas1.setAttribute('height', destHeight);
canvas1.setAttribute('width', destWidth);
var ctx = canvas1.getContext("2d");
ctx.drawImage(image, sourceX,
sourceY,
sourceWidth,
sourceHeight,
destX,
destY,
destWidth,
destHeight);
var image2 = new Image();
image2 = Canvas2Image.convertToJPEG(canvas1);
image2Data = image2.src;
doc.addImage(image2Data, 'JPEG', 12, 10);
croppingYPosition += destHeight;
}
var d = new Date().toISOString().slice(0, 19).replace(/-/g, "");
filename = 'report_' + d + '.pdf';
doc.save(filename);
}
});
});
로 설정된 경우에도 몇 군데 검은 배경을 점점 ("2D를 사용 ") .getImageData (15,40,200,200); 그러나 아직도 운이 없다. – Rohan
또한이 코드를 http://plnkr.co/edit/nNSvHL8MZcT6nNKg9CG9에서 구현하려고 시도했습니다. 아직 행운이 없습니다. – Rohan
좋아, 질문에 시도한 것을 추가하면 사람들이 더 잘 도와 줄 수 있습니다. 나는 JS를 모르지만 곧 답변을 얻길 바랍니다. – Hosch250