Guide · 2026-10-12

Print-ready PDFs with bleed and crop marks

A printer cuts paper a hair off true. Bleed is the artwork that carries on past the edge so the cut never shows a white sliver; crop marks show where to cut. Both come from the template you already have.

One option each

curl -X POST https://api.imageapis.com/v1/pdfs \
  -H 'X-API-Key: YOUR_KEY' -H 'Content-Type: application/json' \
  -d '{
    "template": "tpl_9vbn4kq2hdyw7xme3rct",
    "variables": { "name": "Dana Reyes", "course": "Advanced PostgreSQL Administration" },
    "bleed": "3mm",
    "crop_marks": true
  }'

The template's canvas is the trim, the size the finished piece is cut to. A 1123×794 template is an A4 sheet in landscape, since a PDF has 96 px to the inch. With bleed the page grows by that much on every side, and with crop_marks it grows by another 10 mm for the marks.

bleed takes 3mm, 0.125in, 9pt or a plain number of millimetres. Most printers ask for 3 mm in Europe and 0.125 in (3.175 mm) in the US; check what yours wants. The PDF costs one unit per page, as usual.

What carries into the bleed

  • The canvas background and background_image fill the bleed too.
  • Rectangles and images that touch an edge carry on past it: a band across the top, a photo to the right edge, a full-page background image.
  • Everything else, meaning text, icons, shapes, QR codes and charts, stays where it is relative to the trim. Keep these at least 3 to 5 mm inside the trim (the safe area), where a slightly off cut cannot reach them.

What a printer gets

  • Crop marks: hairlines at the four corners, outside the bleed, on the lines of the trim.
  • The PDF's TrimBox and BleedBox on every page, so imposition and preflight software find the trim without being told. They are added after Chromium writes the file, as an incremental update, so nothing in the original moves.
  • The record's print field says what was asked for: { "trim_width": 1123, "trim_height": 794, "bleed_mm": 3, "crop_marks": true }.

The colours are RGB, as on screen. Most digital print shops convert RGB PDFs themselves; if yours requires CMYK or PDF/X, convert the file in their tool or in Acrobat before sending it.

A batch of certificates from Python

import os, requests

API = "https://api.imageapis.com"
H = {"X-API-Key": os.environ["IMAGEAPIS_KEY"]}

for person in graduates:
    pdf = requests.post(f"{API}/v1/pdfs", headers=H, json={
        "template": "tpl_9vbn4kq2hdyw7xme3rct",
        "variables": {"name": person["name"], "course": person["course"], "date": "10 October 2026"},
        "bleed": "3mm",
        "crop_marks": True,
    }).json()
    print(person["name"], pdf["url"])

Start from the certificate starter, or draw one in the editor. For a card or flyer at a set physical size, make the canvas that size at 96 px to the inch: a 3.5 × 2 in business card is 336×192 (the business-card preset), and an 18 × 24 in poster is 1728×2304.

Limits

Bleed and crop marks work with layer templates, whose canvas is a known size. For html or a url, or with format or margin, the API answers 400; an HTML template can draw its own bleed instead. The bleed can be up to 25 mm.

Get a free key: 150 images a month API reference