Javascript 使用ESC POS在热敏打印机中生成QRCode

Javascript 使用ESC POS在热敏打印机中生成QRCode,javascript,java,image,qr-code,pos,Javascript,Java,Image,Qr Code,Pos,我有一个像下面这样的脚本, 这个脚本用于打印数据和二维码,我已经成功地打印了数据,现在我仍在寻找如何在打印中显示二维码。我尝试过使用html脚本,但只显示字符串,还使用了java函数,但它仍然被认为是未定义的。 请帮助我,如何生成二维码以打印方式显示 function print(o) { if (jspmWSStatus()) { //Create a ClientPrintJob var cpj = new JSPM.ClientPrintJob();

我有一个像下面这样的脚本, 这个脚本用于打印数据和二维码,我已经成功地打印了数据,现在我仍在寻找如何在打印中显示二维码。我尝试过使用html脚本,但只显示字符串,还使用了java函数,但它仍然被认为是未定义的。 请帮助我,如何生成二维码以打印方式显示

function print(o) {
    if (jspmWSStatus()) {
        //Create a ClientPrintJob
        var cpj = new JSPM.ClientPrintJob();
        //Set Printer type (Refer to the help, there many of them!)
        if ($('#useDefaultPrinter').prop('checked')) {
            cpj.clientPrinter = new JSPM.DefaultPrinter();
        } else {
            cpj.clientPrinter = new JSPM.InstalledPrinter($('#installedPrinterName').val());
        }
        //Set content to print...
        //Create ESP/POS commands for sample label
        var esc = '\x1B'; //ESC byte in hex notation
        var newLine = '\x0A'; //LF byte in hex 

        var cmds = esc + "@"; //Initializes the printer (ESC @)
        cmds += esc + '!' + '\x38'; //Emphasized + Double-height + Double-width mode selected (ESC ! (8 + 16 + 32)) 56 dec => 38 hex
        cmds += 'PRUDENTIAL'; //text to print
        cmds += newLine + newLine;
        cmds += esc + '!' + '\x00'; //Character font A selected (ESC ! 0)
        cmds += '<?=$qrcode?>';
        cmds += newLine + newLine;
        cmds += esc + '!' + '\x00'; //Character font A selected (ESC ! 0)
        cmds += 'ID : ' + '<?=$id?>';
        cmds += newLine;
        cmds += 'AGENT CODE : ' + '<?=$agent_code?>';
        cmds += newLine;
        cmds += 'NAME : ' + '<?=$agent_name?>';
        cmds += newLine;
        cmds += 'ACHIEVEMENT : ' + '<?=$achievement?>';
        cmds += newLine + newLine;
        cmds += esc + '!' + '\x18'; //Emphasized + Double-height mode selected (ESC ! (16 + 8)) 24 dec => 18 hex
        cmds += '# ITEMS SOLD 2';
        cmds += esc + '!' + '\x00'; //Character font A selected (ESC ! 0)
        cmds += newLine + newLine;
        cmds += '11/03/13  19:53:17';

        cpj.printerCommands = cmds;
        //Send print job to printer!
        cpj.sendToClient();
    }
} 
功能打印(o){
if(jspmWSStatus()){
//创建ClientPrintJob
var cpj=new JSPM.ClientPrintJob();
//设置打印机类型(请参阅帮助,其中有很多!)
if($('useDefaultPrinter').prop('checked')){
cpj.clientPrinter=new JSPM.DefaultPrinter();
}否则{
cpj.clientPrinter=new JSPM.InstalledPrinter($(“#installedPrinterName”).val();
}
//设置要打印的内容。。。
//为样本标签创建ESP/POS命令
var esc='\x1B';//十六进制表示法中的esc字节
var newLine='\x0A';//十六进制的LF字节
var cmds=esc+“@”//初始化打印机(esc@)
cmds+=esc+'!'+'\x38';//选择了强调+双高+双宽模式(esc!(8+16+32))56 dec=>38十六进制
cmds+=“PRUDENTIAL”;//要打印的文本
cmds+=换行符+换行符;
cmds+=esc+'!'+'\x00';//选定字符字体A(esc!0)
cmds+='';
cmds+=换行符+换行符;
cmds+=esc+'!'+'\x00';//选定字符字体A(esc!0)
cmds+=“ID:”+“”;
cmds+=换行符;
cmds+='代理代码:'+'';
cmds+=换行符;
cmds+='名称:'+'';
cmds+=换行符;
cmds+='成就:'+'';
cmds+=换行符+换行符;
cmds+=esc+'!'+'\x18';//选择了强调+双高模式(esc!(16+8))24 dec=>18十六进制
cmds+=“#售出物品2”;
cmds+=esc+'!'+'\x00';//选定字符字体A(esc!0)
cmds+=换行符+换行符;
cmds+='11/03/13 19:53:17';
cpj.printerCommands=cmds;
//将打印作业发送到打印机!
cpj.sendToClient();
}
}