1. ¿Cuál es exactamente el tipo de licencia de FPDF? ¿Existen restricciones de uso?
FPDF es liberado bajo una licencia permisiva: no hay restricción de uso. Usted puede integrarlo libremente en su aplicación (comercial o no), con o sin modificaciones.2. Encuentro el siguiente error cuando intento generar un PDF: Some data has already been output, can't send PDF file
Usted no debe enviar nada al navegador, excepto el propio PDF: ningún HTML, espacio o retorno de carro. Un caso común es tener una línea o espacio en blanco extra al final del script incluido.ob_end_clean();
3. Caracteres acentuados son reemplazados por algunos caracteres extraños como é.
No utilice codificación UTF-8. La codificación estándar de fuentes en FPDF es windows-1252. Es posible realizar una conversión con iconv:$str = iconv('UTF-8', 'windows-1252', $str);
$str = mb_convert_encoding($str, 'windows-1252', 'UTF-8');
4. Intento incluir el símbolo del euro, pero no funciona.
Las fuentes estándares tiene el carácter euro en la posición 128. Puede definir una constante como esta para su comodidad:define('EURO', chr(128));
5. Intento mostrar una variable en el método Header pero no se imprime nada.
Tienes que utilizar la palabra claveglobal
para acceder a las variables globales, por ejemplo:
function Header()
{
global $title;
$this->SetFont('Arial', 'B', 15);
$this->Cell(0, 10, $title, 1, 1, 'C');
}
$title = 'Mi Título';
function Header()
{
$this->SetFont('Arial', 'B', 15);
$this->Cell(0, 10, $this->title, 1, 1, 'C');
}
$pdf->title = 'Mi Título';
6. He definido los métodos Header y Footer en mi clase PDF, pero no se muestra nada.
Tiene que crear un objeto de la clase PDF, no de la FPDF:$pdf = new PDF();
7. No consigo que los saltos de línea funcionen. Pongo \n en la cadena para MultiCell, pero no funciona.
Debe usted utilizar comillas dobles ("), no simples ('), para la cadena.8. Uso jQuery para generar el archivo PDF pero éste no se muestra.
No uses a AJAX request para obtener el PDF.9. Dibujo un marco con dimensiones muy precisas pero, cuando lo imprimo, noto algunas diferencias.
Respecto a las dimensiones, seleccione "Ninguno" para el ajuste de escala de página en lugar de "Reducir al área de impresión" en el cuadro de diálogo Imprimir.10. Me gustaría usar toda la superficie de la página, pero cuando imprimo siempre aparecen márgenes. ¿Cómo puedo deshacerme de ellos?
Todas las impresoras tienen márgenes físicos (dependiendo del modelo). Por tanto, es imposible quitarlos e imprimir en la totalidad del papel.11. ¿Cómo puedo poner un fondo en mi PDF?
Para una imagen, invoque Image() en el método Header(), antes que cualquier otra salida. Para configurar un color de fondo, use Rect().12. ¿Cómo puedo establecer una cabecera o pie de página en la primera página?
Simplemente verifique el número de la página:function Header()
{
if($this->PageNo()==1)
{
//Primera Página
...
}
else
{
//Otras Páginas
...
}
}
13. Me gustaría utilizar extensiones previstas por diferentes scripts. ¿Cómo puedo combinarlos?
Utilice herencia encadenada. Si dispone de dos clases, por ejemplo, nómbrelo "A" en a.php:require('fpdf.php');
class A extends FPDF
{
...
}
require('fpdf.php');
class B extends FPDF
{
...
}
require('a.php');
class B extends A
{
...
}
require('b.php');
class PDF extends B
{
...
}
$pdf = new PDF();
14. ¿Cómo abrir el archivo PDF en otra pestaña?
Sigue el mismo método que utilizarías para una página HTML o algo similar. Añade: target=”_blank” a tu link o form.15. ¿Cómo puedo enviar el PDF por correo electrónico?
Como cualquier otro archivo, pero una forma fácil es usar PHPMailer y esta es una forma de adjuntarlo: archivo desde la memoria:$mail = new PHPMailer();
...
$doc = $pdf->Output('S');
$mail->AddStringAttachment($doc, 'doc.pdf', 'base64', 'application/pdf');
$mail->Send();
16. ¿Cuál es el límite de tamaño de los ficheros que puedo generar con FPDF?
No hay ningún límte en particular. Sin embargo, hay ciertas limitaciones:17. ¿Puedo modificar un PDF con FPDF?
Es posible importar páginas de un documento PDF existente gracias a la extensión FPDI. Entonces, puede añadirles contenido.18. Me gustaría hacer un motor de búsqueda en PHP e indexar ficheros PDF. ¿Puedo hacerlo con FPDF?
No. Pero existe una utilidad GPL escrita en C, pdftotext, que es capaz de extraer el texto de un PDF. Viene con el paquete Xpdf.19. ¿Puedo convertir una página HTML en PDF con FPDF?
No. Pero existe una utilidad GPL escrita en C, HTMLDOC, que le permite hacerlo y da buen resultado.20. ¿Puedo concatenar ficheros PDF con FPDF?
No directamente, pero es posible usar FPDI para llevar a cabo esta tarea. También existen algunas herramientas libres de línea de comandos: pdftk y mbtPdfAsm.