\pdfinclusionerrorlevel[=] integer

This command is used to control the behavior of the TEX engine when a PDF file is included that has a newer version than the one specified by \pdfminorversion.

• [=]” means that the equals sign is optional.

Usage examples

• \pdfinclusionerrorlevel=-1 (or anything $$<0$$): gives no diagnostic information.
• \pdfinclusionerrorlevel=0 (default): causes the TEX engine to issue a warning.
• \pdfinclusionerrorlevel=1: causes the TEX engine to raise an error.

#### \pdfinclusionerrorlevel: Background information

Since it was first published in the 1990s, the PDF file format has undergone numerous revisions and enhancements which periodically result in the publication of a new version of the formal PDF specification. Consequently, any PDF file, including those produced by TEX engines, will conform to a particular version of the PDF specification—such as PDF version 1.4, 1.5 etc. Every PDF file contains data that identifies which version of the PDF specification the file conforms to—so that any application that wishes to “consume” a PDF file (e.g., importing, processing etc) knows which set of PDF features are likely to be present within that file.

If your TEX document imports a graphic in PDF format, for example via \includegraphics, that graphic file might conform to a PDF specification that is newer (later) that the one supported by the TeX engine’s own output PDF file. Clearly, this has the potential to cause a “clash” between the PDF version generated by a TEX engine and the PDF version used by one of the imported graphics. By way of an example, the typeset document produced by a TEX engine might conform to, say, PDF version 1.4 but an imported graphic conforms to, say, PDF 1.5. If that imported graphic is simply embedded without further action then, clearly, the PDF output file produced by TEX no longer conforms to PDF 1.4 because it now contains graphical content based on the PDF 1.5 specification. The \pdfinclusionerrorlevel command helps to manage this.