|
@@ -0,0 +1,51 @@
|
|
|
|
|
+<?php
|
|
|
|
|
+header("Access-Control-Allow-Origin: *");
|
|
|
|
|
+
|
|
|
|
|
+require __DIR__ . '/vendor/autoload.php';
|
|
|
|
|
+use Mike42\Escpos\Printer;
|
|
|
|
|
+use Mike42\Escpos\PrintConnectors\WindowsPrintConnector;
|
|
|
|
|
+use Mike42\Escpos\EscposImage;
|
|
|
|
|
+use Mike42\Escpos\PrintConnectors\FilePrintConnector;
|
|
|
|
|
+
|
|
|
|
|
+$printerName = $_GET['printer'] ?? null;
|
|
|
|
|
+
|
|
|
|
|
+if (!$printerName) {
|
|
|
|
|
+ die("Error: Debes proporcionar el nombre de la impresora usando ?printer=NOMBRE\n");
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+try {
|
|
|
|
|
+ $connector = new WindowsPrintConnector($printerName);
|
|
|
|
|
+ $printer = new Printer($connector);
|
|
|
|
|
+
|
|
|
|
|
+ // Texto de prueba
|
|
|
|
|
+ $printer->setJustification(Printer::JUSTIFY_CENTER);
|
|
|
|
|
+ $printer->setTextSize(2, 2);
|
|
|
|
|
+ $printer->text("PRUEBA DE IMPRESIÓN\n");
|
|
|
|
|
+ $printer->setTextSize(1, 1);
|
|
|
|
|
+ $printer->text("---------------------------\n");
|
|
|
|
|
+
|
|
|
|
|
+ // Código de barras (formato CODE39 recomendado para compatibilidad)
|
|
|
|
|
+ $printer->setBarcodeHeight(60);
|
|
|
|
|
+ $printer->setBarcodeWidth(3);
|
|
|
|
|
+ $printer->text("Código de barras:\n");
|
|
|
|
|
+ $printer->barcode("V-12345", Printer::BARCODE_CODE39);
|
|
|
|
|
+ $printer->feed();
|
|
|
|
|
+
|
|
|
|
|
+ // Código QR
|
|
|
|
|
+ $printer->text("Código QR:\n");
|
|
|
|
|
+ $printer->qrCode("https://equis.com.sv", Printer::QR_ECLEVEL_L, 6);
|
|
|
|
|
+ $printer->feed();
|
|
|
|
|
+
|
|
|
|
|
+ // Abrir gaveta
|
|
|
|
|
+ $printer->pulse();
|
|
|
|
|
+
|
|
|
|
|
+ // Finalizar
|
|
|
|
|
+ $printer->text("\nGracias por usar nuestros Servicios\n");
|
|
|
|
|
+ $printer->text("Visítanos en: https://equis.com.sv\n");
|
|
|
|
|
+ $printer->cut();
|
|
|
|
|
+ $printer->close();
|
|
|
|
|
+
|
|
|
|
|
+ echo "Impresión de prueba enviada a: $printerName\n";
|
|
|
|
|
+} catch (Exception $e) {
|
|
|
|
|
+ echo "Error al imprimir: " . $e->getMessage();
|
|
|
|
|
+}
|