Mirando el Mpdf y comparando los codigos de los dos pdfs(el que me funciona y el que no) he detectado lo siguiente. En la funcion Overwrite de Mpdf hace lo siguiente:
Código PHP:
preg_match("/<<\s*\/Type\s*\/Pages\s*\/Kids\s*\[(.*?)\]\s*\/Count/s",$pdf,$m);
Y el pdf que me funciona tiene lo siguiente en su codigo:
Código Pdf:
Ver original1 0 obj
<</Type /Pages
/Kids [3 0 R 5 0 R 7 0 R 9 0 R 11 0 R 13 0 R 15 0 R 17 0 R 19 0 R 21 0 R ]
/Count 10
En cuanto al que no me funciona aparece de la siguiente forma:
Código Pdf:
Ver original6 0 obj
<</Count 2/Type/Pages/Kids[11 0 R 1 0 R]>>
Ademas una vez dentro de la funcion busca otro patron mas(creo que son los diferentes elementos):
Código PHP:
preg_match("/".($obj+1)." 0 obj\n<<\s*\/Filter\s*\/FlateDecode\s*\/Length (\d+)>>\nstream\n(.*?)\nendstream\n/s",$pdf,$m);
Y el pdf que me funciona tiene:
Código Pdf:
Ver original22 0 obj
<</Filter /FlateDecode /Length 1505>>
stream
MIentras que el que no me funciona tiene:
Código Pdf:
Ver original2 0 obj
<</Length 2990/Filter/FlateDecode>>stream