This is a good question, and there's a lot to say here that hasn't been mentioned ...
I have written a bit about this here.
First please notice that Dr. Blinder's solution does not produce a 3 inch circle when exported to PDF and printed at 100% size. (Physical units are encoded in PDFs.) The diameter is about 0.7 in.
The following does:
inch = 72;
cm = inch/2.54; (* for people who, like me, like centimetres better *)
g = Graphics[Circle[{0, 0}, Offset[3/2 inch]]]
Export["~/Desktop/circle.pdf", Show[g, ImageSize -> {8.5 inch, 11 inch}]]
This will produce a PDF which has a size of precise 8.5 by 11 inches and has a 3 inch diameter circle in the middle.
The key points to achieve this were:
I used Offset
coordinates to specify the size. Offset
coordinates represent a physical size in printer's points and do not scale when the graphics are resized (try it!). For example, all text sizes are treated as offset coordinates, which is why resizing Mathematica figures doesn't resize the text. This is actually convenient for publication figures where we can specify the target font size, e.g. 10 pt, and Mathematica will honour that (regardless of the figure size). Other coordinate types available: Scaled
, as a fraction of the figure size, or standard plot coordinates.
When exporting, I specified the figure size explicitly. To make sure that the size will be correct with all versions of Mathematica, it's necessary to add the ImageSize
to the Graphics
with Show
rather than specify it in Export
directly.
When printing this, make sure scaling is set to 100% in your PDF reader. Do not allow it to rescale the PDF (which many readers will automatically do to make sure it fits the paper and fills out the paper).
Do not use raster formats like TIFF or PNG when exporting. While they can encode physical sizes, not every program respects this. Please use PDF only, which does reliably encode physical sizes, and practically every PDF reader has an option to respect these sizes while printing.