Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-01-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Generar documentos PDF al vuelo

Hola,

Si alguna vez os véis en la necesidad de generar documentos PDF al vuelo podéis echar un vistazo a la clase FPDF, que, como reza su página Web:

Cita:
FPDF es una clase escrita en PHP que permite generar documentos PDF directamente desde PHP, es decir, sin usar la biblioteca PDFlib. La ventaja es que, mientras PDFlib es de pago para usos comerciales, la F de FPDF significa Free (gratis y libre): puede usted usarla para cualquier propósito y modificarla a su gusto para satisfacer sus necesidades.
FPDF tiene otras ventajas: funciones de alto nivel. Esta es una lista de sus principales características:
  • Elección de la unidad de medida, formato de página y márgenes
  • Gestión de cabeceras y pies de página
  • Salto de página automático
  • Salto de línea y justificación del texto automáticos
  • Admisión de imágenes (JPEG y PNG)
  • Colores
  • Enlaces
  • Admisión de fuentes TrueType, Type1 y codificación
  • Compresión de página
FPDF no necesita de ninguna extensión para PHP (excepto la biblioteca zlib si se va a activar la opción de compresión) y funciona con PHP4 y PHP5.
En la página Web de la clase FPDF encontraréis ejemplos, tutoriales y documentación traducida al español. Si tenéis problemas con los caracteres del español como tildes, eñes y demás, no dejéis de probar la extensión y nueva implementación de la clase FPDF: TCPDF.

Funciona exactamente igual que la anterior (con pocos cambios) y como particularidad es capaz de tratar con la codificación UTF-8, entre otras particularidades.

Sorprende la sencillez de uso de estas clases, aunque, bueno, todo dependerá del nivel de complejidad del documento PDF que quiera generarse, pero, así a bote pronto diríase que está muy bien pensada y que incorpora soluciones muy acertadas.

Y bueno, ¿a qué viene todo esto? Pues a que ayer estuve jugando un poco con estas clases y quería comentar aquí que todo fue bastante bien, de modo que si os véis en la necesidad de generar documentos PDF desde vuestras aplicaciones PHP... pues eso.

Más información, ejemplos, tutoriales y documentación en las páginas Web respectivas.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #2  
Antiguo 22-01-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Yo uso esta librería frecuentemente con buenos resultados. Hasta ahora no he tenido problemas con las eñes o acentos sin necesidad de la extensión. En lo que difiero es en que sea una clase fácil de usar. Apenas necesites colocar imágenes, líneas y texto bien alineados, es sumamente tedioso. Tampoco es que se me ocurra cómo podría no serlo, pero el caso es que se vuelve muy pesado. Tampoco me parece muy bien diseñada. Tomemos un ejemplo de uno de sus tutoriales:

Cita:
Para añadir una nueva celda a continuación, con el texto centrado e ir a la siguiente línea, escribiremos:

Código PHP:
$pdf->Cell(60,10,'Hecho con FPDF.',0,1,'C'); 
Lo descrito difícilmente se discierne a partir del código, de manera que se me hace muy poco intuitvo y al generar un documento hay que estar constantemente reconsultando la lista de parámetros.

Pero no le quito mérito; como dije, la uso en varias partes y funciona bien.

// Saludos
Responder Con Cita
  #3  
Antiguo 22-01-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

No le quites muchos más méritos porque los tiene y la prueba es que la utilizas Román. A mí también me parecieron los parámetros un tanto liosos, y, sin embargo, otras cosas me parecieron estupendas, como el poder redefinir los métodos "Header" y "Footer" para imprimir "directamente" el título y los pies de página del documento.

En cuando a que si hay que añadir imágenes y demás en el documento la cosa puede complicarse... claro está que la cosa puede complicarse. Sin embargo, al menos la extensión de que hablo puede imprimir directamente HTML (al menos un subconjunto) y creo que sin extensión ni nada ya puedes imprimir párrafos con saltos de línea automático, alineaciones, etc.

Por otro lado la diferencia principal de la extensión de que hablo estriba en la posibilidad de trabajar con UTF-8.

