Ir para o conteúdo
Chikita

imprimir html em fpdf

Mensagens Recomendadas

Chikita

Boa tarde,

Estou a tentar imprimir uma pauta de avaliação em fpdf. O cabeçalho e o rodapé já consegui, mas quando chego a parte das tabelas e mando imprimir o html, imprime-me o conteúdo mas não imprime no formato pretendido.

Estive a procurar por muitos sites e já tenho a função WriteHTML, sigo todos os passos mas não me imprime o formato! Em baixo é o que tenho para imprimir.

Alguém que me consiga ajudar nisto por favor??

//resto do ficheiro

$html1="<table border='3'>
<tr>
<td width='200' height='30'>cell 1</td><td width='200' height='30' bgcolor='#D0D0FF'>cell 2</td>
</tr>
<tr>
<td width='200' height='30'>cell 3</td><td width='200' height='30'>cell 4</td>
</tr>
</table>";


$pdf=new PDF('L', 'mm', 'A4');
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Times','',8);
$pdf->Ln(10);

$pdf->WriteHTML($html1);
$pdf->Output();

Editado por Rui Carlos

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pikax

Podes sempre criar a tabela 'a mao, ou e' mesmo necessario criar por html?

EDIT:

Se criares um HTML valido, nao funciona?

$html1="<html><head></head><body><table border='3'>
<tr>
<td width='200' height='30'>cell 1</td><td width='200' height='30' bgcolor='#D0D0FF'>cell 2</td>
</tr>
<tr>
<td width='200' height='30'>cell 3</td><td width='200' height='30'>cell 4</td>
</tr>
</table>
</body>
</html>";

Editado por pikax

Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Chikita

Não posso fazer à mão porque é demasiado complexa e tem necessariamente ligação à base de dados, com imensos registos...

Eu estou a tentar ainda com exemplos simples, pois ele imprime as celulas mas não imprime o formato html e tem de se ser mesmo porque depende do numero de alunos da pauta por exemplo...

Mesmo que eu meta o:

$html1="<html><head></head><body><table border='3'>
<tr>
<td width='200' height='30'>cell 1</td><td width='200' height='30' bgcolor='#D0D0FF'>cell 2</td>
</tr>
<tr>
<td width='200' height='30'>cell 3</td><td width='200' height='30'>cell 4</td>
</tr>
</table>
</body>
</html>";

não funciona na mesma :(

O HTML2PDF não serev para imprimir apenas páginas web?? Já andei a pesquisar, mas realmente eu tenho de construir a tabela de acordo com as turmas, tem de ser tudo gerivel...

Não sei se estou a fazer confusão :s

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Cerzedelo

Não, o HTML2PDF é uma modificação do fpdf, para poder imprimir html. O programa não converte html, simplesmente permite que se imprima especificações do html. ver exemplo:

<?php
$content = "
<page>
<h1>Exemple d'utilisation</h1>
<br>
Ceci est un <b>exemple d'utilisation</b>
de <a href='http://html2pdf.fr/'>HTML2PDF</a>.<br>
</page>";
require_once(dirname(__FILE__).'/html2pdf/html2pdf.class.php');
$html2pdf = new HTML2PDF('P','A4','fr');
$html2pdf->WriteHTML($content);
$html2pdf->Output('exemple.pdf');
?>

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Chikita

Já consegui por a imprimir HTML com FPDF, muito obrigada!! Mas agora continuo com um problema... é que eu quero imprimir uma tabela com rowspan e coldspan, e ele imprime a tabela mas não reconhece os atributos!!

Há soluções para poder reconhecer?! :/

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.