Javascript 如何使用jquery和php生成动态二维码,并将其保存为pdf?

Javascript 如何使用jquery和php生成动态二维码,并将其保存为pdf?,javascript,php,jquery,jspdf,Javascript,Php,Jquery,Jspdf,我想在录取卡中生成一个二维码,我想下载这张录取卡的PDF格式和一些图片。我已经为此编写了代码。在web视图中一切都很好,但当我要下载这张二维码时,二维码不是PDF格式的。 我使用了1) 2) “” $('#cmd')。单击(函数(){ var选项={}; var pdf=新的jsPDF('p','pt','a4'); pdf.addHTML($(“#内容”)、15、15、选项、函数(){ 保存('pageContent.pdf'); }); }); “title=”链接到Google.c

我想在录取卡中生成一个二维码,我想下载这张录取卡的PDF格式和一些图片。我已经为此编写了代码。在web视图中一切都很好,但当我要下载这张二维码时,二维码不是PDF格式的。 我使用了1) 2) “”


$('#cmd')。单击(函数(){
var选项={};
var pdf=新的jsPDF('p','pt','a4');
pdf.addHTML($(“#内容”)、15、15、选项、函数(){
保存('pageContent.pdf');
});
});

“title=”链接到Google.com“>
///这里我使用谷歌api二维码生成器

注册号:AISEWERT456


好的,在将dom输入jspdf之前,您必须将图像转换为base64格式

  • id='qrcode'crossOrigin=“anonymous”
    添加到包含qrcode的img标签中

  • 将url属性转换为使用base64

  • 转换为pdf

  • $('#cmd')。单击(函数(){
    变量选项={
    allowTaint:是的,
    日志记录:正确
    };
    var pdf=新的jsPDF('p','pt','a4');
    var base64=getBase64Image($(“#qrcode”).get(0));
    $(“#qrcode”).attr('src',base64);
    pdf.addHTML($(“#内容”)、15、15、选项、函数(){
    保存('pageContent.pdf');
    });
    });
    函数getBase64Image(img){
    setAttribute('crossOrigin','anonymous');
    var canvas=document.createElement(“canvas”);
    canvas.width=img.width;
    canvas.height=img.height;
    var ctx=canvas.getContext(“2d”);
    ctx.drawImage(img,0,0);
    var dataURL=canvas.toDataURL(“image/png”);
    返回dataURL;
    }
    
    ///这里我使用谷歌api二维码生成器
    

    注册号:AISEWERT456

    应用状态:已完成

    中心编号: 考试日期:

    下载
    AFAIK在将dom输入jspdf之前,您必须将图像转换为base64格式。以下是解决方法

  • id='qrcode'crossOrigin=“anonymous”
    添加到包含qrcode的img标签中

  • 将url属性转换为使用base64

  • 转换为pdf

  • $('#cmd')。单击(函数(){
    变量选项={
    allowTaint:是的,
    日志记录:正确
    };
    var pdf=新的jsPDF('p','pt','a4');
    var base64=getBase64Image($(“#qrcode”).get(0));
    $(“#qrcode”).attr('src',base64);
    pdf.addHTML($(“#内容”)、15、15、选项、函数(){
    保存('pageContent.pdf');
    });
    });
    函数getBase64Image(img){
    setAttribute('crossOrigin','anonymous');
    var canvas=document.createElement(“canvas”);
    canvas.width=img.width;
    canvas.height=img.height;
    var ctx=canvas.getContext(“2d”);
    ctx.drawImage(img,0,0);
    var dataURL=canvas.toDataURL(“image/png”);
    返回dataURL;
    }
    
    ///这里我使用谷歌api二维码生成器
    

    注册号:AISEWERT456

    应用状态:已完成

    中心编号: 考试日期:
    下载