Nuestros mejores programadores agotaron sus reservas de café, buscando todo el tiempo por la respuesta, hasta que Alejandra encontró el resultado en GitHub y hoy la compartimos aquí.
Solución:
De acuerdo con esta pregunta tienes que usar el full ruta del servidor
probar:
profile_pic) " alt="" style="width: 150px; height: 150px;">
Asumiendo que la imagen está almacenada en su público directorio.
lo he resuelto:
1- Llama a la biblioteca DomPDF:
require_once ($_SERVER['DOCUMENT_ROOT'] . "/mi/LiquidacionesSueldo/include/dompdf/autoload.inc.php");
ob_start();
2- Genero el archivo HTML, yo lo hago con una función que devuelve una tabla HTML simplemente:
get_dias_goce_sueldo($_POST['run'],$_POST['dvr'],$_POST['cantidad_dias'],$_POST['desde'],$_POST['hasta'],$_POST['am_pm']);
3- Ahora, debes inicializar el objeto DomPDF, fíjate en todas las opciones que configuré:
$dompdf=new DompdfDompdf();
$dompdf->set_option('isHtml5ParserEnabled', true);
$dompdf->set_option('isRemoteEnabled', true);
$dompdf->loadHtml(ob_get_clean());
$dompdf->set_paper('letter', 'portrait');
$dompdf->render();
$dompdf->stream("Solicitud_de_permiso_con_goce_de_sueldo.pdf", array('Attachment'=>1));
NOTA: en mi función, en la tabla HTML, llamo a la imagen con la ruta completa, de esta manera:
Eso es todo, espero que esto sea de utilidad, eso fue para mí.
public function pdf()
$users = User::get();
$pdf = PDF::loadView('pdf', compact('users'));
$pdf->getDomPDF()->setHttpContext(
stream_context_create([
'ssl' => [
'allow_self_signed'=> TRUE,
'verify_peer' => FALSE,
'verify_peer_name' => FALSE,
]
])
);
return $pdf->download('Users.pdf');
Si eres capaz, tienes la opción de dejar una división acerca de qué le añadirías a este tutorial.