Win32prn para Iniciantes

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Hasse
Usuário Nível 4
Usuário Nível 4
Mensagens: 820
Registrado em: 19 Out 2004 10:30
Localização: Jaraguá do Sul - SC

Mensagem por Hasse »

Tem sim.
Eu uso o PDFCreator 0.7.1.
Se não me engano também pode ser gravado em arquivo DOC.
Hasse
CP200 / CP500 / Basic / dBase III / dBase IV / Clipper Summer / RTlink / Exospace.
Clipper 5.3b / Blinker 7.0 / CDX com TAG
xHarbour 1.2.1-6604 / Borland C++ (5.5.1) 32 bit / HBmake.
Harbour 3.2.0dev (r1412121623) / MINGW / HBM2 / MiniGui HMG 3.1.4 / IDE (Roberto Lopez).
"Conheça todas as teorias, domine todas as técnicas, mas, quando tocares uma alma humana, seja apenas outra alma humana." (C.G.Jung)
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Dércio_Luiz_Zanatta escreveu:Tem como imprimir para arquivo usando o win32prn ?
Senão, Tem outro jeito ?
Se vc deseja para um WORD por exemplo, vc nem prescissa usar a WIN32PRN, pode usar via OLE no sessão codigo fonte tem um exemplo simples, qualquer coisa posso postar mais exemplos.

Abraços
Leonardo Machado
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
ederxc
Usuário Nível 4
Usuário Nível 4
Mensagens: 619
Registrado em: 15 Set 2006 08:40
Localização: Pedreira -SP-

Mensagem por ederxc »

sygecom escreveu:
Dércio_Luiz_Zanatta escreveu:Tem como imprimir para arquivo usando o win32prn ?
Senão, Tem outro jeito ?
Se vc deseja para um WORD por exemplo, vc nem prescissa usar a WIN32PRN, pode usar via OLE no sessão codigo fonte tem um exemplo simples, qualquer coisa posso postar mais exemplos.

Abraços
Leonardo Machado
Leo , pode postar que estou estudando uma maneira de imprimir para arquivo , só não sei qual seria mais rapido e eficiente PDF .or. Word
C:\Xharbour\Xdev\Fw\VSX
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Código: Selecionar todos

*****************************
PROCEDURE Abre_word(cARQ,IMP)
*****************************
LOCAL oWord, oText, oDoc

IF IMP=Nil
   IMP="N"
endif
MsgRun("Aguarde Gerando Documento de Word...")

GERAFILE()  // gera um nome para arq. temporario

vARQ:={}
aadd( vARQ, {"LINHA","C",200,0} )
DBcreate(cFILE, vARQ,"DBFCDX")

SELE 999
USE (cFILE) alias gera_ole EXCL new VIA "DBFCDX"//  ALIAS tela shared NEW
append from (cARQ) sdf && nome completo do arquivo sdf

TRY
   oWord := GetActiveObject( "Word.Application" )
CATCH
   TRY
      oWord := CreateObject( "Word.Application" )
   CATCH
      MsgStop("Não foi Possivel Achar o Word Instalado","Aviso do Sistema")
      RETURN
   END
END
IF !FILE(cARQ)
   MsgStop("Não Foi possivel Abrir o Documento de Word")
   RETURN
ENDIF

oWord:Documents:Add()
oText := oWord:Selection()

Sele gera_ole
dbgotop()
Do while !eof()
   cLinha := Linha           // Busca linha de impressao
   oText:Font:Name := "Lucida Console"
   oText:Font:Size := 8
   oText:Font:Bold := .F.
   oText:Text+= cLinha   + CRLF
   dbskip()
enddo

IF IMP="N"
   oWord:Visible := .T. //PARA VISUALIZAR OU NÃO ANTES
   oWord:WindowState := 1  // Maximize
ENDIF
IF IMP="S"
   oWord:Visible := .F. //PARA VISUALIZAR OU NÃO ANTES
   oWord:PrintOut()   //PARA IMPRIMIR DIRETO
ENDIF
RETURN
Obs: o TRY e CATCH é valido somente para xHarbour.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
lindinaldo
Usuário Nível 1
Usuário Nível 1
Mensagens: 4
Registrado em: 13 Fev 2007 18:37

duvida

Mensagem por lindinaldo »

comecei a usar o win32prn, mas quando uso impressoras lx300 elas
nao obedecem a margim na segunda folha quando e uma nova impressao ela vai decendo..

pode me ajudar...



LIndinaldo
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Claro que todos podem tentar lhe ajudar, mas para isso post o codigo de como esta usando.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Hasse
Usuário Nível 4
Usuário Nível 4
Mensagens: 820
Registrado em: 19 Out 2004 10:30
Localização: Jaraguá do Sul - SC

Mensagem por Hasse »

O código (PRG) do início foi alterado. Lá acrescentei a impressão de imagens, conforme sugestão do colega Maligno.

