Ver Mensaje Individual
  #4 (permalink)  
Antiguo 02/01/2011, 18:30
Pury
 
Fecha de Ingreso: julio-2010
Mensajes: 47
Antigüedad: 13 años, 8 meses
Puntos: 1
Respuesta: Problema con fpdf

Saque otro codigo de aqui: http://www.forosdelweb.com/f18/clase-fpdf-problemillas-702823/

Es el siguiente:
Código PHP:
<?php
//pa generar pdfs
require('fpdf.php');
define('FPDF_FONTPATH','font/');
//includes
include("../Connections/conn.php");
//obtenemos id tabla
//id tabla
$idt=$_GET['Id'];

//datos del juego
$tabla mysql_query("SELECT * FROM articulos where Id='$idt'");


while (
$registro mysql_fetch_array($tabla)) {
$juego=$registro['Articulo'];
//$categoria=$registro['categoria'];
//$trucos=$registro['truco'];
//$uploader=$registro['uploader'];
}

//pdf con codigo html ;)

//no tocar
class PDF extends FPDF
{
var 
$B;
var 
$I;
var 
$U;
var 
$HREF;

function 
PDF($orientation='P',$unit='mm',$format='A4')
{
//Llama al constructor de la clase padre
$this->FPDF($orientation,$unit,$format);
//Iniciación de variables
$this->B=0;
$this->I=0;
$this->U=0;
$this->HREF='';
}

function 
WriteHTML($html)
{
//Intérprete de HTML
$html=str_replace("\n",' ',$html);
$a=preg_split('/<(.*)>/U',$html,-1,PREG_SPLIT_DELIM_CAPTURE);
foreach(
$a as $i=>$e)
{
if(
$i%2==0)
{
//Text
if($this->HREF)
$this->PutLink($this->HREF,$e);
else
$this->Write(5,$e);
}
else
{
//Etiqueta
if($e[0]=='/')
$this->CloseTag(strtoupper(substr($e,1)));
else
{
//Extraer atributos
$a2=explode(' ',$e);
$tag=strtoupper(array_shift($a2));
$attr=array();
foreach(
$a2 as $v)
{
if(
preg_match('/([^=]*)=["\']?([^"\']*)/',$v,$a3))
$attr[strtoupper($a3[1])]=$a3[2];
}
$this->OpenTag($tag,$attr);
}
}
}
}

function 
OpenTag($tag,$attr)
{
//Etiqueta de apertura
if($tag=='B' || $tag=='I' || $tag=='U')
$this->SetStyle($tag,true);
if(
$tag=='A')
$this->HREF=$attr['HREF'];
if(
$tag=='BR')
$this->Ln(5);
}

function 
CloseTag($tag)
{
//Etiqueta de cierre
if($tag=='B' || $tag=='I' || $tag=='U')
$this->SetStyle($tag,false);
if(
$tag=='A')
$this->HREF='';
}

function 
SetStyle($tag,$enable)
{
//Modificar estilo y escoger la fuente correspondiente
$this->$tag+=($enable : -1);
$style='';
foreach(array(
'B','I','U') as $s)
{
if(
$this->$s>0)
$style.=$s;
}
$this->SetFont('',$style);
}

function 
PutLink($URL,$txt)
{
//Escribir un hiper-enlace
$this->SetTextColor(0,0,255);
$this->SetStyle('U',true);
$this->Write(5,$txt,$URL);
$this->SetStyle('U',false);
$this->SetTextColor(0);
}
}
//fin clase de pdf generator

//lo k kieras mostrar aqui
$html=' <a href="http://www.ejemplo.org">TodoTrucos.com tu web de trucos online</a><br><br><h2>Trucos de '.$juego.'</h2><br><br>';

$pdf=new PDF();
//Primera página
$pdf->AddPage();
$pdf->SetFont('Arial','',20);

//imagen yo la pondr en la variable $html
//$pdf->Image('logo.png',10,12,30,0,'','http://www.fpdf.org');

$pdf->SetLeftMargin(45);
$pdf->SetFontSize(14);
//codigo k escribe el html
$pdf->WriteHTML($html);
//sacar pdf
$pdf->Output();
?>


me genera el pdf pero no le da el formato al texto, ningun color, vinculos, ni demas...

que podria hacer para solucionar esto?

Muchas gracias desde ya.