Caracteres desconfigurados na conversão p/PDF

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

Moderador: Moderadores

Softwhouse
Usuário Nível 3
Usuário Nível 3
Mensagens: 324
Registrado em: 07 Dez 2011 18:44
Localização: Porto Alegre/RS

Caracteres desconfigurados na conversão p/PDF

Mensagem por Softwhouse »

Estou usando a função abaixo, retirada aqui no fórum, para converter um arquivo texto em PDF. Uso a função Hb_OemToAnsi() para converter os caracteres porém alguns saem incorretos. Existe mais alguma configuração para acertar isso ?

Código: Selecionar todos

***************************
Function GERA_PDF(cARQ)
***************************
cText := MemoRead( cArq )
nLines := MlCount( cText, 150 )

cFileToSave:= '&cPath\OS.PDF'  // nome do PDF

   Private page, height, width, def_font, font
   Private pdf := HPDF_New()

   page := HPDF_AddPage(pdf)
   height := HPDF_Page_GetHeight(page)
   width  := HPDF_Page_GetWidth(page)

   def_font := HPDF_GetFont( pdf, "Helvetica", NIL )
   HPDF_Page_BeginText( page )
   HPDF_Page_MoveTextPos( page, 10, height - 10 )

   vCONT=0
   for nA := 1 to nLines
      cLinha := memoline( cText, 150, nA, 1, .F. )

      cLinha:=Hb_OemToAnsi(cLinha)
          
      font := HPDF_GetFont( pdf, "Courier" , NIL )
      HPDF_Page_SetFontAndSize( page, def_font, 7 )

      HPDF_Page_SetFontAndSize( page, font, 7 )
      HPDF_Page_ShowText( page, cLinha )
      HPDF_Page_MoveTextPos( page, 0, -10 )

      vCONT=vCONT+1
      IF vCONT=80
         page := HPDF_AddPage(pdf)
         HPDF_Page_SetLineWidth(page, 1)
         HPDF_Page_BeginText( page )
         HPDF_Page_MoveTextPos( page, 10, height - 10 )
         vCONT = 0
      ENDIF
   next

   HPDF_Page_EndText( page )
   HPDF_SaveToFile( pdf, cFileToSave )

   HPDF_Free( pdf )

Return
Fernando
Responder