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.
|