Página 1 de 1

Conversão de arquivo texto para PDF - quebra de página

Enviado: 25 Jul 2007 16:45
por FARLEY RIBEIRO
Olá colegas..

estou precisando converter um arquivo texto para PDF.. mas no momento da quebra da página está dando errado...
foram usados os arquivos do contrib do xharbour...
o arquivo texto possue pagina com mais ou menos 62 linhas...

#include "inkey.ch"
#define CR chr(13)
#define LF chr(10)

function main
parameters arqtexto_

local ahead := {" "," ","SIAC",PADC("Alfa Automa‡Æo Comercial", 80)," "," "} // {"....","....."} cabeçalho
Local aData :={}, handle, primeira_linha, var_imp, arquivo, arq_, n

arq_ := netname() + ".pdf" // nome do arquivo pdf a ser gerado
arquivo = arqtexto_ // arquivo texto a ser importado
primeira_linha := .t.

* Cria documento
pdfNew(arq_, 6, 842, 595, 1, 1,,, {"Siac","Siac","Siac","Siac","Siac"} )

// Inicializa a pagina...
pdfstartpage(ahead,.t.)

// leitura do arquivo texto e tratamento do mesmo...
handle := fopen(arquivo)
if ferror() <> 0
return .f.
endif

var_imp = ''
do while freadln(handle,@var_imp,512)
if substr(var_imp, 7, 5) = "EJECT" // linha para identificar salto pagina
pdfdrawpage(aData)
pdfstartpage(ahead,.t.) // não começa na primeira linha da nova pagina
aData := {}
var_imp := ''
primeira_linha = .t.
loop
endif
loop
endif
aadd(aData, var_imp)
enddo
if !empty(var_imp)
Aadd(aData, var_imp)
endif
fclose(handle)
// pdfdrawpage(aData,{||pdfstartpage(ahead,.t.)})
pdfdrawpage(aData)
pdfendpage()
pdfend()

return (.t.)

Por favor conto com a ajuda de vcs

Grato

Farley Ribeiro
MSN : farleyribeiro@yahoo.com.br
Email : farleyribeiro2006@gmail.com

Enviado: 25 Jul 2007 22:14
por sygecom
No lugar do segundo pdfstartpage(ahead,.t.) use:
pdfnewpage( szTitleT, szFile )...alias...de uma olhada na fonte pdfhbdocs.prg...e de uma olhada tb. em HB_PDFWRITETEXT( cText ).

Abraços
Leonardo Machado

Enviado: 26 Jul 2007 14:21
por sygecom
Se quiser...posso te mandar a os Prg que contem as funções ou a LIB compilada...