Estoy usando cordova-plugin-printer para una de mis aplicaciones Cordova . He instalado el complemento y también puedo acceder al servicio de impresión nativo de Android . La función de impresión del complemento se puede llamar en la aplicación usando su función cordova.plugins.printer.print(); como se describe en los documentos del complemento aquí y en su repositorio de git .
De hecho, necesito imprimir un <div> seleccionado del HTML, usando JavaScript/jQuery.
Pero el problema al que me enfrento es que cuando paso html como var , este complemento está imprimiendo HTML sin procesar, y no el HTML renderizado como se desea. Donde, si paso directamente el código HTML, como parámetro, da el resultado deseado.
Mi código de ejemplo:
cuando llamo
cordova.plugins.printer.print('<h1>How r u</h1>');//print as desired.
Pero cuando escribo código como este:
<div id="printable"> <h1>How are you</h1> </div> var printable = $("#printable").html(); cordova.plugins.printer.print(printable);//prints raw html¿Alguien puede ayudar? o corrijanme que estoy haciendo mal? parece ser algo tonto, que probablemente no pueda entender.
Debe eliminar los saltos de línea de su html. Probar
var printable = $("#printable").html(); printable = printable.replace(/(\r\n|\n|\r)/gm, ''); cordova.plugins.printer.print(printable);