Print Design Tips for Engineers | Papermill blog
Document Generation
David White
Engineers often find themselves tinkering with graphic design problems - designing the layout for a generated PDF invoice or report, for example. Graphic design is a whole discipline and we engineers typically struggle with the process. Here are some shortcuts to getting something decent out of the door.<br>Find inspiration<br>We don’t code from scratch, we beg/borrow/steal: Stack Overflow in the days of yore, AI autocomplete and agents nowadays. Turns out graphic designers do the same - they combine ideas that already exist. Whenever you face a new task, do the following first:<br>Go to Dribbble, Behance, Adobe, and other sites to check out what other people did for “minimalist invoice” or whatever you’re working on.
Jump into Google images and take a look.
Look at examples from similar companies or those you admire. Work out the key elements and ideas you like.
Jump into Claude and ask it to generate some examples. Caution! Claude isn’t a great designer in itself, but again it can provide some of the building blocks you might want to incorporate.
I like to quickly copy and paste ideas into Keynote for safe keeping, and mocking things up / quickly recombining them.<br>Consistent whitespace<br>Something Claude often gets wrong and great designers do well is to use whitespace. Every web dev knows the importance of padding on a button: apply the same care to everything you design. In particular, padding should be consistent and mathematically related: for example, the space between block elements might consistently be 24 points. Ensure your elements sizes are related - a bigger space might be 1.5x or double a smaller one, for example. And don’t choose spacings just because they round out well. 10pt and 100pt are unlikely to be the right fit, for example.<br>Space to breathe<br>A general rule for engineers is that more spacing beats less: often engineers fail to give elements “space to breathe”.<br>Use “margins” between elements sparingly<br>Margins are one-off hacks and can easily break the consistent use of whitespace. You shouldn’t need them most of the time - use a parent’s gap spacing instead. And of course the gap sizings should be related to other whitespace.<br>Use very few fonts, and consider serifs<br>Nothing says amateurish like a bunch of different fonts across a document (a "ransom note"). Typically you’ll want one or two, with special fonts for elements like pre-formatted text.<br>Use serif fonts too - they look great on the page.<br>Justify and hyphenate<br>This is the opposite of screen advice - use justification and hyphenation for print. Think about how books are typeset for maximum comfort.<br>Leading (line height)<br>You need to give your text space to breathe - just like any element. For print, usually 1.3 line spacing is about the minimum you can get away with in prose.<br>Page breaks matter<br>Make sure you don’t have widows and orphans and keep your page breaks clean.<br>Colour for highlights<br>Clever use of colour can make a design look incredible; it can also make it look like design pizza. If you’re not a great designer, keep it simple: use black for text, a fixed set of a few greys for less important text or icons, and a highlight colour to brighten up a design and bring attention to key elements.<br>Clever typography<br>Impress your friends with this one cool hack… tracking (letter spacing) can add an element of professionalism to your documents, especially in small caps. You’ll see Claude use this way too much, but used sparingly it can add something extra to your design.<br>Sweat the details<br>We engineers don’t usually have a great deal of graphic design gusto, but what we do have is an eye for detail and experience of grinding. We’ve all banged our head against a problem for hours and refused to give up. Apply that tenacity to design: check your font sizes are consistent, make sure spacing is neat and consistent and relative. And checkpoint-vary-compare - just try out different decisions and see how they stack up, dropping designs that don’t look great. If you don’t have enough of that intuition yet, ask a few other people to vote for their favourite. Don’t ask them to explain why, just use their gut. You can also try defocusing your eyes to “feel” the layout more, and turn it upside down.<br>Final quick fire tips<br>Don’t use underline!
Don’t use a lot of borders! Let space do the work of grouping and separating elements.
Don’t run text too wide - 45-75 characters is readable
It’s not an absolute rule, but centring things tends to look a bit rubbish!
How to become a better print designer<br>How did you become a better coder? Do it. Try things. See how it looks! Go look at existing code designs. In short, become a print hacker.<br>I build Papermill (papermill.io), a document-generation API - we see a lot of engineers wrestling with document design, and we're building an MCP server aimed at turning Claude into a better print designer.
Like this article? Share...