PabloMK7

How to properly create custom system fonts.

Apr 18th, 2018
484
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.37 KB | None | 0 0
  1. The original system font uses the A4 encoding. If you are creating a custom font make sure to export it with that specific encoding, otherwise it may cause crashes, garbled text, etc if the game/homebrew app doesn't support other encodings.
  2.  
  3. While creating a font with FontConverter directly from a windows font, it is converted with A8 encoding, so you should do the following:
  4.  
  5. 1. If you are converting a windows font, first export it to an image. The image format should be tga and the letter order "3DS bitmap font standard", do not change any other settings.
  6. 2. Import the newly created image setting the letter order to the same mentioned above, and the color format to A4.
  7. 3. Export the image to bcfnt with the character encoding set to Unicode and everything else to default.
  8.  
  9. This method will fix the garbled text and crashes, however, symbols and some characters will be missing if the windows font don't have it. To fix it you can do the following.
  10.  
  11. 1. Export the original system font with the steps mentioned above to an image.
  12. 2. Open both images, the original and the custom one to a image editor (note that the images may be several thousand pixels in height, so it may take a while to load).
  13. 3. Copy from the custom image all the characters you want to customize to the original image. (NOTE: below each glyph, there is a hidden line of pixels indicating the glyph width as well as a grid. When copying from an image to the other make sure you also copy the grid, which is hidden by transparency, and make sure the glyph width bar is correct. The grid layout and position should end up being the same as in the unmodified otherwise FontConverter will throw an error. You can ignore warinings telling you there are pixels outside of the glyph width, but take in mind that those won't be displayed when rendering the font.) This procedure will keep the original 3DS symbols in the custom font as well as characters not present in the custom font.
  14. 4. Save the modified original image and convert it to bcfnt using the settings mentioned above.
  15.  
  16. It should be noted that the A4 format has less quality than the default A8 format, so some fonts with more detail may look bad when loaded by the 3DS. This can be fixed by manually retouching the individual glyphs. A4 format only has 4 shades of grey and transparency (4 bits per pixel) so it is not possible to make complex glyphs having multiple colors.
Add Comment
Please, Sign In to add comment