Javascript 将画布转换为pdf:黑色背景

Javascript 将画布转换为pdf:黑色背景,javascript,jspdf,Javascript,Jspdf,我想将我的html画布导出为pdf并下载,我做了一些搜索,下面的脚本对我很好: <script language = "JAVASCRIPT"> var canvas = document.getElementById('mycanvas'); var context = canvas.getContext('2d'); // draw a blue cloud context.beginPath(); context.moveTo(170, 80); context.bezie

我想将我的html画布导出为pdf并下载,我做了一些搜索,下面的脚本对我很好:

<script language = "JAVASCRIPT">
var canvas = document.getElementById('mycanvas');

var context = canvas.getContext('2d');

// draw a blue cloud
context.beginPath();
context.moveTo(170, 80);
context.bezierCurveTo(130, 100, 130, 150, 230, 150);
context.bezierCurveTo(250, 180, 320, 180, 340, 150);
context.bezierCurveTo(420, 150, 420, 120, 390, 100);
context.bezierCurveTo(430, 40, 370, 30, 340, 50);
context.bezierCurveTo(320, 5, 250, 20, 250, 50);
context.bezierCurveTo(200, 5, 150, 20, 170, 80);
context.closePath();
context.lineWidth = 5;
context.fillStyle = '#8ED6FF';
context.fill();
context.strokeStyle = '#0000ff';
context.stroke();

download.addEventListener("click", function() {
// only jpeg is supported by jsPDF
var imgData = canvas.toDataURL("image/jpeg", 1.0);
var pdf = new jsPDF();

pdf.addImage(imgData, 'JPEG', 0, 0);
var download = document.getElementById('download');

pdf.save("download.pdf");
}, false);
</script>

var canvas=document.getElementById('mycanvas');
var context=canvas.getContext('2d');
//画龙点睛
context.beginPath();
上下文。moveTo(170,80);
贝塞尔曲线图(130100130150230150);
贝塞尔曲线图(250180320180340150);
贝塞尔曲线图(420150420120390100);
贝塞尔曲线图(430、40370、30340、50);
贝塞尔曲线图(320,5250,20250,50);
贝塞尔曲线图(200,5150,20170,80);
closePath();
context.lineWidth=5;
context.fillStyle='#8ED6FF';
context.fill();
context.strokeStyle='#0000ff';
stroke();
download.addEventListener(“单击”,函数()){
//jsPDF仅支持jpeg
var imgData=canvas.toDataURL(“image/jpeg”,1.0);
var pdf=新的jsPDF();
pdf.addImage(imgData,'JPEG',0,0);
var download=document.getElementById('download');
pdf.save(“download.pdf”);
},假);
但我得到的是黑色背景的画布

我尝试过其他代码和在互联网上找到的许多解决方案,我尝试过更改画布标签中的背景颜色,但没有任何效果


有什么帮助吗?

请尝试以
PNG
格式下载,而不是以
JPEG
格式下载:

download.addEventListener("click", function() {
// only jpeg is supported by jsPDF
var imgData = canvas.toDataURL("image/png", 1.0);
var pdf = new jsPDF();

pdf.addImage(imgData, 'PNG', 0, 0);
var download = document.getElementById('download');

pdf.save("download.pdf");
}, false);

请尝试以
PNG
格式下载,而不是以
JPEG
格式下载:

download.addEventListener("click", function() {
// only jpeg is supported by jsPDF
var imgData = canvas.toDataURL("image/png", 1.0);
var pdf = new jsPDF();

pdf.addImage(imgData, 'PNG', 0, 0);
var download = document.getElementById('download');

pdf.save("download.pdf");
}, false);

jsPDF不支持PNG。jsPDF不支持PNG。