/// <summary> /// funcion que sirve para centrar el texto de todos los items de array /// </summary> /// <param name="mensaje"></param> /// <returns></returns> public static string[] CentrarMensajedeTrama(string[] mensaje, Enumeraciones.TipodeMensaje tipoMensaje) { string LetraTipoMensaje; if (tipoMensaje == Enumeraciones.TipodeMensaje.ConAlerta) { LetraTipoMensaje = "$"; } else { LetraTipoMensaje = "C"; } List <String> nuevoArrayTexto = new List <string>(); foreach (string _texto in mensaje) { char pad = ' '; string nuevoTexto = ""; int longitud = _texto.Trim().Length; int longRestante = 33 - longitud; int longConcatInicial = longRestante / 2; nuevoTexto = LetraTipoMensaje + _texto.PadLeft((longConcatInicial + longitud) - 1, pad); if (nuevoTexto.Length > 33) { nuevoTexto = nuevoTexto.Substring(0, (Convert.ToInt16(nuevoTexto.Length) - (nuevoTexto.Length - 33))); } nuevoArrayTexto.Add(nuevoTexto); } return(nuevoArrayTexto.ToArray()); }
/// <summary> /// Centra y concatena cualquier caracter a un texto, en cualquier direccion o ambas, y con la primera letra como tipo de mensaje /// </summary> /// <param name="mensaje">mensaje o texto</param> /// <param name="tipoMensaje">si es de alerta o no</param> /// <param name="direccion">si es izquiera derecha o ambas</param> /// <param name="caracter">que caracter sera utilizado para concatenar</param> /// <returns></returns> public static string CentrarConcatenarMensajeTrama(string mensaje, Enumeraciones.TipodeMensaje tipoMensaje, Enumeraciones.Direccion direccion, char caracter) { string LetraTipoMensaje; if (tipoMensaje == Enumeraciones.TipodeMensaje.ConAlerta) { LetraTipoMensaje = "$"; } else { LetraTipoMensaje = "{"; } char pad = caracter; string nuevoTexto = ""; int longitud = mensaje.Trim().Length; int longRestante = 33 - longitud; int longConcatInicial = longRestante / 2; switch (direccion) { case Enumeraciones.Direccion.izquierda: nuevoTexto = LetraTipoMensaje + mensaje.PadLeft((longConcatInicial + longitud) - 1, pad); break; case Enumeraciones.Direccion.derecha: nuevoTexto = LetraTipoMensaje + mensaje.PadRight((longConcatInicial + longitud) - 1, pad); break; case Enumeraciones.Direccion.ambos: nuevoTexto = LetraTipoMensaje + mensaje.PadLeft((longConcatInicial + longitud) - 1, pad); nuevoTexto = nuevoTexto.PadRight(33, pad); break; } return(nuevoTexto); }