Avanzando en el framework de Zend, hoy vamos a ver cómo crear documentos PDF. Quizás a muchos no les vaya a ser útil, pero un documento PDF es un formato bastante extendido.
De forma sencilla, ya que la librerÃa del framework es algo extensa, vamos a explicar que métodos son necesarios para crear un PDF.
Para cargar la librerÃa:
require_once 'Zend/Pdf.php';
Para crear un nuevo documento PDF:
$pdf = new Zend_Pdf();
Para crear una nueva página:
$pdf->pages[] = ($page = $pdf->newPage('A4'));
$pdf->pages[] = new Zend_Pdf_Page(Zend_Pdf_Page::SIZE_A4);
$pdf->pages[] = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
Obtener ancho y alto de la página:
$ancho = $page->getWidth();
$alto = $page->getHeight();
Usar estilos:
$estilo = new Zend_Pdf_Style();
$estilo->setFillColor(new Zend_Pdf_Color_RGB(0, 0, 0));
$font = Zend_Pdf_Font::fontWithPath('/path/fuente.ttf');
$estilo->setFont($font, 10);
$estilo->setStyle($style);
Escribir texto:
$page->drawText("Hola Mundo", $x, $y);
Insertar imágenes:
$img = Zend_Pdf_ImageFactory::factory('sentidoweb.png');
$page->drawImage($img, $x, $y, $x+&ancho, $y+$alto);
Devolver la salida:
echo $pdf->render();
Eso sÃ, antes hay que tener en cuenta que tenemos que devolver al inicio del script el Content-Type:
header("Content-Type: application/pdf");
// Si queremos que se devuelva como un fichero adjunto
header("Content-Disposition: attachment; filename=\"prueba.pdf\"");
Si, se que parece muy resumido, pero otro dÃa habrá un ejemplo más completo, mejor ir paso a paso.
Zend Framework : PDF
Interesante método, aunque hay que precisar que planean pasarlo a HipHop en el futuro, la versión actual (0.2c) esta en php, checa el index.php de la descarga.
De hecho el archivo ocr.bat contiene solo esta linea:
@php.exe index.php input.jpg
Saludos
Cierto, Alfonso, no tiene mucho sentido programar en PHP para jDownloader. Aún asÃ, lo que me interesaba era el código que muestran en el PDF, que realmente es lo menos importante de la noticia, ya que los usuarios de jDownloader les da igual PHP o Hiphop 🙂
Saludos