User Tools

Site Tools


guides:createafont

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
guides:createafont [2023/10/05 00:08] – created discordguides:createafont [2023/10/10 23:54] (current) – [Recipe] discord
Line 1: Line 1:
 ====== Bake A Custom SDF Font! ====== ====== Bake A Custom SDF Font! ======
  
-So, you want to make a custom font atlas and +So, you want to make a custom font atlas for the Vulkan renderer! Here's my artisanal recipe, passed down through generations.
  
 ===== Ingredients ===== ===== Ingredients =====
Line 11: Line 11:
   * A C++ compiler   * A C++ compiler
   * Cmake   * Cmake
 +  * tinyxml2 (install using your package manager, it's ''tinyxml2'' on in Homebrew (''%%brew%%''))
 +
 +===== Recipe =====
 +  - Build ''msdf-atlas-gen''<file bash>
 +# In the msdf-atlas-gen folder
 +# On macOS/unix-like systems:
 +
 +mkdir build && cd build # create the build folder
 +cmake -DMSDF_ATLAS_USE_VCPKG=OFF -DMSDF_ATLAS_USE_SKIA=OFF .. # generate makefile using cmake
 +make & cd bin # build and go to the output folder
 +</file>
 +  - Generate font files! <file bash>
 +# the magic command
 +./msdf-atlas-gen -type mtsdf -format png -csv FONTNAME.csv -imageout FONTNAME.png -font PATH_TO_FONT_FILE
 +</file>
 +  - Copy the generated ''FONTNAME.csv'' and ''FONTNAME.png'' to the ''vendor/fonts'' folder in folk
 +  - Edit line the lines that look like this line in ''display.folk'' to set it as a default <file tcl>
 +# replace the "PTSans-Regular" with FONTNAME
 +[...] {font "PTSans-Regular"} [...]
 +</file>
 +  - To use it in programs, do so: <file tcl>
 +# using a wish
 +Wish $this is labelled "Text" with font "FONTNAME"
 +# using display
 +Display::text $x $y $scale $text $radians FONTNAME
 +</file>
guides/createafont.1696464501.txt.gz · Last modified: 2023/10/05 00:08 by discord

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki