On Mon, 13 Dec 2010, stefano franchi wrote: > But does anyone know why XeTeX and pdfLaTeX are oblivious to the pdf > format violation?
good question! No idea about XeTeX, but pdftex uses an xpdf/poppler function page->getResourceDict() which seems to be intelligent enough to also search up the Pages tree (if needed) until it finds a Resources dictionary. Luatex lost this automatism a while ago, an oversight, bug. It's now back since SVN 4040, with hopefully a slight improvement also: The downside of pdftex's getResourceDict() function is that it expands the Resources dictionary during embedding. In particular it does not keep an originally indirect object indirect (there is no function like getResourceDictNF(), unfortunately). As a consequence, when pdftex embeds a PDF page, each new form XObject dictionary contains a full verbose Resources dictionary, also repeatedly in the resulting PDF if several pages from one file with the same Resources dict are embedded. The luatex version now keeps the indirections and embeds a Resources dict only once, with the potential for slightly smaller PDF files. Regards, Hartmut
