Exemplo com hbvpdf (pdf)

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

Moderador: Moderadores

Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Exemplo com hbvpdf (pdf)

Mensagem por asimoes »

Exemplo de uso com a lib hbvpdf (pasta hb30\examples\hbvpdf) tem que compilar para gerar a lib
Copiar a lib para a pasta \lib\win\mingw ou bcc

Código: Selecionar todos

FUNCTION Gera_PDF(cARQ)
   FT_FUSE( cArq ) //
   aReport := PdfInit() //Obrigatório
   pdfOpen("ASAPREV.PDF", Len(cArq), .t.)
   //Tipo papel: LETTER, A4
   //Orientação: P-Portrait ou L-Landscape
   //Fonte: Courier, Arial...
   //Estilo: 1 Normal, 2 Bold, 3 Italic, 4 BoldItalic
   //pdfNewPage( Tipo Papel, Orientação, Espaçamento (6 ou 8), Fonte,Estilo, Tamanho Fonte)  
   pdfNewPage( "LETTER", "P", 6, "Courier New",, 6.5)
   nLinha:=10
    DO WHILE !FT_FEOF()
      cLinha:=FT_FREADLN()
      lEject:=(Chr(12) $ cLinha) // Procura caracter EJECT
      cLinha:=StrTran( cLinha, Chr(12)) // Elimina caracter EJECT
      cLinha:=StrTran( cLinha, Chr(13))
      pdfAtSay( cLinha, nLinha, 0, "M" )
      nLinha+=3
      FT_FSKIP()
      IF lEject .AND. !FT_FEOF()
         pdfNewPage( "LETTER", "P", 6, "Courier New",, 6.5 )
         nLinha:=10
      ENDIF
   ENDDO
   FT_FUSE()
   pdfClose()
   Abre_Arquivo("ASAPREV.PDF") //Visualizar o PDF
RETURN Nil

FUNCTION Abre_Arquivo( cHelpFile )
LOCAL nRet, cPath, cFileName, cFileExt
   HB_FNameSplit( cHelpFile, @cPath, @cFileName, @cFileExt )
   nRet := _OpenHelpFile( cPath, cHelpFile )
RETURN nRet

//----------------------------------------------------------------------//
//Função para abrir o PDF colei de um exemplo do SYGECOM
//----------------------------------------------------------------------//
#pragma BEGINDUMP
   #pragma comment( lib, "shell32.lib" )
   #include "hbapi.h"
   #include <windows.h>
   HB_FUNC( _OPENHELPFILE )
   {
     HINSTANCE hInst;
     LPCTSTR lpPath = (LPTSTR) hb_parc( 1 );
     LPCTSTR lpHelpFile = (LPTSTR) hb_parc( 2 );
     hInst = ShellExecute( 0, "open", lpHelpFile, 0, lpPath, SW_SHOW );
     hb_retnl( (LONG) hInst );
     return;
   }
#pragma ENDDUMP
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Responder