Font Family-Name

use cygwin with fc-scan --format="%{family}_%{style}" c:/windows/fonts/8514fix.fon to get Fixedsys_Regular which you can append the file-extension fon to, to get a valid full file-name Fixedsys_Regular.fon.

copy the required ttf/otf/fon/… font-files to another folder, and pass through them,
rename the entire folder so you’ll end-up with a folder filled with font-files which are recognisable by name.

the fc-scan command is useful since it is easy to strip it with the --format argument,
but a more capable one, that will result with a more “human-readable” output (including a decimal-based font-version..) is otfinfo.

Which is better compatible with the Windows’ fonts anyway.

For example: otfinfo --info C:/Windows/Fonts/seguisym.ttf
Will render a more pleasantly output:

Family:              Segoe UI Symbol
Subfamily:           Regular
Full name:           Segoe UI Symbol
PostScript name:     SegoeUISymbol
Version:             Version 6.20
Unique ID:           Segoe UI Symbol
Manufacturer:        Microsoft Corporation
Vendor URL:
Trademark:           Segoe is a trademark of the Microsoft group of companies.
Copyright:           © 2015 Microsoft Corporation. All Rights Reserved.
License URL:
License Description: You may use this font as permitted by the EULA for the product in which this font is included to display and print content. You may only (i) embed this font in content as permitted by the embedding restrictions included in this font; and (ii) temporarily download this font to a printer or other output device to help print content.
Vendor ID:           MS

…Which you will have to format, probably the use of grep (to find your desired line) and sed (to remove the heading and whitespace, by replacing /^[^\:]+\:\s+/ with empty-string.. after you’ll find your line).

For example

otfinfo --info C:/Windows/Fonts/seguisym.ttf | grep Subfamily | sed -e 's#^[^\:]+\:\s+##' from a shell-script.
(If you ran it through the cygwin-terminal, you also escape the +… :..(
otfinfo --info C:/Windows/Fonts/seguisym.ttf | grep Subfamily | sed -e 's#^[^\:]\+\:\s\+##')

to get Regular.

Although “Oblique” and “Italic” are different,
Oblique meant to be the same-design as the Regular font but simply angled (+8deg skewed),
while Italic was meant to be a more calligraphic version of the Regular font,

– If you’re not a graphic designer
and all you want to do is to normalised the Subfamily into groups,
just normalise “Oblique” to “Italic”.

also, for filenames that requires to be unified into lower-case, pipe the command through | tr '[:upper:]' '[:lower:]'.

It is much easier to use bash-script for this,
so you better keep working from within Linux/Cygwin,
but you can also copy the dependencies and executable and use them from within Windows CMD.

otfinfo and fc-scan are placed under Cygwin’s /usr/bin/.

Leave a Reply