html2canvas透明度,将HTML的透明部分转换为Html2Canvas中的白色

我使用Html2Canvas将文档导出为PDF,但它将JPEG的透明部分转换为黑色(我知道它应该如何去除)。但我希望它能够将透明背景转换为白色。在在线解决方案中,建议更改脚本(Html2Canvas或JSPDF),但我不想这样做,因为它不总是可行的。达到此目的的最佳方法是什么?将HTML的透明部分转换为Html2Canvas中的白色

html2canvas(form, {

imageTimeout: 2000,

removeContainer: true,

background:'#FFF',

onrendered: function (canvas) {

var img = canvas.toDataURL("image/jpeg");

var doc = new jsPDF({

unit: 'pt',

format: 'a4',

});

// pageHeight= doc.internal.pageSize.height;

var image = new Image();

image = Canvas2Image.convertToJPEG(canvas);

doc.addImage(img, 'JPEG', 12, 15);

var corte = (vm.a4[1] * 1.33333) - 30;

var croppingYPosition = corte;

var count = (image.height)/corte;

for (var i = 1; i < count; i++) {

doc.addPage();

var sourceX = 0;

var sourceY = croppingYPosition;

var sourceWidth = image.width;

var sourceHeight = corte;

var destWidth = sourceWidth;

var destHeight = sourceHeight;

var destX = 0;

var destY = 0;

var canvas1 = canvas;

canvas1.setAttribute('height', corte * i);

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);

var image2Data = image2.src;

doc.addImage(image2Data, 'JPEG', 12, 15);

croppingYPosition += destHeight;

}

doc.save('firstPDF.pdf');

$('.pdfTemplates').css('width', '100%');

}

});

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值