Visual Basic - Imprimir Label como se ve

Life is soft - evento anual de software empresarial
   
Vista:

Imprimir Label como se ve

Publicado por José R Salazar (33 intervenciones) el 07/09/2012 21:34:39
Hola, como imprimo un Label tal como se ve en el Formulario. El Label lo tengo con el AutoSize=False y con la altura adecuada para que el texto se muestre en dos lineas, pero al imprimirlo se imprime en una sola linea todo el texto. Quiero que se imprima con las dos filas de texto, tal y como lo veo en el formulario. Se puede?. Gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Imprimir Label como se ve

Publicado por vicent (4 intervenciones) el 16/12/2012 16:51:21
Hola: yo lo hice asi y me funciona, la longitud aproximada de un dina4 es 120 caracteres dependiendo de la fuente en este caso es size 11

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
sub imprimir()
on error resume next' por si da error
 
Dim I As Integer
Dim y As Integer
Dim L As Integer
Dim b as integer
Dim largo as integer
Dim linea as string
 
Printer.Orientation = 1
Printer.FontSize = "11"
 
largo=115' aqui gradualo segun la longitud de la linea mas larga o menos
I = 1
y = 400
While I < Len(Label1.Caption)' bucle mientras haya texto
 
linea = Mid(Label1.Caption, I, largo)
 
For b = largo To 1 Step -1 'busca el espacio en blanco mas a la derecha para no cortar una palabra
If Mid(linea, b, 1) = " " Then
L = b
Exit For 'sale del bucle cuando lo ha encontrado
End If
Next
 
linea = Mid(Label1.Caption, I, L)
 
Printer.CurrentX = 250
Printer.CurrentY = y
Printer.Print linea
I = I + L
y = y + 240
Wend
 
Printer.EndDoc
 
End sub


'Suerte espero haberte ayudado si tienes alguna duda ya diras algo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Imprimir Label como se ve

Publicado por vicent (4 intervenciones) el 16/12/2012 17:14:51
Ah se me olvidava una cosa ... añadele un espacio en blanco al final del label para que no te imprima la ultima palabra en una nueva linea

Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar