0

我正在尝试在 Ionic 5 应用程序中使用 Cordova Plugin Datecs Printer 来打印从服务器接收到的图像。这是我使用的功能:

onPrintImage(img: string, height: number, width: number) {
    return new Promise((resolve, reject) => {
      var image = new Image();
      image.onload = function() {
        var canvas = document.createElement('canvas');
        canvas.height = height / 2;
        canvas.width = width / 2;
        var context = canvas.getContext('2d');
        context.drawImage(image, 0, 0);
        var imageData = canvas.toDataURL('image/jpeg').replace(/^data:image\/(png|jpg|jpeg);base64,/, ""); 
        window.DatecsPrinter.printImage(imageData, canvas.width, canvas.height, 0, function(success) {resolve(success)}, function(error) {reject(error)});
      }
      image.src = 'data:image/png;base64,' + img;
    })
  }

它在大多数打印机上都能正常工作,除了我刚买的一台新的 Honeywell MPD31D。在这一点上,结果如下所示: 在此处输入图像描述

我知道这不是打印机的问题,因为我可以从其他通用蓝牙打印应用程序打印图像,所以很可能是插件的问题。有什么想法可以解决这个问题吗?

4

0 回答 0