Autor Tópico: Salvar pagina externa em PDF  (Lida 5108 vezes)

Alexandre Luiz

  • Iniciante
  • **
  • Mensagens: 96
    • Email
Salvar pagina externa em PDF
« Online: Janeiro 10, 2014, 09:31:11 am »
Prezados,  bom dia!

Preciso salvar uma página externa em PDF , sem  a necessidade de exibir ao usuário.
A página externa tem duas opções para abrir, em HTML, onde precisaria imprimir em PDF e salvar como arquivo, ou abrir ela já em PDF, o que eu precisaria somente salvar.
Os colegas tem alguma dica, atualmente estou abrindo a página já em PDF em um iframe escondido na aplicação e tentando salva-lo. Mas sem sucesso.

Abraço
« Última modificação: Janeiro 14, 2014, 09:33:24 am por Alexandre Luiz »

Alexandre Luiz

  • Iniciante
  • **
  • Mensagens: 96
    • Email
Re:Salvar pagina extrena em PDF
« Responder #1 Online: Janeiro 10, 2014, 04:19:13 pm »
Pensando em alternativas

1- Com o FPDF é possivel imprimir a tela da aplicação atual ?

2- Na opção PDF da aplicação consulta , é possivel  chamar a imperssão pdf direto via código ?




paulomarcelo

  • Expert
  • *****
  • Mensagens: 638
    • Email
Re:Salvar pagina extrena em PDF
« Responder #2 Online: Janeiro 10, 2014, 04:55:06 pm »
Se você for na opção exportação da aplicação consulta e depois Configuração do PDF tem esta opção Gerar PDF Diretamente   marca SIM nela pois ela serve para Abrir o arquivo PDF gerado sem a necessidade de exibição de uma página intermediária com um link para o arquivo.


FredKeyster

  • Expert
  • *****
  • Mensagens: 1702
  • DEWENNINMEN
    • Email
Re:Salvar pagina extrena em PDF
« Responder #3 Online: Janeiro 10, 2014, 06:29:38 pm »
Se for mexer diretamente com o FPDF no Blank, isso se resolve no $pdf->Output();

Segue exemplos.

http://blog.startq.com/index.php/2011/10/25/fpdf-output-methods-for-pdf-files-in-php/
F. A.
Analista de Sistemas

saulobborges

  • Expert
  • *****
  • Mensagens: 1392
    • SGi Sistemas
    • Email
Re:Salvar pagina extrena em PDF
« Responder #4 Online: Janeiro 10, 2014, 07:57:03 pm »
Se for uma consulta que vc precisa que seja aberta diretamente como pdf faça o seguinte:

1 - Em Configurações coloque a opção Gerar PDF
2 - No menu vá na opção Exportação e nas opções do pdf escolha Gerar PDF Diretamente.

Pronto!

Alexandre Luiz

  • Iniciante
  • **
  • Mensagens: 96
    • Email
Re:Salvar pagina extrena em PDF
« Responder #5 Online: Janeiro 13, 2014, 07:54:41 am »
Prezados bom dia!

Paulo, Saulo,

Se você for na opção exportação da aplicação consulta e depois Configuração do PDF tem esta opção Gerar PDF Diretamente   marca SIM nela pois ela serve para Abrir o arquivo PDF gerado sem a necessidade de exibição de uma página intermediária com um link para o arquivo.
Se for uma consulta que vc precisa que seja aberta diretamente como pdf faça o seguinte:

1 - Em Configurações coloque a opção Gerar PDF
2 - No menu vá na opção Exportação e nas opções do pdf escolha Gerar PDF Diretamente.

Pronto!



Já está desta forma, porem gostaria de algo que ao entrar na aplicação(onload, etc..) a impressão fosse realizada sem a necessidade de intervenção do usuário.
Exemplo prático do que estou tentando fazer e entrar na aplicação e imprimir a página do google por exemplo.
Porque posso correr o risco do usuário não imprimir a página, o que para a atividade é obrigatório.


Se for mexer diretamente com o FPDF no Blank, isso se resolve no $pdf->Output();

