vfont2fnt(1)

πŸ“¦ version 1.1.3, in nixpkgs unstable, ubuntu stonking

🌸 NAME 🌸

vfont2fnt(1) β€” the lil converter that takes a BSD vfont file and turns it into a Windows font-resource file. That's it, that's the job, and she does it flawlessly. πŸ’…


✨ SYNOPSIS ✨

vfont2fnt [--ascent=ASC] [--bold] [--brkchar=CHAR] [--copy=COPYRIGHT]
[--codepage=CODEPAGE] [--charset=CHARSET] [--defchar=DEFAULT]
[--firstchar=FIRST] [--fontname=NAME] [--horzres=DPI] [--italic]
[--lastchar=CHAR] [--pointsize=SIZE] [--version=FORMAT] [--vertres=DPI]
[INPUTFILE [OUTPUTFILE]]

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so bestie, here's the tea: vfont2fnt saves some or all of the characters from a vfont font as a Windows font-resource file β€” the exact kind of file the Windows SDK tool FONTEDIT works with. 🫢

Then once you've got that file, you run it through fnts2fon(1) and boom, you've got yourself an installable font. No cap. πŸ‘‘


πŸ’– OPTIONS πŸ’–

  • --ascent β€” sets the distance from the baseline up to the top of the character. If you don't say anything, it defaults to the maximum baseline of each character in the font. ⭐
  • --bold β€” marks the resulting font as bold. That's the whole thing, she just puts the word "bold" on it. πŸ’ͺ
  • --brkchar=nnn β€” sets the index of the character used to print word breaks. Defaults to 32 (space). πŸŽ€
  • --charset=charset β€” sets the character set of the resulting font. Can be one of the words ANSI, OEM or SYMBOL, or a numeric value. 🌈
  • --codepage=x β€” extracts only the characters in the given codepage (this needs the source PSF file to have a Unicode directory, so like, check that first). Any characters in the codepage that aren't present in the source font get replaced by blanks. You can give the codepage by number or by name β€” see psfpages(1) for the list of acceptable codepage names. πŸ’œ
  • --copy=string β€” sets the copyright string in the resulting font. Heads up though: spaces are gonna have to be escaped, otherwise the shell sees them and eats them. πŸ™ˆ
  • --defchar=nnn β€” sets the index of the character used to display out-of-range characters. Defaults to 46 (full stop). πŸ“
  • --first=n β€” extracts characters starting at the specified character. ✨
  • --fontname=name β€” sets the name of the output font. Name her, bestie. 🌸
  • --horzres=nnn β€” sets the horizontal resolution of the font in DPI. Defaults to 48. πŸŽ€
  • --italic β€” marks the font as italic. Slanty vibes, periodt. πŸ’…
  • --last=n β€” extracts characters up to and including the specified character. Inclusive, because she's generous. 🫢
  • --pointsize=n β€” sets the font point size. This defaults to the font height in pixels. ⭐
  • --version=n β€” sets the file format version. This can be 1, 2 or 3. Version 1 should only be used if you are creating a font for Windows 1.0. Version 2 should be used if the font is less than 32k in size; otherwise, use Version 3. A warning will be displayed if the size of the font being output exceeds this limit. πŸ’€
Okay and if a codepage and a range of characters are both specified at the same time? The range gets applied to the subset of characters that the codepage extracted. Order of operations, bestie. 🧠
Also ngl, the synopsis up there shows --vertres=DPI, but the page itself doesn't describe it anywhere. Just flagging it so you don't think I skipped a bullet. πŸ™ˆ

πŸ‘‘ SEE ALSO πŸ‘‘

psf2fnt(1), fnt2vfont(1), psfpages(1)


πŸ’Œ AUTHOR πŸ’Œ

John Elliott <seasip.webmaster@gmail.com>. 🫢


And that's the whole page, bestie! This lil icon is vfont2fnt from PSF Tools, Version 1.1.3, dated 28 April, 2026 β€” go forth and convert some fonts. Mwah. πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from