Vejam:
https://pctoledo.org/forum/viewto ... sc&start=0
Editado pela última vez por Hasse em 26 Jan 2008 16:30, em um total de 2 vezes.
Hasse
CP200 / CP500 / Basic / dBase III / dBase IV / Clipper Summer / RTlink / Exospace.
Clipper 5.3b / Blinker 7.0 / CDX com TAG
xHarbour 1.2.1-6604 / Borland C++ (5.5.1) 32 bit / HBmake.
Harbour 3.2.0dev (r1412121623) / MINGW / HBM2 / MiniGui HMG 3.1.4 / IDE (Roberto Lopez).
"Conheça todas as teorias, domine todas as técnicas, mas, quando tocares uma alma humana, seja apenas outra alma humana." (C.G.Jung)
ederxc
Usuário Nível 4
Usuário Nível 4
Mensagens: 619
Registrado em: 15 Set 2006 08:40
Localização: Pedreira -SP-

Mensagem por ederxc »

Boa tarde !

Seria possivel , imprimir um BMP que esteja contido em um arquivo .RC ou RES ??
C:\Xharbour\Xdev\Fw\VSX
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Eder, na HWGUI eu tentaria algo assim:

************************
FUNC PrintBitMap( oPrn ) //função para imprimir imagem do logotipo
************************
LOCAL oBMP
PRIVATE oBmp1 := HBitmap():AddResource("ID_RES")
oBMP:= Win32BMP():new()
oBmp:loadFile( oBmp1 )
oBmp:Draw( oPrn, { 200,200,500,500 } )
oBMP:Destroy()
RETURN
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

Hasse escreveu:Postei o código completo novamente para facilitar o trabalho daqueles que desejarem "copiar" e "colar".
Sugestão: em se tratando de uma atualização que dispensa o código anterior, já que é algo grande, edite sua primeira mensagem, apagando o código postado e talvez inserindo um link para a mensagem que tem o código mais novo. Assim damos uma força pro nosso colega Toledo.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Hasse
Usuário Nível 4
Usuário Nível 4
Mensagens: 820
Registrado em: 19 Out 2004 10:30
Localização: Jaraguá do Sul - SC

Mensagem por Hasse »

Maligno escreveu: Sugestão: em se tratando de uma atualização que dispensa o código anterior, já que é algo grande, edite sua primeira mensagem, apagando o código postado e talvez inserindo um link para a mensagem que tem o código mais novo. Assim damos uma força pro nosso colega Toledo.
Conforme tua sugestão, fiz as alterações propostas. Não entendi bem o espírito da questão, porém tenho certeza que você deve saber como isto acontece e funciona, pois para mim o tamanho total ficou igual.
Hasse
CP200 / CP500 / Basic / dBase III / dBase IV / Clipper Summer / RTlink / Exospace.
Clipper 5.3b / Blinker 7.0 / CDX com TAG
xHarbour 1.2.1-6604 / Borland C++ (5.5.1) 32 bit / HBmake.
Harbour 3.2.0dev (r1412121623) / MINGW / HBM2 / MiniGui HMG 3.1.4 / IDE (Roberto Lopez).
"Conheça todas as teorias, domine todas as técnicas, mas, quando tocares uma alma humana, seja apenas outra alma humana." (C.G.Jung)
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

Ah, não. Você entendeu errado. Eu não sugeri criar um novo tópico para postar o código mais novo. Sugeri que você editasse sua primeira mensagem nesse tópico aqui, apagando-o se for desnecessário, a fim de economizar o espaço em disco que o Toledo paga.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Hasse
Usuário Nível 4
Usuário Nível 4
Mensagens: 820
Registrado em: 19 Out 2004 10:30
Localização: Jaraguá do Sul - SC

Mensagem por Hasse »

OOOOPPPPPPSSSSS !!!!! Foi mal. Perdão.

Agora entendi. E já providenciado.
Hasse
CP200 / CP500 / Basic / dBase III / dBase IV / Clipper Summer / RTlink / Exospace.
Clipper 5.3b / Blinker 7.0 / CDX com TAG
xHarbour 1.2.1-6604 / Borland C++ (5.5.1) 32 bit / HBmake.
Harbour 3.2.0dev (r1412121623) / MINGW / HBM2 / MiniGui HMG 3.1.4 / IDE (Roberto Lopez).
"Conheça todas as teorias, domine todas as técnicas, mas, quando tocares uma alma humana, seja apenas outra alma humana." (C.G.Jung)
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

Beleza pura! Thanks. :)

Aliás, aproveitando o ensejo, quero sugerir ao Toledo a criação de uma seção de código fonte apenas para XHarbour. Seria bem mais prático. Todos os fontes seriam lá depositados, o que, creio eu, facilitaria até a pesquisa. Na discussão normal apenas se faria uma referência ao fonte na outra seção.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
ederxc
Usuário Nível 4
Usuário Nível 4
Mensagens: 619
Registrado em: 15 Set 2006 08:40
Localização: Pedreira -SP-

Mensagem por ederxc »

sygecom escreveu:Eder, na HWGUI eu tentaria algo assim:

************************
FUNC PrintBitMap( oPrn ) //função para imprimir imagem do logotipo
************************
LOCAL oBMP
PRIVATE oBmp1 := HBitmap():AddResource("ID_RES")
oBMP:= Win32BMP():new()
oBmp:loadFile( oBmp1 )
oBmp:Draw( oPrn, { 200,200,500,500 } )
oBMP:Destroy()
RETURN

Interessante Sr. Machado ! ;)
C:\Xharbour\Xdev\Fw\VSX
Responder