Página 1 de 1

Preview

Enviado: 18 Nov 2005 14:36
por MARCELOG
Olá companheiros,

Para impressão, depois de alguns exemplos, estou utilizando a classe Win32Prn.
Verifiquei no arquivo prg que a classe não possui método PREVIEW (ou será que tem?).
Então, como visualizar a impressão antes de descarregá-la na impressora?

Se não estiver falando bobagem, a classe Win32Prn gera um arquivo temporario para impressão (::STARTDOC).
Então, como pegar o nome desse arquivo temporário para, antes de ::ENDDOC e ::DESTROY, exibir o mesmo na tela.


Obrigado.

MGS

Enviado: 01 Dez 2005 10:22
por Hasse
Ninguém se habilita ?

Não é possível ?

Ou a solução seria o uso do WinPrn.prg do Kresin ?

Hasse.

Enviado: 06 Dez 2005 09:30
por MARCELOG
Olá companheiros,
a classe win32prn gera um documento para impressão.
É fácil verificar a situação observando o método "startdoc" onde, se não for
indicado um nome, a classe automaticamente gera um com base na data e hora
do sistema.
A partir do nome do documento (fornecido ou criado) é gerado um número
(hPtinterDC), provavelmente o handle do arquivo.
Gostaria de acessar este documento/ arquivo criado antes da impressão para
visualizá-lo na tela.
Alguém pode me ajudar a fazê-lo?
Desde já, muito obrigado.

Marcelo Giovane

Enviado: 06 Dez 2005 14:26
por Hasse
Olá companheiros.

Continuando a idéia acima, pergunta-se:

É possivel usar, para a finalidade de visualizar o arquivo, o "METHOD Preview() INLINE Nil" presente no Hprinter da HWGUI ?

De que forma se poderia fazer isto ?

Hasse

Enviado: 06 Dez 2005 15:28
por vagucs
O WIN32PRN nao tem metodo preview, mas acredito que nao demora muito para incluirem, a rotina STARTDOC nao gera um arquivo DOC, ela é um rotina que chama as rotinas de baixo nivel dos drives de impressora para poderem começar a impressão de uma pagina grafica.

Enviado: 06 Dez 2005 21:59
por Dudu_XBase
Eu inicialmente apanhei mto com o win32prn.
Até conhecer a impressão da minigui.
Eu recompilei em xharbour essa impressão da minigui e to fazendo teste mesclando com gtwvt e gtwvw com preview e tudo qdo terminar meus testes vou postar a lib e como to fazendo.
Mas até agora esta show de bola em breve vou postar como fiz.
Peguei os sources da minigui e da miniprint.

Enviado: 07 Dez 2005 18:31
por JAIR RANGEL
Para Dudu_XBase.............

Por que não usar a HBPRINTER ?????

Se perguntei besteira, me desculpe ! E que ainda não cheguei na parte de impressão. Mas gostaria de saber....................................................


Migrando Para HARBOUR + MINIGUI 108 + BRMAKE :xau

Enviado: 14 Dez 2005 10:57
por MARCELOG
Caro Vagner,
procurando na internet sobre a Win32Prn, que usa várias rotinas em C para acessar as api´s do Windows conclui (parcialmente) o seguinte:

- o Windows não imprime, mas "pinta" a impressão numa área e descarrega os comandos num arquivo para impressão.

Logo, a informação de que o método/ função STARTDOC não gera um arquivo para impressão, s.m.j., não é inteiramente correta.

Verificando (e estudando) o caso, a sua informação realmente procede.

Todavia, em "alguma parte" da classe, o "DEVICE CONTEXT" (DC) é descarregado num arquivo e enviado para a impressão.

Com efeito, realizada a descarga, se a impressora não puder ser realizada, vai ficar na fila de impressão como qualquer arquivo.

Se acaso tiver dado um nome ao documento (em STARTDOC), este será o nome constante do painel de impressoras ou, caso contrário, o nome criado pelo método.

Então, em que oportunidade é criado (ou descarregado) a tela "pintada" pelo Windows em arquivo para impressão?

Se puder ajudar, desde já agradeço.

MGS

Enviado: 14 Dez 2005 15:48
por vagucs
Marcelog,

Suas informações estão estritamente corretas, estes arquivos ficam no ditorio de spooler da impressora, porém eles contem os comandos de impressão que a impressora lerá e então desenhará o relatorio na tela.

Recuperar este arquivo nao nos ajudará em nada pois cada tipo de impressora tem comandos diferentes ou seja, este arquivo varia de acordo com o modelo da impressora instalada.

Porem o Handl DC permite que o mesmo relatorio seja impressora em arquivos WMF, assim que todos os sistemas e libs fazem a visualização do relatorio, não é difil implantar tão possibilidade no WIN32PRN ou mesmo fazer uma classe derivada com esta propriedade.

Enviado: 15 Dez 2005 10:52
por MARCELOG
Caro Vagner,
você pode me dar uma dica de como fazê-lo.

nrhcemgs@teleon.com.br

MGS

Enviado: 15 Dez 2005 11:45
por vagucs
Cara nao tem dica, tem que pegar a API de criação de WMF e ir substituindo. Pode olhar o fonte da Minigprint, ela usa recursos parecidos para fazer o preview.

Enviado: 15 Dez 2005 16:08
por MARCELOG
Vagner,
você pode enviar os fontes no meu email, não sei onde conseguí-los.

Obrigado.

MGS

Enviado: 15 Dez 2005 16:57
por vagucs
Minha net e discada.

Vc consegue os fontes da minigui no source forge

www.sourceforge.net

Enviado: 15 Dez 2005 17:55
por MARCELOG
Baixei os fontes com sources.
Todavia, não existe um miniprint.prg ou algo parecido.
O mais perto é miniprint.ch que se encontra vazio.
As funções em C também não contém WMF e o termo Miniprint somente em exemplos, não se referindo ao fonte (da classe ou lib).

MGS