Segue exemplos.

http://blog.startq.com/index.php/2011/10/25/fpdf-output-methods-for-pdf-files-in-php/


Fred ,

Também tentei desta maneira , porem como estou tentando imprimir uma página externa como informo ao FPDF para imprimir a pagina atual(com iframe). Porque os exemplo que encontrei é preciso determinar valor por matriz exemplo $pdf-> cell(10,10, "meu texto")


Talvez eu esteja complicando, então pergunto: Como os colegas salvariam uma página externa em pdf sem intervenção do usuário?

Correndo contra o tempo, quarta feria é dia da apresentação do projeto para homologação..... se não tiver jeito acredito que farei o usuário salvar a pagina com um nome padrão e validar se o arquivo esta no diretório.

No mais, uma ótima semana a todos.



Wennys Carlos

  • Avançado
  • ****
  • Mensagens: 254
    • Email
Re:Salvar pagina extrena em PDF
« Responder #6 Online: Janeiro 13, 2014, 09:26:02 am »
Alexandre, tenta isso no evento Onload:

Código: [Selecionar]
echo "<script>window.print();</script>";

Esse comando fará com que chame automaticamente a janela de impressão do navegador.

Se estiver configurada uma impressora PDF, é só mandar imprimir(salvar).
« Última modificação: Janeiro 13, 2014, 09:30:25 am por Wennys Carlos »
Wennys Carlos

Alexandre Luiz

  • Iniciante
  • **
  • Mensagens: 96
    • Email
Re:Salvar pagina extrena em PDF
« Responder #7 Online: Janeiro 13, 2014, 02:50:16 pm »
Alexandre, tenta isso no evento Onload:

Código: [Selecionar]
echo "<script>window.print();</script>";

Esse comando fará com que chame automaticamente a janela de impressão do navegador.

Se estiver configurada uma impressora PDF, é só mandar imprimir(salvar).

Quase isso Wennys, desta forma ainda dependo do usuário.

A url que tenho da web já gera o arquivo pdf , eu precisaria somente salvar o arquivo.


Wennys Carlos

  • Avançado
  • ****
  • Mensagens: 254
    • Email
Re:Salvar pagina extrena em PDF
« Responder #8 Online: Janeiro 13, 2014, 03:20:53 pm »
Como tá sendo gerado esse teu pdf?

É via FPDF? Se for, é só usar $pdf->Output("caminho_onde_quer_salvar.pdf", "F");

Se não for via FDPF, desconheço como fazer.
Wennys Carlos

FredKeyster

  • Expert
  • *****
  • Mensagens: 1702
  • DEWENNINMEN
    • Email
Re:Salvar pagina extrena em PDF
« Responder #9 Online: Janeiro 13, 2014, 10:00:31 pm »
Pelo que entendi, ele esta usando o ReportPDF. Ainda prefiro o FPDF puro em uma Blank, pois isso já teria sido resolvido.
F. A.
Analista de Sistemas

Wennys Carlos

  • Avançado
  • ****
  • Mensagens: 254
    • Email
Re:Salvar pagina extrena em PDF
« Responder #10 Online: Janeiro 13, 2014, 10:24:27 pm »
Pois é, Fred.

Também prefiro usar a FPDF 'na mão'.
Wennys Carlos

Alexandre Luiz

  • Iniciante
  • **
  • Mensagens: 96
    • Email
Re:Salvar pagina extrena em PDF
« Responder #11 Online: Janeiro 14, 2014, 09:17:52 am »
Bom dia nobres,

Então, eu tentei o FPDF no blank mas pelo que percebi ele atende se for informado linha a linha, salvo leigo que sou.
Consegui fazer salvar a pagina em html , porem o ideal seria em pdf. segue exemplo com site do terra.(externo) que é o meu caso.
Da forma abaixo ao entrar no form automaticamente  salvo o html da pagina sem nenhuma interferência do usuário e sem ele saber.

