This program is part of Netpbm.
pnmmargin adds a border around a PNM image.
pnmfile is the name of the input file. If you don't specify this argument, pnmmargin reads the input image from its Standard Input.
You can specify the border color with the -white, -black, and -color options. If you don't specify a color, the program makes a guess.
The value of -color is like the argument of the ppm_parsecolor() library routine.
To remove a border of a specified size from an image, use pamcut. pnmcrop also removes borders, but determines by itself what is border and what is subject.
For lower level control, including to add different size borders to different sides of the image, look at pnmcat.
If all you're trying to do is get the image up to a certain required size, pamcut may be what you want.
pnmpad does essentially the same thing, but gives you more control over the individual margins and does only black and white margins.