Hey everyone!
I’m excited to release BitmapFontKit, a modular and easy-to-use module for rendering bitmap fonts in Roblox GUIs. Whether you’re working on a retro platformer, stylized RPG, or just want full control over your UI text appearance, this kit makes it simple to drop in your own pixel fonts and get crisp, clean text every time.
Features
Supports folder-based fonts and sprite sheets
Automatic letter spacing, scaling, and wrapping
Left, center, and right alignment
Built-in
.Render()
and .MeasureText()
methods
Tinting with
Color3
Works in any ScreenGui, BillboardGui, or SurfaceGui
No dependencies – plug and play!
How to Use
local BitmapFontKit = require(path.to.BitmapFontKit)
local font = BitmapFontKit.new({
Source = workspace.FontFolder, -- or a sprite sheet with JSON config
CharacterSize = Vector2.new(8, 8),
CharactersPerRow = 16, -- only needed for sprite sheet
})
font:Render("HELLO WORLD", {
Parent = someFrame,
Position = UDim2.fromScale(0.5, 0.5),
AnchorPoint = Vector2.new(0.5, 0.5),
Color = Color3.new(1, 1, 1),
Scale = 2,
Alignment = "Center",
WrapWidth = 200, -- optional
})
Need to measure how big the rendered text will be?
local size = font:MeasureText("HELLO", { Scale = 2, WrapWidth = 200 })
Why Use Bitmap Fonts?
- Perfect pixel control for stylized UIs
- Total freedom to design your own font art
- Consistent rendering across devices
- Great for retro, low-res, or stylized projects
Setup
You can use:
- A folder of individual letter
ImageLabel
s (named A-Z, 0-9, etc) - Or a sprite sheet + a character layout JSON (with optional spacing info)
Both modes are supported — just plug in your source during .new()
.
Demo Place & Module
Toolbox Model: https://create.roblox.com/store/asset/140522505218608/BitmapFont
Feedback & Contributions
If you use this in your project or want to contribute, feel free to reply here or DM me. I built this to be developer-friendly and flexible, so if you need advanced features like caching, stroke outlines, or right-to-left support, I’m open to adding them in future versions.