php - generar - laravel-dompdf ejemplos
Dompdf no se carga (7)
Estoy tratando de ejecutar dompdf en un servidor interno. Con las configuraciones predeterminadas de config.inc.php, obtengo lo siguiente cuando ejecuto el equivalente de la secuencia de comandos ''Hello Wolrd'' de la demo:
Warning: require_once(/var/www/dompdf-master/lib/php-font-lib/classes/font.cls.php): failed to open stream: No such file or directory in /var/www/dompdf-master/dompdf_config.inc.php on line 335
Fatal error: require_once(): Failed opening required ''/var/www/dompdf-master/lib/php-font-lib/classes/font.cls.php'' (include_path=''.:/usr/share/php:/usr/share/pear'') in /var/www/dompdf-master/dompdf_config.inc.php on line 335
Cuando desactivo DOMPDF_ENABLE_AUTOLOAD
, ya no recibo esta advertencia, pero el código falla con lo siguiente:
Fatal error: Class ''DOMPDF'' not found in /var/www/rfq/test.php on line 115
El siguiente es el código:
require_once("/var/www/dompdf-master/dompdf_config.inc.php");
$dompdf = new DOMPDF(); // this is the line that fails
$dompdf->load_html($quotehtml);
$dompdf->render();
$dompdf->stream("rfq".$_REQUEST[''quoteid''].".pdf");
Esto es Ubuntu 12.04, actualizado en parches, con configuraciones de Apache predeterminadas.
Muchas gracias.
Casi tuve el mismo problema. Mi código estaba trabajando en mi máquina de desarrollo local, una caja de Windows, pero luego estaba fallando en nuestro servidor de producción: una caja de Linux
El problema era que el directorio "classes" estaba en minúsculas (/ app / Vendor / dompdf / lib / php-font-lib / classes) a las ventanas no les importaba, pero Linux sí lo hacía.
Simplemente editando la siguiente línea en dompdf_config.inc.php resolvió el problema:
require_once(DOMPDF_LIB_DIR . "/php-font-lib/Classes/Font.php");
Por coherencia, renombré el directorio con una "C" mayúscula en el cuadro de Windows.
Este es un problema temporal después de que el proyecto DOMPDF se trasladó a Github. Vea las respuestas a esta pregunta . La solución más fácil para obtener el paquete completo es descargar DOMPDF 0.6 beta 3 de Google Code .
La nueva versión de dompdf no funciona con ''composer install'' o ''composer update''. Necesita versiones especiales de bibliotecas de fuentes que pueden no ser siempre las últimas versiones, por lo que esto podría cambiar en el futuro. Pero puede encontrar cómo instalarlo a través de la documentación de dompdf. No sé por qué los autores no han codificado estas versiones de fuente dentro del composer.json, pero de todos modos aquí es cómo hacerlo.
Actualmente, la forma más fácil y la mejor manera de usar la biblioteca es a través de git (tomado de los documentos oficiales)
git clone https://github.com/dompdf/dompdf.git
cd dompdf
git clone https://github.com/PhenX/php-font-lib.git lib/php-font-lib
cd lib/php-font-lib
git checkout 0.4
cd ..
git clone https://github.com/PhenX/php-svg-lib.git php-svg-lib
cd php-svg-lib
git checkout v0.1
Entonces puedes hacer
use Dompdf/Dompdf;
$dompdf = new Dompdf();
$dompdf->loadHtml(''hello world'');
$dompdf->setPaper(''A4'', ''landscape'');
$dompdf->render();
$dompdf->stream( "/path-to-save-pdf-file/sample.pdf");
Si el error no se corrige después de hacer lo que sugieren otras respuestas:
In dompdf_config.inc.php, change line 332 to point to the actual location of your Font.php file.
mine was /php-font-lib/src/FontLib
No hay una carpeta de CLASES que haya sido mencionada allí.
Si está utilizando composer para instalar dompdf, debe poner define("DOMPDF_ENABLE_AUTOLOAD", false);
en dompdf_config.custom.inc.php. Esto permitirá que el compositor cargue automáticamente el php-font-lib como ya está instalado. (Consulte este número: https://github.com/dompdf/dompdf/issues/636 )
Si no estás usando el compositor, mira la respuesta de Mikepote.
Usaremos dompdf en codeigniter PERO el archivo que descargué de GitHub no tiene todos los archivos que necesitamos. Faltan todos los archivos de php-font-lib. Entonces tuvimos que descargarlo y subirlo a la carpeta respectiva. Por lo tanto, para que dompdf funcione en codeigniter, es posible que deba descargarlo.
Vea aquí http://www.digitalwhores.net/codeigniter/codeigniter-dompdf-master-and-php-font-lib/
- Vaya a https://github.com/PhenX/php-font-lib y descargue la biblioteca.
- Crea el
dompdf/lib/php-font-lib/classes/
. - En el archivo zip, tome los contenidos de la carpeta
src/FontLib/
y pegue eso en su directorio recién creado.
Eso pareció funcionar para mí.