For some reason people believe they have to get a passport photo from a place that is equipped to handle both taking and printing passport photos. Not only are you charged for an extra small photo, you waste time and petrol money paying for something you can do at home. The most important aspect is making sure your photo is edited to passport size.
Take a photo using a digital camera. The photo should capture the subject from the chest to about 10 cm (a few inches) above the head. The background should be a light-coloured wall, but not a white wall -- this will cause colour distortion. It is best to use natural light. Ensure the photo is not blurry, free of red-eye and void of any shadows. Take a half-dozen or so photos. You want to avoid too much editing later on.
Open the photo in a photo-editing program. The changes you will be making to the photo are minor so almost any photo-editing software will suffice. Photoshop Elements (apprx. £65), Google Picasa (free) or any software that allows you to crop, change the size and adjust the light levels will work.
Browse through the photos you have taken. Look for a clear photo with even light. Even light means there are no shadows or no extremely dark or light spots, especially in the facial region. Anything that makes the face difficult to recognise will cause a photo to be rejected by immigration officials. If you can't find a suitable photo, reshoot another batch.
Crop and adjust the photo's light levels. A passport photo should be cropped so the frame goes from just above the chest to about 10 cm (a few inches) above the head. The eyes should be positioned 3.5 cm (1 3/8 inches) from the bottom of the photo. The face should range from 2.5 to 3.5 cm (1 to 1 3/8 inches) in length. The most important thing to remember when adjusting the light levels is to make the subject stand out from the background. This can be accomplished by adjusting the contrast and brightness.
Edit to passport photo size. Passport photos are required to be 5 x 5 cm (2 x 2 inches). There are two ways to change a photo size: changing the canvas size or before printing. In Photoshop you can adjust a photo's canvas size by selecting "Image" and then "Canvas size." Other programs let you change the photos size after you have selected the print option.
Print two photos. The photos should be a high-quality print onto photo paper. Cut the photo to the correct dimensions.