1. A non-transitory computer storage medium comprising computer-useable instructions that, when used by one or more computing devices, cause the one or more computing devices to perform operations comprising: receiving a search request defining a desired attribute value for a desired font, the desired attribute value being specifically selected via a graphical user interface from among a set of candidate attribute values associated with an attribute; obtaining a font similarity matrix for determining the similarity between a plurality of fonts; deriving a font graph using the font similarity matrix, the font graph defined on a font set based on the desired attribute value; and providing the font graph defined on the font set, the font graph having a finite set of nodes representing similar fonts and a finite set of undirected edges denoting font similarities corresponding to the font set.