![]() ![]()
In my description I mentioned kerning as an example of metrics info that would be discarded if one simply opened the outlines fonts and converted to OTF without extra steps, and while Ambrosia in particular has no kerning pairs, it has ligatures. Consequently, an appropriate conversion script would need to, I guess, run FontsInFile onto the font suitcase, infer from the result the filenames of the outline files the font suitcase contains metrics for, and then do loop for each of those variants in which it opened the outlines, imported their metrics and repackaged as I suspect that you can verify what I described with just the files that you output, and that they are not much different from what I could provide: please check that Ambrosia.bin (which would be the font suitcase), besides containing bitmaps ALSO has metrics info for the other files, which those themselves lack, by opening Ambrosia.bin in FontForge’s GUI and going to menu Element ▸ Font Info… ▸ Lookups, and comparing what you get when doing the same with the other files. Conversely, FFIL files (font suitcases with the metrics info) do contain the PostScript font-variant names they contain metrics for, from which the filenames of the associated LWFN files (outlines) can be derived. ![]() While one could just simply open LWFN files (outlines), it is not possible to afterward have the script import the associated metrics since LWFN files do not contain a reference to the filename of the associated FFIL file (font suitcase). This brings me to why FontsInFile support for font suitcases is needed. (Or, simply opening the LWFN instead might be enough if FontForge is smart enough to fetch the outlines from the associated FFIL files, but that I do not know). If one were to do such conversion with its GUI, I think, you would first open the LWFN file (outlines) of one of the variants, import its associated metrics with menu File ▸ Merge Feature Info ▸ the associated FFIL file (font suitcase), and export to OTF, and then repeat for the rest of the variants. #Fontforge change postscript font name macTo convert a Mac Type 1 font to OTF, Fontforge needs both or the conversion will not be faithful to the original. one file per family, containing, among others, metrics for all its variants such as kerning, with FFIL type code, and this one called the font suitcase. #Fontforge change postscript font name codeone file per font-variant, containing the outlines, with type code LWFN.To recap, Mac Type 1 fonts depend on multiple files: Just to give a context for the relevance of this bug and hopefully bring it to the attention of someone able to do something about it, Adobe will cease support in 2023 for Type 1 fonts (format around since 1984, and which on Macs comes as a font suitcase), and has already removed it from Photoshop, therefore making decades of legacy documents using such fonts incompatible with the latest versions of the programs they were created with, to the extent that one is not able to open them with their original appearance intact.įor preservation purposes, it would therefore be very useful that FontForge could open and convert those fonts to OpenType programmatically (i.e. Generate the Ambrosia "Mac Family" with FontForge by opening, with its GUI, Ambrosia.sfd, AmbrosiaBold.sfd and AmbrosiaItalic.sfd from the repo’s folder /tests/fonts/ and then going to menu File ▸ Generate Mac Family ▸ PS Type 1 (resource). Tried with a myriad of TrueType and PostScript font suitcases, but for the sake of providing an example, step 1 in “Steps to reproduce” generates the Ambrosia "Mac Family" from test fonts provided in FontForge’s repo.Įdit: My mistake, it does work as expected with TrueType font suitcases, therefore the issue applies only to PostScript Type 1 font suitcase. #Fontforge change postscript font name for macThe scripting function FontsInFile returns no entries for Mac font suitcase files (files with FFIL type code) irrespective of whether the input is the data fork or the resource fork of the file, and irrespective of whether the suitcase is one of TrueType fonts or PostScript ones, even though the scripting function Open does open the first font in those files just fine. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |