UNIFONTPIC(1)

πŸ“¦
version 17.0.04 Β· 3 versions
, in alpine 3.22, alpine 3.23, alpine 3.24, debian trixie, fedora 43, fedora 44, nixpkgs unstable, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– UNIFONTPIC(1) πŸ’–

okay bestie, listen β€” this is unifontpic, a lil tool from the General Commands Manual section of the Unix manual pages, and she is so good at what she does. The official vibe is "Convert GNU Unifont .hex input to a bitmap image of the whole font" and honestly? That's exactly it. No notes. πŸ‘‘


✨ NAME ✨

unifontpic β€” takes a GNU Unifont .hex input and turns it into a bitmap image of the entire font. Like, the whole thing. One pic. Slay.


🌸 SYNOPSIS 🌸

unifontpic [-dnnn] [-l] [-t] [-Pplane] < input-font.hex > output-font.bmp

πŸ¦‹ DESCRIPTION πŸ¦‹

So here's the tea: unifontpic reads a GNU Unifont .hex file from STDIN and writes a two dimensional rendering for each glyph to STDOUT. That output? It's an entire Unicode plane of 65,536 glyphs rendered as one big graphic image. By default you get a grid of 256 glyphs by 256 glyphs, or β€” if you want it long β€” a version of 16 glyphs across by 4,096 glyphs down. Your call, bestie. πŸ’…

Your input can be one or more files in Unifont .hex format. They do not have to be sorted, because unifontpic will populate the entire glyph array of 65,536 code points before it writes anything out. It's patient like that. 🫢

⚠️ okay so important: the input glyph code points should all be unique. Feed in duplicate code points and you get unpredictable results β€” and not the fun kind of unpredictable. 😭 Use unidup(1) on a sorted input of .hex files to guarantee there's no code point duplication. Periodt.

πŸ’… OPTIONS πŸ’…

  • -d β€” Specify a Dots per Inch (DPI) resolution of nnn. Like, for example, specifying -d120 will encode the bitmap graphics file output as having a resolution of 120 DPI. Cute, right?
  • -l β€” Produce a long chart: 16 glyphs wide by 4,096 glyphs tall. The default, for the record, is a wide chart β€” 256 glyphs wide by 256 glyphs tall.
  • -t β€” Use tiny numbers for the row and column code point labels. Tiny numbers live on a 4 by 5 pixel grid. Heads up though: only tiny code point labels appear on the long chart variant, so this option only has effect for wide charts (the default, of 256 by 256 glyphs). And if you don't specify this for the default 256-by-256 grid, the row and column code point labels are taken from Unifont's glyphs for 0 to 9 and A to F. iykyk. πŸ”₯
  • -P β€” Print a chart for Unicode plane number plane. Default is Plane 0, the Unicode Basic Multilingual Plane (BMP). The range of Unicode plane range is 0 through 17, inclusive. The plane number gets printed on the chart title line. Iconic behaviour. ⭐

🌈 EXAMPLES 🌈

Sample usage, bestie:

cat *.hex | unifontpic -d120 > unifontpic.bmp

To generate a bitmap that shows combining circles, from the font/ subdirectory:

sort plane00/*.hex | unigencircles ttfsrc/combining.txt |
unifontpic -d120 >unifontpic.bmp

πŸŽ€ FILES πŸŽ€

  • *.hex β€” GNU Unifont font files

🧚 SEE ALSO 🧚

bdfimplode(1), hex2bdf(1), hex2otf(1), hex2sfd(1), hexbraille(1), hexdraw(1), hexkinya(1), hexmerge(1), johab2syllables(1), johab2ucs2(1), unibdf2hex(1), unibmp2hex(1), unibmpbump(1), unicoverage(1), unidup(1), unifont(5), unifont-johab631(5), unifont-viewer(1), unifont1per(1), unifontchojung(1), unifontksx(1), unigen-hangul(1), unigencircles(1), unigenwidth(1), unihex2bmp(1), unihex2png(1), unihexfill(1), unihexgen(1), unihexpose(1), unihexrotate(1), unijohab2html(1), unipagecount(1), unipng2hex(1)

(the whole friend group fr fr πŸ’œ)


πŸ‘‘ AUTHOR πŸ‘‘

unifontpic was written by Paul Hardy. A legend. 🫢


πŸ’– LICENSE πŸ’–

unifontpic is Copyright Β© 2013 Paul Hardy.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.


πŸ’€ BUGS πŸ’€

No known bugs exist.

Not me being obsessed with a bug-free manpage 😭✨ we love to see it.


and that's the whole page bestie!! this one comes to you from the General Commands Manual, stamped with the date 2013 Sep 07, and filed under UNIFONTPIC(1) β€” go forth and render an entire plane of glyphs, you main character πŸ¦‹πŸ’…πŸŒΈ

πŸ“¦ where this page comes from