PDFPipe

ISO A series / A6

A6 page size for PDF generation

A6 is postcard size, a quarter of an A4 sheet, and the smallest ISO size that still holds a paragraph comfortably.

The dimensions

One measurement in four units. Millimetres and inches are what a printer works in; points are what the PDF itself stores; pixels are only useful for checking a screen mock-up against the real thing.

  • Millimetres: 105 x 148 mm
  • Inches: 4.13 x 5.83 in
  • Points: 298 x 420 pt
  • CSS pixels: 397 x 559 px at 96 dpi

Where the size comes from

A6 is A4 folded twice. It is the international postcard size, and it is the reason a stack of postcards and a stack of A4 paper are the same shape. It is also the standard insert size for a C6 envelope, which is what most personal mail arrives in.

What gets printed at this size

  • postcards and direct mail inserts
  • loyalty and appointment cards printed four-up on A4
  • warranty and thank-you cards packed inside a shipment
  • index cards and small reference sheets

Margins that survive a real printer

8mm all round, and no less. At this size the margin is doing structural work: it is the only thing stopping the design from touching a cut edge, and commercial trimming is accurate to roughly a millimetre either way. If the card is being professionally printed with a background colour, extend the background 3mm past the page on every side as bleed and expect it to be trimmed off.

The CSS

A6 is not one of the six named formats the API accepts, so the size has to come from the document. Declare it in the page box and set prefer_css_page_size in the request.

css
@page {
  /* Not a named format the API accepts. Declare it in CSS and set
     prefer_css_page_size so the renderer uses the document's page box. */
  size: 105mm 148mm;
  margin: 8mm;
}

body {
  font-size: 8.5pt;
  line-height: 1.4;
}

The render request

With a custom size the options carry no format at all: the one flag tells the renderer to use the page box the document declares.

json
{
  "html": "<!doctype html>...",
  "options": {
    // No named format. The page box in the document's own CSS is the
    // size, and this flag is what tells the renderer to use it.
    "prefer_css_page_size": true
  }
}

The mistake people make

Treating A6 as a small A4 and keeping a 40mm letterhead on it. That is 27 percent of the page gone before a word is written. A6 needs its own layout, not a scaled one.

Frequently asked

What is A6 in pixels?

397 x 559 px at 96 dpi, at the 96 pixels to the inch that CSS assumes. That number is useful for comparing a screen mock-up against the page, and useless for laying out the document: use 105 x 148 mm instead, because a page laid out in pixels shifts whenever the render scale changes.

Can I pass A6 as a format?

No. The API accepts six named formats: A4, A3, A5, Letter, Legal and Tabloid. A6 is reached through the document's page box with prefer_css_page_size set, which is a supported path and not a workaround.

Does landscape need a different page size?

No. Landscape is the same rectangle turned, so it is set as an orientation rather than as swapped dimensions. Writing the width and height the other way round produces the same page and makes the intent harder to read later.

Other page sizes

Sizes that come up in the same conversation, and one from each of the other families.

Paste the CSS below into the playground and see the page box it produces.