Clipper On Line • Ver Tópico - conversão arquivo texto para rtf... e visualizar no fivewin

conversão arquivo texto para rtf... e visualizar no fivewin

Discussão sobre a biblioteca Fivewin - O Clipper para Windows.

Moderador: Moderadores

 

Re: conversão arquivo texto para rtf... e visualizar no fivewin

Mensagempor sygecom » 19 Dez 2008 01:26

Edgar, OLE ja vem implantado com o proprio xharbour, qual versão você esta usando ?
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
leonardodemachado@hotmail.com
Avatar de usuário

sygecom
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 6637
Data de registro: 21 Jul 2006 10:12
Cidade/Estado: Alvorada-RS
Curtiu: 1 vez
Mens.Curtidas: 75 vezes

Re: conversão arquivo texto para rtf... e visualizar no fivewin

Mensagempor rochinha » 19 Dez 2008 15:18

Amiguinhos

Olhando minhas pastas encontrei ole32.lib, oleaut32.lib, hbole.lib portanto voces devem procura-los nas pastas LIB do Harbour e BCC pois são nativas deles e não do Fivewin.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4209
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 499 vezes
Mens.Curtidas: 182 vezes

conversão arquivo texto para rtf... e visualizar no fivewin

Mensagempor asimoes » 30 Ago 2015 15:03

Achei interessante a função do Farlei e fiz alguma alterações:

L=Default alinhado a esquerda
R-Alinhado a direita
C-Centralizado
J-Justificado

Os parâmetros

1-Arquivo de entrada
2-Arquivo de saída, se não informado, terá o mesmo nome da entrada
3-Tamanho do arquivo de entrada
4-Alinhamento

Txt2Rtf( "CONTRATO.TXT", "CONTRATO-LEFT.TXT", 69, "L" )
Txt2Rtf( "CONTRATO.TXT", "CONTRATO-RIGHT.TXT", 69, "R" )
Txt2Rtf( "CONTRATO.TXT", "CONTRATO-CENTER.TXT", 69, "C" )
Txt2Rtf( "CONTRATO.TXT", "CONTRATO-JUSTIFY.TXT", 69, "J" )

FUNCTION Txt2Rtf( cArquivoIn, cArquivoOu, nColunas, cAlinha )
LOCAL cArqRtf, arq, arq_txt, cHandle
LOCAL cCaractere := space( 01 ), cLinha := space( 01 )
LOCAL lf := chr( 13 ) + chr( 10 )
   hb_DeFault(@cAlinha,'L')
   hb_DeFault(@cArquivoOu,cArquivoIn)
   // fs define o tamanho da fonte, para o Courier New é a metade
   // fs14 - fonte 7,0 - 136 colunas
   // fs23 - fonte 11,5 - 80 colunas
   // margl - margem esquerda
   // margr - margem direita
   // margt - margem superior
   // margb - margem inferior
   // criar um arquivo rtf com o mesmo nome
   cArqRtf := lower( left( cArquivoOu, len( cArquivoOu ) - 4 ) + ".rtf" )
   //cArqRtf := substr(time(),1,2)+substr(time(),4,2)+substr(time(),7,2)+".rtf"
   // acrescentar antes do texto os parâmetros rtf
   nHandle := fCreate( cArqRtf ) //fcreate( cArqRtf, 1 ) somente leitura
   cHandle := "{\rtf1\ansi\ansicpg1252\deff0\deflang1046{\fonttbl{\f0\fmodern\fprq1\fcharset0 Courier New;}{\f1\fswiss\fcharset0 Arial;}}" + hb_eol()
   cHandle += "\margl284\margr505\margt505\margb505" + hb_eol()
   
   //{\rtf1\ansi\deff0\nouicompat{\fonttbl{\f0\fnil\fcharset0 Courier New;}}
   //{\*\generator Riched20 10.0.10240}\viewkind4\uc1
   
   // \viewkind4\uc1\pard\qj\f0\ justificado
   // \viewkind4\uc1\pard\qc\f0\ centralizado
   // \viewkind4\uc1\pard\f0\    esquerda
   // \viewkind4\uc1\pard\qr\f0\ direita
   
   IF cAlinha = "L"
      cHandle+="{\*\generator Msftedit 5.41.15.1503;}\viewkind4\uc1\pard\f0\"
   ELSEIF cAlinha = "R"
      cHandle+="{\*\generator Msftedit 5.41.15.1503;}\viewkind4\uc1\pard\qr\f0\"
   ELSEIF cAlinha = "C"
      cHandle+="{\*\generator Msftedit 5.41.15.1503;}\viewkind4\uc1\pard\qc\f0\"
   ELSE
      cHandle+="{\*\generator Msftedit 5.41.15.1503;}\viewkind4\uc1\pard\qj\f0\"
   ENDIF
   
   IF nColunas == 136
      cHandle += "fs14 "
   ELSE
      cHandle += "fs23 "
   ENDIF
   fWrite( nHandle, cHandle )
   // Pega Linha por Linha do TXT e Transforma para RTF
   arq_txt := fOpen( cArquivoIn, 0 )
   WHILE .T.
      cCaractere := space( 01 )
      IF fRead( arq_txt, @cCaractere, 1 ) <> 1
         EXIT
      ENDIF
      IF ( cCaractere ) = chr( 13 )
         cLinha += "\par" + hb_eol()
         fWrite( nHandle, cLinha )
         cLinha := space( 01 )
         fSeek( arq_txt, 1, 1 )
         LOOP
      ENDIF
      IF cLinha = space( 01 )
         cLinha := cCaractere
      ELSE
         cLinha += cCaractere
      ENDIF
   ENDDO
   cHandle := "}"
   fWrite( nHandle, cHandle )
   fClose( nHandle )
   fClose( arq_txt )
RETURN Nil
►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)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4159
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 292 vezes
Mens.Curtidas: 208 vezes

conversão arquivo texto para rtf... e visualizar no fivewin

Mensagempor Kapiaba » 02 Jun 2016 11:21

Rochinha, links quebrados. abs.
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1483
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 284 vezes
Mens.Curtidas: 90 vezes

Anterior



Retornar para FiveWin

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 1 visitante


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro