SEFAZCLASS - Logo na DANFE

Projeto hbNFe (Nota Fiscal Eletronica/Danfe) para [x]Harbour

Moderador: Moderadores

mga
Usuário Nível 1
Usuário Nível 1
Mensagens: 11
Registrado em: 17 Nov 2017 10:21
Localização: São Paulo

SEFAZCLASS - Logo na DANFE

Mensagem por mga »

Usando a classe do mestre Jose Quintas, não estou conseguindo fazer a LOGO sair na DANFE, alguem pode me ajudar


cConteudoXML := RetornaConteudoDoXMLArquivoTabelaNFE( cChaveNFE )
cArquivoPDF := PastaPDF()+"\"+Alltrim(cChaveNFE)+".pdf"
oDanfe := hbNFeDaNFe():New()
oDanfe:cDesenvolvedor := InformacaoDoDesenvolvedor()
oDanfe:cLogoFile := "c:\danfe\imagem.jpg"
cRetorno := oDanfe:ToPDF( cConteudoXML, cArquivoPDF, "" )
mga
Usuário Nível 1
Usuário Nível 1
Mensagens: 11
Registrado em: 17 Nov 2017 10:21
Localização: São Paulo

SEFAZCLASS - Logo na DANFE

Mensagem por mga »

Resolvido assim:

METHOD DrawJPEGImage( cJPEGImage, x1, y1, x2, y2 ) CLASS hbNFeDaNFe

IF cJPEGImage == NIL .OR. Empty( cJPEGImage )
RETURN NIL
ENDIF

// IF Len( cJPEGImage ) < 100
// IF File( cJPEGImage )
// cJPEGImage := HPDF_LoadJpegImageFromFile( ::oPDF, cJPEGImage )
// ENDIF
// ELSE
// cJPEGImage := HPDF_LoadJpegImageFromMem( ::oPDF, cJPEGImage, Len( cJPEGImage ) )
// ENDIF

cJPEGImage := HPDF_LoadJpegImageFromFile( ::oPDF, cJPEGImage )

HPDF_Page_DrawImage( ::oPDFPage, cJPEGImage, x1, y1, x2, y2 )

RETURN NIL
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

SEFAZCLASS - Logo na DANFE

Mensagem por JoséQuintas »

Se reparar direito, fez o que estava no fonte, exceto testar se o arquivo existe.

Código: Selecionar todos

/ IF Len( cJPEGImage ) < 100
// IF File( cJPEGImage )
// cJPEGImage := HPDF_LoadJpegImageFromFile( ::oPDF, cJPEGImage )
// ENDIF
// ELSE

Código: Selecionar todos

cJPEGImage := HPDF_LoadJpegImageFromFile( ::oPDF, cJPEGImage )
Se Len() do parâmetro < 100.... seu parâmetro é menor que 100.
IF File( cJPEGImage ) .... só se falhou aqui.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

SEFAZCLASS - Logo na DANFE

Mensagem por JoséQuintas »

Ah, não... já sei o que foi....
A melhoria está no uso "não direto".

oDanfe := hbnfeDaGeral():New()
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
rubens
Colaborador
Colaborador
Mensagens: 1520
Registrado em: 16 Ago 2003 09:05
Localização: Nova Xavantina - MT

SEFAZCLASS - Logo na DANFE

Mensagem por rubens »

Bom dia
José Quintas...
Como enviar o texto nas observações para quebrar a linha?
Por exemplo:
cObs1+'|'+cObs2?
cObs1+';'+cObs2?
cObs1+HB_Eol()+cObs2?

Obrigado
Rubens
"Eu e minha casa servimos ao Senhor e você ???"
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

SEFAZCLASS - Logo na DANFE

Mensagem por JoséQuintas »

Os dois são válidos, mas use preferencialmente o ponto e vírgula, pra não complicar com UTF8.

Código: Selecionar todos

   FOR EACH cText IN { ";;", ";", "|" }
      ::aInfAdic[ "infCpl" ]     := StrTran( ::aInfAdic[ "infCpl" ], cText, hb_Eol() )
      ::aInfAdic[ "infAdFisco" ] := StrTran( ::aInfAdic[ "infAdFisco" ], cText, hb_Eol() )
   NEXT
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
mga
Usuário Nível 1
Usuário Nível 1
Mensagens: 11
Registrado em: 17 Nov 2017 10:21
Localização: São Paulo

SEFAZCLASS - Logo na DANFE

Mensagem por mga »

Muito obrigado Sr José Quintas, e parabéns pelo trabalho com HBNFE é fantástico. :{ :{
Responder