Si no es preciso trabajar con dicha codificación de caracteres la extensión TFPDF no hace falta a lo que se ve.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #4  
Antiguo 22-01-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por dec
No le quites muchos más méritos porque los tiene y la prueba es que la utilizas Román.
Bueno, es que muchas opciones no las hay. Pero desde luego ésta tiene el mérito de ser gratuita. En el trabajo se compró la PDFLib (creo que así se llama), supuestamente mucho más profesional, pero nunca lo sabremos porque el ordenador donde se iba a utilizar era una Sun Ultra Sparc con dos procesadores, y resulta que hay que comprar una licencia por cada procesador...

Pero bueno, hemos visto mucho código y muchas clases muy buenas y sorprendentemente bien escritas por ahí. En mi opinión, FPDF no es una de ellas.

Voy a ver la extensión que mencionas porque quizá facilite las cosas.

// Saludos
Responder Con Cita
  #5  
Antiguo 18-05-2007
Avatar de oracle
oracle oracle is offline
Miembro
 
Registrado: feb 2005
Posts: 99
Poder: 20
oracle Va por buen camino
Problema al abrir PDF en ventana Popup

Estimados, estoy haciendo una pequeña aplicación y necesito exportar a PDF. Hasta este punto todo bien, he encontrado varias referencias en este mismo foro y he obtenido buenos resultados. Tan solo tengo dos problemas
hasta ahora:

El primero es que yo estoy generando dentro del PDF una tabla, dicha tabla tiene dos columnas y varias filas. El asunto es que en ocasiones en una celda no cabe toda la informacion y debo ocupar dos celdas. He buscado y creo que la funcion para el ajuste y formato de celda s automaticamente es MultiCell. Pues bien, estoy utilizando dicha funcion, y ajusta perfectamente la celda a la longitud del texto, pero cuando imprime la proxima celda lo hace fuera de sitio, o sea lo hace debajo, y cuando utilizo la funcion Cell solamente si lo hace bien. Aqui les dejo un fragmento de codigo:

Código PHP:
.....

$pdf->SetFont('Arial','',12);
while(
$nc $no_conf->fetch_row())
      {
           
           
$pdf->MultiCell(95,5,$nc[1],1,0);
           
$pdf->MultiCell(95,5,$nc[3],1,0);
           
$pdf->Ln(5);
       }
..... 

Lo otro es lo siguiente: Yo deseo mostrar el documento PDF en una ventana tipo Popup, para ellos hice la siguiente funcion en javascript:

Código:
<script language="JavaScript"> 

function Ventana(URL)
  {  
     window.open(URL,"Mi nueva ventana","width=500, height=350, scrollbars=no,     menubar=no, location=no, resizable=no") 
} 
</script>
Y la llamo en un vinculo luego mas o menos asi:

Código:
 <a href="javascript:Ventana ('generarPDF.php')"> PDF</a>
El problema es el siguiente: Cuendo doy en el vinculo me sale una ventana donde me dice si deseo guardar el documento o abrirlo, y cuando le doy cualquier opcion me dice que el documento no esta disponible.

En dicho documento yo recupero para la generacion del documento varias variables de Sesion creadas previamente para a partir de ella realizar consultas a la BD y generar el documento PDF, no se si en eso este el problema, puede ser y por eso os pido consejo.


Estoy utilizando IExplorer 6, WAMP y php5.

Saludos

Oracle
__________________
El único hombre que no se equivoca es el que nunca hace nada.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Automatizacion de word (generar documentos) alt126 C++ Builder 4 24-04-2007 04:19:27
Escanear documentos y generar PDF. ismaelmb OOP 1 02-06-2006 21:52:50
Pregunta a vuelo de pajaro jam888 Varios 1 30-01-2006 22:06:19
Generar documentos Word y Excel quade C++ Builder 1 03-01-2005 18:18:09
Filtrar fecha al vuelo JorgeBec Varios 1 04-11-2003 19:33:29


La franja horaria es GMT +2. Ahora son las 07:40:29.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi