Preflighting
Preflight takes the design files for an order and validates them against the product's properties. If it finds errors it can correct, it fixes them automatically, but only when it can fix every error in the file. The problems preflight fixes are listed below.
Preflight also produces a report that tells you whether your files are press-ready and, if not, what needs to change.
What can preflight decide?
Every preflight produces one of three outcomes:
- Pass. The files meet the product's requirements, and the order proceeds to production.
- Pass with warnings. The files are acceptable and production proceeds, but the report notes issues worth addressing on future files, for example an image below the recommended resolution.
- Fail. Preflight found one or more errors that it could not fix. The order fails, and the report lists every issue preflight found.
The order's page in the RPI Print API Dashboard shows the report, including when preflight fails. The order's
validations, in the API response and in webhooks, carry the same issues.
A failed order cannot take a new file. To print the book, correct the file and place a new order.
What does preflight check?
Preflight validates each file: the interior book block, the cover, and the dust jacket where the product takes one. It checks each file in the categories below. An error fails the order unless preflight can fix it. A warning is advisory and does not stop production.
| Category | What it validates | Blocks? |
|---|---|---|
| File integrity | File isn't empty, is under 2.5 GB, and can be opened — no corrupt data or repaired cross-reference table | Error if empty, oversized, corrupt, or otherwise unreadable |
| Resource limits | The file stays within the limits RPI needs to process it: no oversized image stream, no image too large to decode, and no forms nested too deeply to read | Error if the file reaches any of these limits |
| Security | PDF isn't password-protected or otherwise encrypted in a way that prevents opening | Error if the file can't be opened for processing |
| Dimensions / page geometry | Page boxes exist and are readable; the page size matches the product's trim size plus its bleed, within 2.5 points; interior book block pages don't have mismatched sizes when the product doesn't allow mixed dimensions; page coordinates use a standard user unit | Error if a page box is missing or the wrong size, the page size doesn't match, mixed page sizes aren't supported, or the user unit isn't 1. A cover's size is described in How do I build a cover? |
| Bleed | On bleed-supporting products, a page whose content reaches the trim edge has enough bleed. Hardcover and ImageWrap covers are not checked | Warning if the bleed is missing or below the required amount |
| Page count | Interior page count is valid for the binding — meets minimum/maximum and any modulus (e.g. multiple of 4 for saddle-stitch) | Error if below minimum, above maximum, or not a valid multiple |
| Cover / spine sheet count | A cover or dust jacket file has the number of pages its product expects, and its width matches the spine width that the interior book block's page count gives | Error if the page count or the width doesn't match. See How do I build a cover? |
| Fonts | All fonts referenced by text are embedded | Error if a font isn't embedded |
| Font quality | Type3 fonts are flagged; character codes set by page content resolve to a glyph in their font | Warning for Type3 fonts or unmapped characters |
| Images — resolution | Effective PPI is within the product's supported range | By default, warning if an image is below 150 PPI on either axis, or at or above 600 PPI on both axes |
| Images — rendering intent | Every embedded image declares a rendering intent | Warning if /Intent is absent |
| Vector complexity — node count | Vector node density and count per page stay within limits | Warning if exceeded |
| Vector complexity — object count | Drawing-object density and count per page stay within limits | Error if exceeded |
| Color space | Detected colorspaces are in the product's allowed set; Lab colorspace isn't used on images or vector fills/strokes when disallowed; spot colors carry a usable alternate or tint transform | Error if an unsupported colorspace, disallowed Lab usage, or an undefined spot color is found |
| Color channel count | Total process + unique spot channels don't exceed the product's maximum | Warning if exceeded |
| Transparency | Flags overlapping transparent colors and objects; flags a document declaring both transparency-permitting and transparency-prohibiting PDF/X variants | Warning for live transparency (resolved at the press, not by the customer); Error for mixed variant declarations |
| Interactivity / annotations | No annotations, AcroForm fields, or JavaScript actions | Error if any are present |
| Layers | No default-off layer carries visible content; a dieline layer, if present, is a non-printing spot color | Error for hidden content on an off layer; Warning for an invalid dieline layer |
| White overprint | No white-filled or white-stroked element has overprint enabled in a way that would make it vanish on press | Error if detected |
| PDF metadata | Producer field is present in the document | Warning if missing |
| Fixed file size | A file that preflight has fixed is under 2.5 GB | Error if the fixed file reaches 2.5 GB |
What does preflight fix automatically?
Preflight fixes the problems below only when it can fix every error in the file. If any error has no fix, preflight changes nothing, and the order fails with every issue preflight found.
When preflight does fix a file, RPI prints from the fixed file rather than the one you sent, so these changes appear in the printed book.
| Row in the table above | Problem | What preflight does to the file |
|---|---|---|
| Page count | Too few pages, or a count that isn't the multiple the binding requires | Adds blank white pages at the end until the count is valid |
| Dimensions / page geometry | The page size doesn't match the product, but each side is within 10% of it | Rebuilds the page at the product's size, stretching the content's width and height separately to fill it |
| Dimensions / page geometry | A page box is the wrong size | Sets the page boxes where the product needs them, cropping an oversized page; the content is not moved or scaled |
| Dimensions / page geometry | Interior pages of mixed sizes, where every size is within 10% of the product's | Clears once the pages have been rebuilt at the product's size |
| Images — rendering intent | An image declares no rendering intent | Gives the image the rendering intent in effect where it is drawn, or Perceptual if none is |
| Color space | Lab color on an image | Re-encodes the image in RGB |
| Color space | Lab color on text or vector shapes | Converts the color to CMYK |
| Interactivity / annotations | Annotations on a page | Removes the page's annotations |
Preflight does not fix anything else in the table above. A missing page box, a page more than 10% away from the product's size, and a page count above the product's maximum are all errors that preflight cannot fix. Such an error fails the order, and you need to correct the file and place a new order.