This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html lang="en"> | |
<head> | |
<meta charset="UTF-8"> | |
<meta http-equiv="X-UA-Compatible" content="IE=edge"> | |
<meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
<link rel="stylesheet" href="./bulma.min.css"> | |
<script src="./ConectorJavaScript.js" type="text/javascript"></script> | |
<title>Hola mundo - By Parzibyte</title> | |
</head> | |
<body> | |
<div class="container"> | |
<div class="columns"> | |
<div class="column"> | |
<h1 class="is-size-1">Hola mundo</h1> | |
</div> | |
</div> | |
<div class="columns"> | |
<div class="column"> | |
<div class="select is-rounded"> | |
<select id="listaDeImpresoras"></select> | |
</div> | |
<br> | |
<button id="btnImprimir" class="button is-success mt-2">Imprimir</button> | |
</div> | |
<div class="column"> | |
<div class="notification is-warning"> | |
<p> | |
Al imprimir, el resultado debería ser parecido al siguiente: | |
</p> | |
</div> | |
<img src="./Hola mundo.jpg" alt="Ticket con acentos"> | |
</div> | |
</div> | |
<div class="columns has-text-centered"> | |
<div class="column"> | |
<p> | |
<a href="https://parzibyte.me/blog">Proudly brought to you by Parzibyte</a> | |
</p> | |
</div> | |
</div> | |
</div> | |
<script> | |
const obtenerListaDeImpresoras = async () => { | |
return await ConectorPluginV3.obtenerImpresoras(); | |
} | |
const URLPlugin = "http://localhost:8000" | |
const $listaDeImpresoras = document.querySelector("#listaDeImpresoras"), | |
$btnImprimir = document.querySelector("#btnImprimir"); | |
const init = async () => { | |
const impresoras = await ConectorPluginV3.obtenerImpresoras(URLPlugin); | |
for (const impresora of impresoras) { | |
$listaDeImpresoras.appendChild(Object.assign(document.createElement("option"), { | |
value: impresora, | |
text: impresora, | |
})); | |
} | |
$btnImprimir.addEventListener("click", () => { | |
const nombreImpresora = $listaDeImpresoras.value; | |
if (!nombreImpresora) { | |
return alert("Por favor seleccione una impresora. Si no hay ninguna, asegúrese de haberla compartido como se indica en: https://parzibyte.me/blog/2017/12/11/instalar-impresora-termica-generica/") | |
} | |
imprimirHolaMundo(nombreImpresora); | |
}); | |
} | |
const imprimirHolaMundo = async (nombreImpresora) => { | |
const conector = new ConectorPluginV3(URLPlugin); | |
conector.Iniciar(); | |
conector.EscribirTexto("Hola mundo\nParzibyte.me"); | |
conector.Feed(1); | |
const respuesta = await conector | |
.imprimirEn(nombreImpresora); | |
if (respuesta === true) { | |
alert("Impreso correctamente"); | |
} else { | |
alert("Error: " + respuesta); | |
} | |
} | |
init(); | |
</script> | |
</body> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment