11. A non-transitory machine-readable medium comprising instructions stored therein, which when executed by a system, cause the system to perform operations comprising: receiving a request from a client device to download a font; accessing the requested font, wherein the accessed font comprises a corresponding character map and a corresponding glyph table; creating a supported character list and a modified font based on the corresponding character map, wherein the modified font comprises a modified character map and a modified glyph table, and wherein the modified character map comprises placeholder data for at least one character of the accessed font; compressing the modified font; sending the supported character list and the compressed modified font to the client device; sending, to the client device after sending the supported character list and the compressed modified font to the client device, character data comprising character map data for the at least one character, glyph data for the at least one character, and location data for the character map data and glyph data, wherein the character map data is for merging the at least one character into the modified font based on the location data to replace the placeholder data for the at least one character in the modified font.
11. A non-transitory machine-readable medium comprising instructions stored therein, which when executed by a system, cause the system to perform operations comprising: receiving a request from a client device to download a font; accessing the requested font, wherein the accessed font comprises a corresponding character map and a corresponding glyph table; creating a supported character list and a modified font based on the corresponding character map, wherein the modified font comprises a modified character map and a modified glyph table, and wherein the modified character map comprises placeholder data for at least one character of the accessed font; compressing the modified font; sending the supported character list and the compressed modified font to the client device; sending, to the client device after sending the supported character list and the compressed modified font to the client device, character data comprising character map data for the at least one character, glyph data for the at least one character, and location data for the character map data and glyph data, wherein the character map data is for merging the at least one character into the modified font based on the location data to replace the placeholder data for the at least one character in the modified font. 14. The non-transitory machine-readable medium of claim 11 , wherein the character data sent to the client device represents a subset of all character data of the requested font, and wherein the operations further comprise: receiving, after sending the character data to the client device, one or more additional requests for additional character data of the requested font; and sending the additional character data to the client device based on the received one or more additional requests.