Probe varias alternativas para generar PDF la que te recomiendo es mPDF
Ejemplo como yo la uso:
ini_set("memory_limit","20M"); #Es para corregir los limites de memoria de mi servidor
include('../pdf/mpdf.php'); #Carga la libreria
#El truco es crear un HTML estandar <head><body> ... incluso con estilos de CSS incluidos
#e irlo almacenando en una variable, yo he usad $html
#lo puedo armar incluso sacando campos de la base de datos para generar un html que puedas visualizar limpiamente en tu navegador, para probarlo
#al final :
$html = clean($html); #### CONVERTIR A UTF8
$mpdf=new mPDF(); #### CREAR E OBJETO
$mpdf->WriteHTML($html); #### GENERAR EL PDF
$mpdf->Output(); #### MANDARLO AL EXPLORADOR
Espero te sea de utilidad