Impresion con objeto Printer
Buenas, tengo un programa que no trabaja con bases de datos, simplemente con ficheros con tipo. A la hora de imprimir un informe, utilizo el objeto printer de delphi y puedo ir tirando, se que no es optimo, pero es simple y me funciona. Sin embargo, tengo un grandisimo problema, los datos deben ir en columnas, por poner un ejemplo de las cabeceras: (Nombre Domicilio DNI), obviamente cada nombre no va a tener los mismos caracteres por lo que el domicilio y el DNI quedarian descuadrados de su columna(poniendo unos espacios fijos entre ellos). Tuve en cuenta esto y al numero de caracteres entre cada columna, le reste los del nombre (50 - Length(nombre)) y luego con un bucle rellene los espacios que faltaban:
Por ejemplo: w := (50-Lenght(nombre)) for i := 1 to w do begin nombre := (nombre + ' '); end, writeln(impresora, nombre); Aun y así no cuadraban, y comprendi que dos palabras con 5 caracteres no tienen por que ocupar el mismo espacio fisico en la hoja de texto ya que cada letra no ocupa lo mismo... o creo que ese es el problema... llevo tiempo dandole vueltas y no encuentro una solución, si alguien puede prestarme ayuda se lo agradeceria enormememente ya que este asunto me urge muchisimo. Muchas Gracias. |
Para ese propósito lo mejor es que utilices:
del Objeto Tprinter. Ejemplo. cNumText, es una variable de tipo String en donde se guardan las cantidades convertidas a texto para luego poderlas alinear por la derecha:
Un Saludo. |
Cita:
ARIAL: AAAAAA IIIIII COURIER: AAAAAA IIIIII |
La franja horaria es GMT +2. Ahora son las 11:28:27. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi