Option to pass in file specific overrides/defaults to FontData
Somewhat related to #22 it would be great to have an option to a) overwrite or b) provide defaults for FontData return values.
The most pressing use case for this is essentially overwriting the font family name; for example I have a page showing all fonts of a family; various widgets might use the getCSSFontName extracted from the file, but it is redundant to show the Family name repeatedly.
Equally this could be an option to provide a default, should the detection of a value from the file fail.
I'd image this could be a object that has the font file name as key, then objects for overrides and fallbacks, like
{
"foo.woff":
"overrides": {
"familyName": "Bar"
},
"fallbacks": {
"weight": "Normal"
}
}
What you think, useful for you?
I just merged #24, but in the long run, I'd prefer to make a more general solution to the problem.
I'm thinking of an interface definition as the API of FontData and then making it easy to create different implementations. One could be an implementation that takes multiple FontData implementations and falls back if one fontData does not provide the value to the next.
In general, the FontData Object is pretty important for almost everything, so maybe we should overthink it, how to make it useful for more cases.
Keeping this issue open as a reminder.