Obter número de linhas do papel impressora padrão
Olá pessoal, tudo blz?
Estou tendo um problema em detectar o número de linhas de determinado papel da impressora padrão do Windows pela aplicação que estou desenvolvendo.
Estou usando a unit Printers, e a princípio pensei em utilizar as propriedades Printer.Height e Printer.Width, só que se eu tenho como impressora padrão uma HP Deskjet configurada com papel A4, os números apresentados nestes parâmetros são totalmente diferentes de uma Epson FX-2170 (matricial) configurada com o mesmo papel A4.
Obrigado pela atenção e pelas dicas! :-)
Estou tendo um problema em detectar o número de linhas de determinado papel da impressora padrão do Windows pela aplicação que estou desenvolvendo.
Estou usando a unit Printers, e a princípio pensei em utilizar as propriedades Printer.Height e Printer.Width, só que se eu tenho como impressora padrão uma HP Deskjet configurada com papel A4, os números apresentados nestes parâmetros são totalmente diferentes de uma Epson FX-2170 (matricial) configurada com o mesmo papel A4.
Obrigado pela atenção e pelas dicas! :-)
Jorgeolimpia
Curtidas 0
Respostas
Edilcimar
04/04/2005
a quantidade de linhas não depende da impressora em si mas sim da resolução de impressão ex:
altura := printer.pageheight;
largura := printer.pagewidth;
com estes 2 número modifique a resolução da MESMA impressora e rode o programa novamente e verá que eles mudaram, agora com estes dados crie um modo de compensar esta diferença e o programa funcionará perfeitamente em todas as resoluções de todas as impressoras, comigo funciona
altura := printer.pageheight;
largura := printer.pagewidth;
com estes 2 número modifique a resolução da MESMA impressora e rode o programa novamente e verá que eles mudaram, agora com estes dados crie um modo de compensar esta diferença e o programa funcionará perfeitamente em todas as resoluções de todas as impressoras, comigo funciona
GOSTEI 0