Ahora que ya sabes como mandar informacion desde tus programas de pascal a la impresora te surge otra duda, como puedo hacer una impresion horizontal, como puedo imprimir graficos, como puedo establecer el tipo de fuente y sus atributos (negrita, subrayado, tamaño, color, etc.).
Los comandos que configuran la salida de impresion se llaman Codigos de Escape o tambien los puedes encontrar como Comandos PCL, son llamados comandos de escape porque la mayoria empiezan con escape #27 en el codigo ascii
Cada marca y cada modelo de impresora tienen sus propios codigos de escape, algunos modelos comparten los mismos codigos, depende del fabricante de cada impresora.
Los codigos (o comandos pcl) los pueden encontrar en la guia de usuario de la impresora, algunas guias no los traen, de ser asi tendras que buscarlos en la pagina web o preguntar por ellos en el soporte tecnico.
Como en la programacion, hay codigos que activan, hay codigos que desactivan y hay otros que hacen hacen algo especifico una sola vez.
Para poder configurar la impresora es necesario mandarle a decir a esta que atributos queremos establecer o que queremos que haga, ¿Y como le decimos esto?, mandando un write(lst,codigo), donde lst, especifica que la salida es a la impresora y codigo es el codigo de la caracteristica que queremos activar.
Los codigos usados aqui son especificos para la impresora HP Deskjet 720C. No los uses para otros modelos pues no sabes que consecuencias pueda tener
Por ejemplo, el codigo para pasar una hoja por la impresora es: escape&l0H, entonces para hacer tal acccion escribimos:
write(lst,#27&l0H);
Ahora, el codigo para configurar la impresora en hoja horizontal es escape&l1O, y el codigo para volverla a vertical es escape&l0O, entonces decirle esto a la impresora es muy sencillo como la instruccion de arriba
write(lst,#27&l1O);Lo mismo para negritas, cursivas, subrayado, graficos, etc.
write(lst,#27&(s3B); {negritas}
Ahora bien, tanto codigo tan raro podria srer muy confuso para los que revisen el codigo o para ti mismo despues de un tiempo, se te olvida y no sabes ni que onda. Todo esto se ve mas claro si hacemos un procedimiento para cada configuracion de la impresora. Entonces:
Este comentario es muy importante
Procedure activar_negritas;
begin
     write(lst,#27&(s3B);
end;
Procedure desactivar_negritas;
begin
     write(lst,#27&(s0B);
end;
Procedure activar_subrayado;
begin
     write(lst,#27&d1D);
end;
Procedure desactivar_subrayado;
begin
     write(lst,#27&d@);
end;
Procedure pasar_hoja;
begin
     write(lst,#27&l0H);
end;
Esto ya es mas facil de comprender para nosotros y para las demas personas, ademas es mas facil de configurar la impresora.
activar_negritas;Comprender el tema es muy facil, pero llevarlo a la practica es un poco mas complicado, tendras que practicar un poco para poder dominarlo completamente.
No quedo claro
Escribeme