This font was created after I realized that there were very few fonts that were FOSS and that supported the entirety of the CP437 charset.
The source files that I could include under the licenses of this project are part of this repository. However, I had to use non-FOSS tools to generate the actual .ttf files, namely YellowAfterLife's PixelFont converter, a free converter from bitmap to TTF.
The font is 12px x 12px; each pixel is 128 units big and the EM size is set to 10*128 = 1280.
For a pixel-perfect render, you should thus set the font size to a multiple of 10px and set the line-height to a multiple 12px (or simply 1.2em).
To download this repository, you can run
# Method 1, using git:
git clone https://github.com/adri326/warale-font
cd warale-font
# Method 2, using curl:
curl -o warale-font.zip https://github.com/adri326/warale-font/archive/refs/head/master.zip
unzip -x warale-font.zipThis repository contains the Warale Font in different formats:
- TrueType Font (
Warale Font.ttf) - WOFF Font (
Warale Font.woff) - CSS
@font-facerule (Warale Font.css) - Krita (
Warale Font.kra) - Black/White bitmap, for use with YAL's converter (
Warale Font.png) - White/Magenta bitmap, for use as a Dwarf Fortress font (
warale_df.png) - The charset used (
charset.txt)
You can host the font yourself and use the provided CSS @font-face rule or directly read it from GitHub:
<head>
<link rel="stylesheet" href="https://adri326.github.io/warale-font/Warale Font.css">
<style>
.my-div {
font-family: "Warale";
font-size: 10px;
line-height: 1.2em;
}
</style>
</head>To generate the bitmaps, you will need to open Warale Font.kra with Krita.
Then, hit File > Export, choose PNG as the format and save the file as Warale Font.png.
If you want to export the White/Magenta bitmap too, simply run the script make-df-font.sh, which will extract the first 192x192 square and map the black/white pixels to white/magenta.
To generate the TTF file, you will need to go to https://yal.cc/r/20/pixelfont/ or to download YAL's converter on itch.io (PWYW).
Once on the page, you can import the setting by pressing Import and choosing the Warale Font.json file.
The spacing settings are as follows:
- Tile width:
12 - Tile height:
12 - Offset X:
0 - Offset Y:
0 - Separation X:
0 - Separation Y:
0 - Baseline X:
0 - Baseline:
11 - Spacing:
0 - Monospace:
true - Em size:
1280 - Line gap:
0 - Ascent:
1280 - Descent:
0 - Pixel size:
128
Then, press Pick image and select the Warale Font.png file.
You can preview the font in the two right panes and finally hit Save TTF on the top-right to export the font to TTF.
You can then generate the .woff file and optimize the .ttf file with ttf2woff:
ttf2woff Warale\ Font.ttf Warale\ Font.woff
ttf2woff -t ttf -i Warale\ Font.ttfThis repository is multi-licensed with MIT, ISC, GPLv2 (implicitely GPLv3) and OFL.
You may choose any of these licenses for your projects.
You can find the different license files in the licenses/ folder.
You may re-distribute this font using any of these licenses; when doing so, you must keep the chosen LICENSE file(s) (and, if needed, the corresponding legalcode.txt file(s)).
I also recommend that you link back to this repository (https://github.com/adri326/warale-font/).
Any contribution to this repository must retain all of the licenses.
