Alinear y Centrar el texto del ticket con PadC, PadL y PadR

Alinear_centrar_texto_mybusinessposEn este ejemplo veremos cómo alinear el texto de un ticket con las funciones

  • PadL(cadenaTexto,Longitud). Rellena de espacios a la izquierda; Alineación a la Derecha
  • PadR(cadenaTexto,Longitud). Rellena de espacios a la derecha; Alineación a la Izquierda
  • PadC(cadenaTexto,Longitud). Rellena de espacios al centro; Alineación Centrado

Alinear Texto con PadL, PadR y PadC

88.00 KB 289 downloads

Para lograrlo, crearemos tres funciones, aunque PadL ya viene por default, aquí la colocaremos.
 Visual Basic |  copy code |? 
01
02
Sub Main()                   
03
	'La letra posterior a PAD es el lado que se rellenará de espacios
04
	a = padL ("Frase de prueba",40)  'Relleno IZQUIERDO. Alinea a la derecha   
05
	b = PadC ("Frase de prueba",40)  'Ambos lados. Alinear al centro
06
	c = PadR ("Frase de prueba",40)  'Relleno DERECHO. Alineación  a la izquierda
07
 
08
    mymessage "PadL: '" & a & "'" & vbcrlf & _    	
09
			  "PadC: '" & b & "'" & vbcrlf &_
10
			  "PadR: '" & c & "'"
11
 
12
End Sub
13
 
14
'PADL() Alineación a la DERECHA inserta los caracteres de relleno a la Izquierda
15
Function PadL(cadena,nLongitud)
16
    dim clen 
17
    dim temp  
18
	dim char
19
 	char = " " 'espacio en blanco
20
    on error resume next 
21
    'Tomamos la cadena enviada en el parámetro
22
    'eliminando los chares vacios izq-dch
23
    temp = trim(cadena)
24
    clen = len(temp) 
25
	for n=1 to nLongitud
26
		char = char & " "
27
	Next            
28
 
29
    'Analizamos si la nLongitud justificada es menos
30
    'que la propia cadena enviada en parámetro.
31
    if clen < nLongitud then            
32
			temp = mid(char,1,nLongitud - clen) & temp  'Alineación a la Derecha
33
    end if 
34
    PadL = temp
35
end function
36
 
37
 
38
'PADR() Alineación a la IZQUIERDA inserta los caracteres de relleno a la derecha
39
Function PadR(cadena,nLongitud)
40
    dim clen 
41
    dim temp       
42
	char = " " 'espacio en blanco
43
    on error resume next 
44
    'Tomamos la cadena enviada en el parámetro
45
    'eliminando los chares vacios izq-dch
46
    temp = trim(cadena)
47
    clen = len(temp) 
48
	for n=1 to nLongitud
49
			char = char & " "
50
	Next            
51
 
52
    'Analizamos si la nLongitud justificada es menos
53
    'que la propia cadena enviada en parámetro.
54
    if clen < nLongitud then         
55
			temp =  temp & mid(char,1,nLongitud - clen)  'Alineación a la Izquierda
56
    end if 
57
    PadR = temp
58
end function
59
 
60
 
61
'PADC() Alineación al CENTRO inserta los caracteres de relleno a ambos lados
62
Function PadC(cadena,nLongitud)
63
    dim clen 
64
    dim temp       
65
	char = " " 'espacio en blanco
66
    'on error resume next 
67
    'Tomamos la cadena enviada en el parámetro
68
    'eliminando los chares vacios izq-dch
69
    temp = trim(cadena)
70
    clen = len(temp) 
71
	for n = 1 to nLongitud
72
 		char = char & " " 
73
	Next                               
74
	'Espacios al lado Izquierdo
75
	nEspaciosA = formato((nLongitud - clen)/2 , "#.0") 
76
	DondeEstaElPunto = clAt( ".", nEspaciosA ) - 1
77
	'Espacios al lado derecho
78
	nEspaciosA = mid(nEspaciosA,1,DondeEstaElPunto)
79
	nEspaciosB = nLongitud -clen - nEspaciosA    
80
    'Analizamos si la nLongitud justificada es menos
81
    'que la propia cadena enviada en parámetro.
82
    if clen < nLongitud then         
83
			temp =  mid(char,1,nEspaciosA) & _
84
					temp & _
85
					mid(char,1,nEspaciosB)  'Alineación a la Izquierda
86
    end if 
87
    PadC = temp
88
end function
89

Espero sea de utilidad estas funciones que dejo a su disposición en espera de que correspondan con un pomo para seguir inspirados.
Saludos
José Félix

4 comments for “Alinear y Centrar el texto del ticket con PadC, PadL y PadR

  1. RUBEN DOLORES
    septiembre 26, 2015 at 12:05 am

    como puedo alinear los precios del subtotal y total , que me queden sobre la misma linea vertival. y se vea como una suma.

    CANT. DESCRIPCION SUBTOTAL TOTAL
    1 COCA COLA RETORNABL 20.00 20.00
    1 COCA COLA 600 ML 10.00 10.00
    1 CLAVO DE 3″ 20.00 20.00
    Importe: 50.00
    Impuesto: 0.00
    Importe: 50.00
    Redondeo: 0.000
    3 —- TOTALES — $50.00
    Pago en EFE $50.00
    Cambio: $0.00
    CINCUENTA PESOS 00/100 M.N.
    i

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *


Time limit is exhausted. Please reload CAPTCHA.