Bom dia, Estou querendo fazer uma impressão ousando a função nativa output to printer, até tudo bem, porém, gostaria de saber como faço para configurar o layout da página (paisagem ou retrato) e também o tamanho da fonte. Alguém sabe como fazer isso ou possui alguma documentação a respeito? Obrigado e boa quinta. Ítalo.
Para configurar o layout e só acrescentar no OUTPUT TO a opcao de LANDSCAPE ou PORTRAIT. Para a fonte não sei.
Encontrei um programa básico para fazer esta formatação, utilizando o "put stream ### control ###" porém não estou conseguindo fazer a impressão, formatada diretamente na impressora Código: /* PROGRAM NAME: put_hp.p * DESCRIPTION : This program shows how you can use printer * escape codes to change attributes on a * printed report. This program uses codes for * an HP Laserjet II as an example. */ DEF VAR reset AS CHAR FORMAT "X(02)" INITIAL "~033E". DEF VAR compress AS CHAR FORMAT "X(09)" INITIAL "~033(s16.66H". DEF VAR normal AS CHAR FORMAT "X(09)" INITIAL "~033(s10H". DEF VAR landscape AS CHAR FORMAT "X(05)" INITIAL "~033&l1O". DEF VAR portrait AS CHAR FORMAT "X(05)" INITIAL "~033&l0O". DEF VAR prtmode AS LOGICAL FORMAT "C/N" INITIAL "N". DEF VAR orient AS LOGICAL FORMAT "R/P" INITIAL "R". DEF VAR dfile AS CHARACTER FORMAT "X(20)". DEFINE STREAM diskfile. /* Prompt user for output details */ MESSAGE "Selecione o modo do relat¢rio (Normal ou Comprimido)" UPDATE prtmode. MESSAGE "Seleciona a orientacao (Retrato ou Paisagem)" UPDATE orient. dfile = STRING("C:\GPS\SPOOL\Teste Impressao ") + STRING(TODAY,"99-99-9999")+ " " + STRING(TIME) + ".txt". OUTPUT STREAM diskfile TO VALUE(dfile). /* Ask printer to go into requested state for report */ IF prtmode = TRUE THEN PUT STREAM diskfile CONTROL compress. /* send COMPRESS code */ ELSE PUT STREAM diskfile CONTROL normal. /* send NORMAL code */ IF orient = TRUE THEN PUT STREAM diskfile CONTROL portrait. /* send PORTRAIT code */ ELSE PUT STREAM diskfile CONTROL landscape. /* send LANDSCAPE code */ /* report code */ FIND FIRST usuario. DISPLAY STREAM diskfile nm-usuario. /* return printer to default state */ PUT STREAM diskfile CONTROL reset. OUTPUT STREAM diskfile CLOSE. UNIX silent lp -dlwmis value(dfile). /* spool report */ RETURN. /* return to calling program */ /* end of procedure */