Ver Mensaje Individual
  #7 (permalink)  
Antiguo 23/06/2008, 11:29
charlyta
 
Fecha de Ingreso: junio-2008
Mensajes: 291
Antigüedad: 15 años, 10 meses
Puntos: 9
Respuesta: Formatear texto fpdf

Muchas gracias por tu ayuda pero me tira error:


Código PHP:
<?php
require('fpdf.php');
define('FPDF_FONTPATH','font/');
include(
"conexion.php");
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&#37;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(
ereg('^([^=]*)=["\']?([^"\']*)["\']?$',$v,$a3))
                        
$attr[strtoupper($a3[1])]=$a3[2];
                
$this->OpenTag($tag,$attr);
            }
        }
    }
}

function 
OpenTag($tag,$attr)
{
    
//Etiqueta de apertura
    
if($tag=='B' or $tag=='I' or $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' or $tag=='I' or $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);
}
}



$result=@mysql_query('select CODI, NOMB, LIBRE from vells',$conexion);



    while(
$row =@mysql_fetch_array($result))  
{  
     
$pdf->WriteHTML($row['CODI']); 

$pdf->Output();  







$pdf=new PDF();

//Primera página
$pdf->AddPage();
$pdf->SetFont('Arial','',20);
$pdf->Write(5,'Para saber qué hay de nuevo en este tutorial, pulse ');
$pdf->SetFont('','U');
$link=$pdf->AddLink();
$pdf->Write(5,'aquí',$link);
$pdf->SetFont('');
//Segunda página

$pdf->SetLink($link);
$pdf->SetLeftMargin(45);
$pdf->SetFontSize(14);
$pdf->AddPage();
$pdf->WriteHTML($html);
$pdf->Output();

?>