Alguma ideia de fazer parecido com o abaixo mas em pdf ?
Na minha $url tanto posso direcionar a uma página html e depois transformar em pdf.  www.site.com.br/documento.html?documento='id' ,eu precisaria converter e salvar.

Ou posso direcionar para que o documento seja convertido, e eu preciso só salvar. assim www.site.com.br/converterdocumentoPDF.html?documento='id' , ele já converte o pdf ,eu precisaria só salvar.

Mas nos dois casos eu não consegui.

Infelizmente em PHP e srciptcase ainda estou engatinhando, se fosse em basic ou pascal estava resolvido. kkkk

Se não der certo , vou ficar com o documento salvo em html .
Mas acredito que as mentes ativas tenham uma solução .

Abraços...

Form> onload
Código: [Selecionar]
$url = 'http://www.terra.com.br';// site de exemplo
$dadosSite = file_get_contents($url);
ob_start();
include($url);
$out = ob_get_contents();
ob_end_clean();
$dir = 'c:/';
$filename = 'SalvoEmTexto.html';
$local=$dir.$filename;
touch($local);
$fp=fopen($local,"w");
fputs($fp,"$out");
fclose($fp);

Alexandre Luiz

  • Iniciante
  • **
  • Mensagens: 96
    • Email
Re:Salvar pagina extrena em PDF
« Responder #12 Online: Janeiro 14, 2014, 09:36:09 am »
Bom dia Fred,

Tentei o ReportPDF também, mas realmente ele é muito limitado e não atende para que preciso.


Pelo que entendi, ele esta usando o ReportPDF. Ainda prefiro o FPDF puro em uma Blank, pois isso já teria sido resolvido.

FredKeyster

  • Expert
  • *****
  • Mensagens: 1702
  • DEWENNINMEN
    • Email
Re:Salvar pagina externa em PDF
« Responder #13 Online: Janeiro 14, 2014, 08:04:34 pm »
Citar
Então, eu tentei o FPDF no blank mas pelo que percebi ele atende se for informado linha a linha...

Não entendi o que você quis dizer com "linha a linha".

Alexandre, faz o seguinte, coloca o modelo dessa "pagina" pra gente ver!

Outra dúvida, essa "página" seria uma página html normal de um site? Ou um "Relatório" PDF ?
F. A.
Analista de Sistemas

Alexandre Luiz

  • Iniciante
  • **
  • Mensagens: 96
    • Email
Re:Salvar pagina externa em PDF
« Responder #14 Online: Janeiro 15, 2014, 01:07:02 pm »
Fred boa tarde! Primeiramnte obrigado pelo interesse.

Pelo que percebi o Fpdf é necessário informar $pdf-> cell(10,10, "meu texto") , no meu caso queria converter  tudo o que esta na aplicação blank onde eu tinha  um Iframe carregado da pagina externa. Tem algum comando que converta toda aplicação em PDf ?(este foi um teste que fiz, hoje não esta mais assim.)

Citar
Alexandre, faz o seguinte, coloca o modelo dessa "pagina" pra gente ver!

Infelizmente não poso postar  o modelo da pagina porque contem dados de cliente. Mas pode testar com qualquer pagina.
 Exemplo, como vc converteria para pdf a página do www.terra ,quando a aplicação blank (onexecute) sem que o usuario veja?

Citar
Outra dúvida, essa "página" seria uma página html normal de um site? Ou um "Relatório" PDF ?
A página externa posso abrir no browser das duas formas "página html" ou Relatório PDF.
O que ficar mais fácil para salvar o pdf no servidor esta bom . rs

Esquecendo tudo acima kkkk
O que quero fazer é exatamente  o codigo abaixo, porem ao invés de salvar em html converter em pdf.


Aplicação Blank > onexecute
Código: [Selecionar]
$url = 'http://www.terra.com.br';// site de exemplo
$dadosSite = file_get_contents($url);
//include($url);
$dir = 'c:/';
$filename = 'Nome_do_documento.html';
$local=$dir.$filename;
touch($local);
$fp=fopen($local,"w");
fputs($fp,"$dadosSite ");
fclose($fp);

Abraço.