FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
asunto solucionado...
tenia un problema con el quick report, asi que he decidido imprimir utilizando la libreria printers. Solo una preguntilla mas:
¿como puedo hacer que pase de linea cuando el texto es mas largo que el folio? lo que intento que pase de linea es esto: texto:=memo.text inc(y, 100); TextOut(100, y, texto); Gracias.
__________________
Si me ves durmiendo no me despiertes, podría estar soñando que soy libre. |
#2
|
|||
|
|||
A ver si te sirve esto
Código:
// Suponiendo que caben 50 letras por linea var str : string; begin str := Memo.Text; y := 100; // o el que necesites para inicializar while length(str) > 50 do begin TextOut(100, y, copy(str, 1, 50)); Delete(str, 1, 50); inc(y, 100); end; end; Tambien deverias de controlar que no rompiera una palabra por la mitad. Espero te sirva Última edición por __cadetill fecha: 14-05-2003 a las 11:10:54. |
#3
|
||||
|
||||
tio gracias, con unos pequeños cambios me ha salido lo que queria.
__________________
Si me ves durmiendo no me despiertes, podría estar soñando que soy libre. |
#4
|
||||
|
||||
y que puedo hacer para que si la impresion que voy a llevar a cabo tiene mas de una pagina me imprima las dos paginas?
__________________
Si me ves durmiendo no me despiertes, podría estar soñando que soy libre. |
#5
|
|||
|
|||
Tienes que saber la cantidad de lineas que le caben a la pagina, Entonces, cada vez que imprimes una linea, incrementas una variable contador. Si esta variable contador llega a las lineas maximas de la pagina, haces una llamada a Printer.NewPage
Espero te sirva |
|
|
|