Página 1 de 1
Exemplos de XHarbour - GERA_PDF
Enviado: 02 Mai 2011 22:12
por billy1943
Como estou interessado em aprender um pouco mais sobre o
XHarbour/Harbour, baixei o
Instalador 1.2.1 em Downloads, postado pelo
Sygecom, e adaptei o exemplo de
Gera_PDF, para uso conjunto com o meu
ERP.
Assim preparei o arquivo texto que vai servir de entrada para o programa em XHarbour gerar o
.PDF correspondente.
Deve ter algum erro no seguinte trecho do fonte
PDF.PRG, abaixo listado, onde são geradas as linhas gravadas no arquivo temporário e emite o relatório já em
.PDF.
Ele está voltando à linha 1, e, assim por exemplo, se o relatório tiver 80 linhas, ele imprime a primeira folha com 60 linhas, volta à linha 1 e emite novamente a mesma folha.
A dúvida é:
"Posso retirar o teste de IF ccont == 60 ?"
Pois em relatórios pelo
WORD não existe a preocupação de contagem de linhas, pois o
Word reparte o texto de acordo com as suas especificações (fontes, tamanho de página, etc.)
*
// trecho do fonte
Código: Selecionar todos
*****************************************************************************
do while ! eof()
clinha := linha // Busca linha de impressao
ccont := ccont + 1
aadd(amsg,clinha)
if ccont == 60 //posso retirar da linha 8 até 13?
pdfdrawpage(amsg)
pdfendpage()
pdfstartpage( {vautor}, .t.)
ccont := 0
endif
dbskip()
enddo
pdfdrawpage(amsg)
pdfendpage()
pdfend()
abre_arquivo( cfile3 )
return nil
.....
Re: Exemplos de XHarbour - GERA_PDF
Enviado: 03 Mai 2011 19:06
por sygecom
Billy,
Para que todos entenda post o codigo completo que ajusto no exemplo para você como estou atualmente.
Re: Exemplos de XHarbour - GERA_PDF
Enviado: 03 Mai 2011 22:15
por billy1943
Oi, Sygecom
Eu fiz pequenas alterações no fonte para poder utilizá-lo em conjunto com o meu ERP, sendo a principal que passo o nome do arquivo texto gerado pelo meu sistema, na forma de parâmetro para o programa em Xharbour.
Esse arquivo não tem nenhum caracter de controle, similar a quando se usa o NODOSIMP.EXE.
O interessante também para outros colegas que poderiam usar o aplicativo gerado, seria saber quais as especificações para o relatório, tais como:
- fontes que poderiam ser usados
- tamanho de caracteres
- tamanho da linha
etc,
Código: Selecionar todos
*************
FUNCTION main
*************
parameter arq_texto
private amsg, cimg
amsg := {}
set(105,1)
set(106,1)
pospto := at(".", arq_texto)
cfile1 := substr(arq_texto, 1, pospto - 1)
cfile1 += ".pdf"
cfile3 := cfile1
varq := {}
aadd( varq, {"linha","C",200,0} )
dbcreate("temp_pdf.dbf", varq)
vautor := "NOME DA EMPRESA"
use temp_pdf new shared
append from (arq_texto) sdf
pdfnew(cfile3,6,842,595,1,1,,,{vautor,vautor,vautor,vautor,vautor}) // esse é o que eu uso
pdfstartpage( {vautor}, .t. )
hb_setlandscape(.t.)
dbgotop()
ccont := 0
do while ! eof()
clinha := linha
ccont := ccont + 1
aadd(amsg,clinha)
if ccont == 60
pdfdrawpage(amsg)
pdfendpage()
pdfstartpage( {vautor}, .t.)
ccont := 0
endif
dbskip()
enddo
pdfdrawpage(amsg)
pdfendpage()
pdfend()
abre_arquivo( cfile3 )
return nil
FUNCTION abre_arquivo( chelpfile )
local nret, cpath, cfileName, cfileExt
hb_fnamesplit( chelpfile, @cpath, @cfilename, @cfileext )
nret := _openhelpfile( cpath, chelpfile )
return nret
#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
Re: Exemplos de XHarbour - GERA_PDF
Enviado: 05 Mai 2011 11:27
por billy1943
Como poderia ser de grande utilidade para nossos colegas que usam impressão para formatos .PDF, venho solicitar a quem tenha como exemplicar os parametros da função
PDFNEW, abaixo, da
PDFLIB.LIB.
Essa função está no programa
PDF.PRG nos exemplos do
Xharbour, pasta
GERA_PDF.
Exemplo constado (trecho):
Código: Selecionar todos
pdfnew(cfile3,6,842,595,1,1,,,{vautor,vautor,vautor,vautor,vautor}) // esse é o que eu uso
Por experimentação, descobri que os parametros
842 e
595 não podem ser mudados, sob pena de erro de execução.
O parametro logo após o nome do arquivo de entrada, no caso
cfile3, significa o tamanho da fonte, podendo ser
5,6,7...
Agora ficam necessários saber os outros, para podermos controlar o fonte, salto de formulário, etc.
Quem souber onde conseguí-los os usuários interessados irão agradecer.
Re: Exemplos de XHarbour - GERA_PDF
Enviado: 05 Mai 2011 14:28
por billy1943
Complementando o tópico acima, em pesquisa, apurei que os parametros 842 e 595 referem-se ao formulário A4, ou seja não podemos mudar o papel, no exemplo dado, e que são as medidas respectivas a 29,7 cm e 21,0 cm;
Como está no exemplo 842 e 595 a impressão sai em Landscape.
Logicamente existem outros valores relativos aos demais formatos, mas precisaríamos ter acesso a todo o manual de referência da PDFLIB.
Exemplos de XHarbour - GERA_PDF
Enviado: 08 Ago 2012 23:14
por maronis
Olá.
Acompanhei a discussão sobre a pdflib e o gera_pdf.prg.
Estou tentando utilizar a pdflib e o gera_pdf como ponto de partida para meu sistema. A compilação esta ok, a lib é gerada e o sistema compila sem problemas. Na hora de acionar as funções da pdflib estou tendo um erro na chamada da função PdfStartPage( {vAUTOR} , .T. ) de dentro do gera_pdf
Error BASE/1004 Class 'NIL' has no exported method: PDFNEWPAGE
Algum de vocês já passou por isto? Alguma idéia de como resolver este problema?
Orbigado.
Exemplos de XHarbour - GERA_PDF
Enviado: 19 Mai 2013 23:56
por lugab
Billy, bom dia...
Estou agora na batalha, a estudar este mesmo exemplo de GERA_PDF , q vc postou a quase um ano..
De antemão, saiba q descobri esse tpc só hoje , e , desde já agradeço pelas postagens q vc colocou até o momento, pois elas já me ajudaram bastante.
Agora, tb estou precisando de mais informaçãoes sobre os parâmteros da PDFLIB e gostaria de saber o q mais vc conseguiu de dicas sobre esses parâmetros, e que pode
compartilhar conosco..
O q quer q seja de informação, será muito util, pq eu não sei nada-de-nada, ainda..
Enfim, depois q eu consegui o basicão, que é compilar essa rotina dentro do meu sistema, aí eu vou partir pra aprimorar ele , com recursos do tipo:
1-Como quebrar páginas com exatidão
2-como colocar um cabeçalho e um rodapé
3-como colocar um logotipo e quais os tipos possíveis
4-Como negritar/sublinhar/condensar uma determinada linha
Grato,
Gabriel
Exemplos de XHarbour - GERA_PDF
Enviado: 16 Abr 2015 11:01
por burel
Bom dia pessoal, estou utilizando a biblioteca PDFLIB.LIB, funcionou muito bem de primeira, porém, agora preciso utilizar alguns parâmetros como retirada do espaço acima da página reservada para o cabeçalho, centralizar o texto na página, posicionando a tabulação mais a direita e alteração do tipo da fonte.
Testei altera os parâmetros em: PdfNew(cFileToSave,7,842,595,1,1,,,) mas apenas a alteração do tamanho de fonte, no segundo parâmetro que me retornou um resultado diferente, os 2 último: ",1,1,,," não alterou.
Esta pedlib.lib é muito boa mesmo, mas preciso da documentação dela para configurar os parâmetros de acordo com as minha necessidades.
Alguém tem esta documentação?
agradeço a atenção,
Abraço,
Eduardo
Exemplos de XHarbour - GERA_PDF
Enviado: 09 Mar 2022 11:47
por Linguagemclipper
Tem como eu converter um objeto Win32prn (antes de dar o :endDoc) em arquivo PDF?
Exemplos de XHarbour - GERA_PDF
Enviado: 19 Mar 2022 18:22
por lucimauro
Voce pode instalar uma impressora PDF e direcionar a impressão que será gerado um PDF, não se resolveria seu problema.
Exemplos de XHarbour - GERA_PDF
Enviado: 17 Mai 2022 22:04
por Linguagemclipper
lucimauro escreveu:Voce pode instalar uma impressora PDF e direcionar a impressão que será gerado um PDF, não se resolveria seu problema.
Isso eu já faço... uso o PDFCreator
Queria não depender dele.
Exemplos de XHarbour - GERA_PDF
Enviado: 18 Mai 2022 09:12
por Itamar M. Lins Jr.
Olá!
Queria não depender dele.
Depois de usar para o básico, migrei 95% dos relatórios e gráficos(Charts via Api do GOOGLE) para HTML.
Temos exemplos na internet, tudo que temos na internet é em HTML, e a conversão para PDF pelo Chrome/Edge via linha de comando ou pelo próprio navegador. É unir o que há de mais avançado no momento para leiautes de relatórios e todo tipo de apresentação via navegadores.
Saudações,
Itamar M. Lins Jr.
Exemplos de XHarbour - GERA_PDF
Enviado: 19 Mai 2022 10:11
por Mario Mesquita
Bom dia a todos.
Também uso o PDFCreator, é muito bom mas sempre tem o problema das impressoras virtuais serem desconfiguradas, o programa ser apagado, etc.
Opcionalmente, uso a HaruPDF, está no pacote do Harbour ou da MiniGui, agora não lembro. Tem exemplos de uso aqui no forum.
Saudações,
Mario.
Exemplos de XHarbour - GERA_PDF
Enviado: 02 Jun 2022 13:55
por Linguagemclipper
Esperava que tivesse algo do Harbour na wiki da lib Haru:
https://github.com/libharu/libharu/wiki/Bindings
Exemplos de XHarbour - GERA_PDF
Enviado: 02 Jun 2022 14:28
por JoséQuintas
Linguagemclipper escreveu:Esperava que tivesse algo do Harbour na wiki da lib Haru
O Harbour segue a harupdf, é só olhar o manual da harupdf.
Que eu me lembre, a OOHG tem uma lib própria pra usar mesmos comandos e sair em Excel, Winprn, harupdf, html, etc., talvez dê pra ver como ela faz pra usar de base na conversão, ou até usá-la diretamente.
Teria a opção de talvez salvar como imagem e incluir a imagem no PDF.
Mas sei lá... codificar direto em PDF acho que seria o mais prático, já que hoje em dia tudo visualiza e imprime PDF.