private async void ImprimirTicketCambioMesa(String Usuario, Piso piso, int mesaAnt, int mesaNew, bool ImpCortePapel)
        {
            try
            {
                var listImpresora = new List <Impresora>();
                listImpresora = await GetImpresoraCambioMesa(piso.codigo, mesaNew);

                foreach (var miImpre in listImpresora)
                {
                    var ListaImpresion = new List <string>();
                    var impresora      = new dllimpresion.ImpresoraFormato(miImpre.impresora, miImpre.NumColumImpresora, miImpre.NumCopias);

                    impresora.ConfiguraImpresora();

                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("  CAMBIO DE MESA", 14, FontStyle.Bold));
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("FECHA : " + DateTime.Now.ToShortDateString() + "  HORA: " + DateTime.Now.ToShortTimeString(), 10, FontStyle.Regular));
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("PISO  : " + piso.descripcion, 12, FontStyle.Bold));
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("M. ANT: " + mesaAnt + "   " + "M. NUEVA: " + mesaNew, 12, FontStyle.Bold));

                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("USUARIO: " + Usuario, 10, FontStyle.Regular));
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("", 10, FontStyle.Regular));
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("", 10, FontStyle.Regular));
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("", 10, FontStyle.Regular));
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("", 10, FontStyle.Regular));
                    impresora.Imprimir(true);

                    if (ImpCortePapel)
                    {
                        ImprimirCortePapel(miImpre.impresora, miImpre.NumColumImpresora);
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
        private async void ImprimirTicketFormato2(int CodPedido, bool ImpCortePapel, string Estado, string CodigosItem, string namePrinter = "", int numCol = 40, int numCopy = 1)
        {
            var ListPedido = new List <Pedido>(await GetListaImp(CodPedido, Estado, CodigosItem, namePrinter.Length == 0 ? false : true));

            try
            {
                foreach (Pedido miPedido in ListPedido)
                {
                    var ListaImpresion = new List <string>();
                    var miImpre        = new Impresora();

                    if (Estado.Equals("A") && namePrinter.Length > 0)
                    {
                        miImpre.impresora         = namePrinter;
                        miImpre.NumColumImpresora = numCol;
                        miImpre.NumCopias         = numCopy;
                    }
                    else
                    {
                        miImpre.impresora         = miPedido.Impresora.impresora;
                        miImpre.NumColumImpresora = miPedido.Impresora.NumColumImpresora;
                        miImpre.NumCopias         = miPedido.Impresora.NumCopias;
                    }

                    var impresora = new dllimpresion.ImpresoraFormato(miImpre.impresora, miImpre.NumColumImpresora, miImpre.NumCopias);

                    impresora.ConfiguraImpresora();
                    miPedido.usuario = await _reposiUsuario.GetUser(miPedido.usuario.codigo);

                    //ListaImpresion.Add(Estado.Equals("A")? "ANULACION ": "ORDEN PARA " + miPedido.SubLinea.Descripcion);
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato(Estado.Equals("A") ? "ANULACION" : "ORDEN DE PEDIDO", 14, FontStyle.Bold));
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("FECHA: " + miPedido.fecha.ToShortDateString() + " HORA: " + miPedido.fecha.ToShortTimeString(), 10, FontStyle.Regular));
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("PEDIDO: " + miPedido.numero + "   " + (miPedido.isLlevar ? "PARA LLEVAR" : "MESA : " + miPedido.mesa.numero), 12, FontStyle.Bold));
                    if (miPedido.nombreClientePedido.Length > 0)
                    {
                        impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("CLIENTE : " + miPedido.nombreClientePedido, 10, FontStyle.Regular));
                    }
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("VENDEDOR: " + miPedido.usuario.login, 10, FontStyle.Regular));
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato(" ", 10, FontStyle.Regular));
                    //ListaImpresion.Add("====================")
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato(("CODBAR").PadRight(4, ' ').PadLeft(8, ' ') + "       " + ("CANT").PadRight(4), 12, FontStyle.Regular));
                    //ListaImpresion.Add("CANT.       DETALLE");
                    foreach (Detalle_Pedido miLinea in miPedido.listaDetalle)
                    {
                        //impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato(impresora.AgregarItem1(miLinea.itemUnidad.CodBar, "-", miLinea.cantidad.ToString("0.00"),12), 12, FontStyle.Bold));
                        impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato(miLinea.itemUnidad.CodBar.PadRight(4, '-').PadLeft(8, ' ') + "-------" + miLinea.cantidad.ToString("0").PadLeft(3, '-'), 12, FontStyle.Bold));
                        if (miLinea.observacion.Length > 0 && Estado == "V")
                        {
                            impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("Obs: " + miLinea.observacion, 10, FontStyle.Bold));
                        }
                    }
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("", 10, FontStyle.Regular));
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("", 10, FontStyle.Regular));
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("", 10, FontStyle.Regular));
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("", 10, FontStyle.Regular));
                    impresora.ListImpresion.Add(new dllimpresion.ImpresoraFormato.TextoFormato("", 10, FontStyle.Regular));
                    //ListaImpresion.Add("");
                    impresora.Imprimir();

                    if (ImpCortePapel)
                    {
                        ImprimirCortePapel(miImpre.impresora, miImpre.NumColumImpresora);
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
        }