PHP - error al genera PDF con dompdf

 
Vista:
sin imagen de perfil
Val: 126
Ha aumentado su posición en 12 puestos en PHP (en relación al último mes)
Gráfica de PHP

error al genera PDF con dompdf

Publicado por German David (54 intervenciones) el 08/09/2021 22:28:04
Cordial saludo.
En estos momentos estoy probando el funcionamiento de dompdf, ya que deseo incluir la descarga de documentos pdf en mi sitio web.
Lo primero que hice fue descarga la libreria dompdf de esta url: https://github.com/dompdf/dompdf/releases/tag/v1.0.2

Luego de ponerla en la carpeta de mi sitio web, trate de probarlo con este codigo php (mi version php es la 7.2.24):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php ob_start();?>
<h2>ingenio</h2>
<table>
    <tr>
        <td>nombre</td>
        <td>apellido</td>
    </tr>
    <tr>
        <td>Josue Juan</td>
        <td>Quinzapa</td>
    </tr>
</table>
 
<?php
require_once 'dompdf/autoload.inc.php';
use Dompdf\Dompdf;
$dompdf=new DOMPDF();
$dompdf->load_html(ob_get_clean());
$dompdf->render();
$pdf=$dompdf->output();
$filename="nombre.pdf";
file_put_contents($filename,$pdf);
$dompdf->stream($filename);
?>

pero al tratar de verlo en mi sito web, me sale este error:
Fatal error: Uncaught Error: Call to undefined function Dompdf\mb_internal_encoding() in /var/www/html/analistaflota/dompdf/src/Dompdf.php:323 Stack trace: #0 /var/www/html/analistaflota/dompdf/src/Dompdf.php(295): Dompdf\Dompdf->setPhpConfig() #1 /var/www/html/analistaflota/abc.php(17): Dompdf\Dompdf->__construct() #2 {main} thrown in /var/www/html/analistaflota/dompdf/src/Dompdf.php on line 323

Agradezco me ayuden para identificar mi problema.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

error al genera PDF con dompdf

Publicado por Yelson Persi (2 intervenciones) el 23/05/2022 20:04:48
en esta url hay una solución:
https://parzibyte.me/blog/2021/07/24/problema-imagen-pdf-dompdf-php/

Tienes que eliminar esta línea de codigo: $dompdf->stream(); y agregar los headers y agregar el output como este ejemplo:

require_once 'librerias/dompdf/autoload.inc.php';
use Dompdf\Dompdf;

$dompdf = new Dompdf();
$options = $dompdf->getOptions();
$options->set(array('isRemoteEnabled'=>true));
//$options->setDefaultFont('Courier');
$dompdf->setOptions($options);

$dompdf->loadHtml($html); aquí traigo la información de la tabla, el ob_get_clean() lo puedes guardar en una variable debajo de la etiqueta de table con el nombre de $html o cualquier otro nombre y agregarlo en esta línea de código
$dompdf->setPaper('letter');
$dompdf->render();
//$dompdf->stream("reporte_.pdf",array("Attachment"=>false));
echo $dompdf->output();
esto funcionó para mí
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

error al genera PDF con dompdf

Publicado por Yelson Persi (2 intervenciones) el 23/05/2022 20:11:24
Se me olvido poner los haders:
<?php
$html = ob_get_clean();
//echo $html;

require_once 'librerias/dompdf/autoload.inc.php';
use Dompdf\Dompdf;

$dompdf = new Dompdf();
$options = $dompdf->getOptions();
$options->set(array('isRemoteEnabled'=>true));
//$options->setDefaultFont('Courier');
$dompdf->setOptions($options);

$dompdf->loadHtml($html);
$dompdf->setPaper('letter');
//$dompdf->setPaper('A4', 'landscape');
$dompdf->render();
header("Content-type: application/pdf");
header("Content-Disposition: inline; filename=documento.pdf");
echo $dompdf->output();
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar