GARANTIR DESCONTO

Fórum Imprimir .pdf diretamente para a impressora #518383

30/04/2015

0

Como eu faço para imprimir um arquivo .pdf diretamente para a impressora sem abrir uma instancia do adobe?

Agradeço a ajuda de todos,
Silvio Morelo

Silvio Morelo

Responder

Posts

30/04/2015

Marisiana Battistella

Não sei entendi exatamente o que você pediu, Morelo...

Mas você pode enviar o documento para impressão e alterar a impressora por "Salvar em PDF" ou outra opção que possa existir no teu PC.
Caso não exista essa opção você tem que instalar um programa que faça isso, como, por exemplo, o PDF Creator, o Cute PDF,...
Responder

Gostei + 0

30/04/2015

Thiago Santana

Não sei entendi exatamente o que você pediu, Morelo...

Mas você pode enviar o documento para impressão e alterar a impressora por "Salvar em PDF" ou outra opção que possa existir no teu PC.
Caso não exista essa opção você tem que instalar um programa que faça isso, como, por exemplo, o PDF Creator, o Cute PDF,...


Isso mesmo, basta configurar a impressora!
Ai pode utilizar essas diversas opções existentes.
Responder

Gostei + 0

01/05/2015

Marisiana Battistella

Morelo, quando puder, nos informe se conseguiu resolver...
Responder

Gostei + 0

08/05/2015

Silvio Morelo

Obrigado pela ajuda,

Eu tenho um .pdf já criado "contrato de serviço" e quando meu cliente contrata um serviço preciso imprimi-lo para ser assinado. Quero fazer isso pelo próprio sistema, efetuou a compra imprimir o contrato porem ao abrir o pdf ele também abre uma instancia do adobe.

Tem como enviar este .pdf diretamente para a impressora sem abrir esta instancia, ou alguém tem uma outra dica de como fazer essa impressão?
Utilizo Delphi 7 e Firebird 2.0
Responder

Gostei + 0

08/05/2015

Marisiana Battistella

No caso, eu acho que você tem um relatório onde está configurada a apresentação dos dados e esse relatório está sendo gerado em .pdf?

Se for isso, você teria que alterar o código para que ao invés de gerar o relatório em .pdf apenas envie o relatório para a impressora.
Assim, iria abrir a tela de edição da impressão, onde o usuário pode escolher em que impressora ele vai imprimir ou, então, pode optar por salvar em .pdf sem realizar a impressão.
Responder

Gostei + 0

11/05/2015

Silvio Morelo

Marisiana obrigado pela ajuda,

O relatório (.pdf) é criado por um outra área a onde eles alteraram sempre que necessário, eu apenas pego o arquivo e mando imprimir.
Responder

Gostei + 0

20/05/2015

Ageu Luna

Bom dia Morelo
Você pode fazer da seguinte forma:
1- Declare "ShellApi" no uses da interface.
2- no evento OnClick de algum botão chame a função "ShellExecute(Handle, 'print', PChar('C:\Temp\ArquivoPDF.PDF'), nil, nil, SW_HIDE);"

Obs: não esqueça de substituir o arquivo que usei como exemplo 'C:\Temp\ArquivoPDF.PDF' pelo arquivo que deseja.
Responder

Gostei + 0

20/05/2015

Marisiana Battistella

Obrigada por interagir Ageu!

Morelo, desculpa por não te responder antes, eu nem iria saber te ajudar mais pois sei muito pouco de Delphi.
Avise-nos se a solução apresentada pelo Ageu resolve o teu problema.
Responder

Gostei + 0

22/05/2015

Silvio Morelo

Ageu,

Obrigado pela ajuda! Eu executei o comando conforme você informou, o arquivo .pdf é impresso corretamente porem o Adobe Reader insiste em abrir, tem como imprimir o arquivo sem precisar abrir o Adobe?
Responder

Gostei + 0

24/05/2015

Ageu Luna

Morelo, bom dia.

Realmente nos testes que realizei o adobe ainda é aberto como mencionado por você.
O que pode ser feito nesse caso é fechar o adobe pela sua aplicação. Veja o código no qual realizei alguns testes e funcionou.

ShellExecute(Handle, 'print', PChar(Edit1.Text), nil, nil, SW_HIDE);
Sleep(1000);
PostMessage(FindWindow(nil, 'Adobe Reader'), WM_CLOSE, 0, 0);

O "Edit1.Text" foi usado para o endereço do arquivo pdf.
O comando Sleep(3000), utilizei para aguardar 3 segundo até que adobe seja aberto, para posteriormente ser fechado pelo comando seguinte:
PostMessage(FindWindow(nil, 'Adobe Reader'), WM_CLOSE, 0, 0);

Obs:
Talvez seja necessário ajustar o tempo do comando "Sleep" (em milissegundos) para funcionar adequadamente.
Responder

Gostei + 0

25/05/2015

Dorivan Sousa

Aqui encontra como executar um comando e esperar ele ser concluido... com isso voce pode executar a impressao e ao final fechar o adobe...

https://www.devmedia.com.br/forum/executar-um-comando-e-esperar-ele-ser-finalizado/135925
Responder

Gostei + 0

25/05/2015

Silvio Morelo

Agradeço a todos pela ajuda funcionou corretamente.
Obrigado.
Responder

Gostei + 0

25/05/2015

Silvio Morelo

Agradeço a todos pela ajuda funcionou corretamente.
Obrigado.
Responder

Gostei + 0

25/05/2015

Marisiana Battistella

Que bom que deu certo!
Retorne sempre que puder! =)
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar