Código de Visual Basic - Jusitificar impresion

Imágen de perfil
Val: 43
Ha disminuido su posición en 2 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Jusitificar impresiongráfica de visualizaciones


Visual Basic

Publicado el 22 de Enero del 2003 por Xavi (534 códigos)
15.120 visualizaciones desde el 22 de Enero del 2003
Función que muestra como imprimir de forma justificada un campo Memo de Access.

Versión 1

Publicado el 22 de Enero del 2003gráfica de visualizaciones de la versión: Versión 1
15.121 visualizaciones desde el 22 de Enero del 2003
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
Sub justifica_printer(x0, xf, y0, txt)
    ' x0, xf = posicion de los margenes izquierdo y derecho
    ' y0 = posicion vertical donde se desea empezar a escribir
    ' txt = texto a escribir
 
    Dim x, y, k, ancho
    Dim s As String, ss As String
    Dim x_spc
 
    s = txt
    x = x0
    y = y0
    ancho = (xf - x0)
 
    While s <> ""
        ss = ""
        While (s <> "") And (Printer.TextWidth(ss) <= ancho)
            ss = ss & Left$(s, 1)
            s = Right$(s, Len(s) - 1)
        Wend
        If (Printer.TextWidth(ss) > ancho) Then
            s = Right$(ss, 1) & s
            ss = Left$(ss, Len(ss) - 1)
        End If
        ' aqui tenemos en ss lo maximo que cabe en una linea
        If Right$(ss, 1) = " " Then
            ss = Left$(ss, Len(ss) - 1)
        Else
            If (InStr(ss, " ") > 0) And (Left$(s & " ", 1) <> " ") Then
                While Right$(ss, 1) <> " "
                    s = Right$(ss, 1) & s
                    ss = Left$(ss, Len(ss) - 1)
                Wend
                ss = Left$(ss, Len(ss) - 1)
            End If
        End If
        x_spc = 0
        x = x0
        If (Len(ss) > 1) And (s & "" <> "") Then
            x_spc = (ancho - Printer.TextWidth(ss)) / (Len(ss) - 1)
        End If
        Printer.CurrentX = x
        Printer.CurrentY = y
 
        If x_spc = 0 Then
            Printer.Print ss;
        Else
            For k = 1 To Len(ss)
                Printer.CurrentX = x
                Printer.Print Mid$(ss, k, 1);
                x = x + Printer.TextWidth("*" & Mid$(ss, k, 1) & "*") - Printer.TextWidth("**")
                x = x + x_spc
            Next
        End If
 
        y = y + Printer.TextHeight(ss)
        While Left$(s, 1) = " "
            s = Right$(s, Len(s) - 1)
        Wend
    Wend
End Sub



Comentarios sobre la versión: Versión 1 (0)


No hay comentarios
 

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s492