Font files contain a set of characters (called a 'character-set'), glyphs or symbols in a particular style/typeface and are supported by many modern operating systems and software applications.
There are three different types of font file. The first are 'Raster' fonts that are made up of pixels to represent an image of each character (in multiple sizes). 'Vector' fonts are defined by drawing instructions and so are scalable to different sizes and 'stroke' fonts use a series of lines and drawing information to represent the appearance of the character.
Many fonts are designed to be scalable in size and support different faces such as italics and bold.