Is there a straightforward modification that can be made to a TTF file, via adding a table, or altering a few entries in some tables, that would give the font generic italic and bold styles. Or, is there some well-known utility that does this.
Here’s some background on this question.
I’m doing some work in Flex and Actionscript 3, (part of the Adobe flash family) and one of the options is to embed a font in an application. You can either embed a font as a ’systemFont’ or as ’source’ (the actual TTF file). When embedding, you also have the option of specifying fontStyle=’italic’ or fontWeight=’Bold.’ My point of confusion is that, while I can embed some Windows system font as italic or bold (or a combination), if I locate the actual TTF file for that system font, and try to embed that directly (i.e. as a ’source’ embedding), and also specify italic or bold, invaribly I get an error from the compiler - ’no italic and bold info in the file’. So, it is evident to me that as a system font, Windows is generally coming up with the italic and bold transformations on its own, and not from info in the ttf file. This is even more apparent if you call GetFontData (a windows legacy function) which retrieves the ttf from memory for an actual loaded font, and whether the font is italic or bold or normal, it returns the exact same ttf file from memory, identical to what is on disk.
So my question is, if Windows can generate its own italic and bold transformations on its own, is there a way I could alter a ttf file to have generic bold and italic info to begin with. (For various reasons I need to embed directly from the ttf file and not from a Windows system font.) I know a fair amount about the structure of tables in a ttf file after studying some Apple docs for the last few days, and have made some other types of successful modification to ttf files. I want some simple generic transformation of a ttf file along the lines of whatever windows is doing on its own. I’ve been looking at the fvar and gvar tables, but none of the fonts on my system use those tables at all (so I don’t have any examples).