1. A computer-implemented method of generating a custom dictionary for an e-book, comprising: receiving a first custom dictionary request from a user client operated by a user, the first custom dictionary request identifying the e-book and including dictionary management information describing the user; choosing a first reading level threshold for the user based on the dictionary management information; identifying a first set of candidate words in the identified e-book for inclusion in the first custom dictionary; selecting words for inclusion in the first custom dictionary from among the first set of candidate words based in part on the first reading level threshold; generating the first custom dictionary using the selected words and word definition information for each of the selected words; and providing the generated first custom dictionary to the user client.