Where the characters come from
FontBlaze generates its alphabets from Unicode 18.0 data files published by the Unicode Consortium. Each styled character is looked up by its official name, for example MATHEMATICAL BOLD SCRIPT CAPITAL A, instead of being calculated from a starting position. That matters because several alphabets have reserved gaps where a letter was encoded earlier in another block. Those letters are handled through explicit, named exceptions, and an exception is rejected if the expected character turns out to exist.
Gates applied to every character
- It must be an assigned, named Unicode character.
- It must date from Unicode 11.0 or earlier, because newer characters often display as empty boxes.
- Symbols and decorations must not default to color emoji.
- Nothing may produce the replacement character U+FFFD or a broken surrogate pair.
How conversion behaves
- Unsupported characters pass through unchanged, and results list the letters and digits that stayed plain.
- Accented letters are not silently decomposed or stripped.
- Reversing and flipping work on whole user-perceived characters, so emoji and flags stay intact.
- Glitch effects are deterministic and capped at eight combining marks per character.
How the catalog stays distinct
FontBlaze keeps three kinds of item apart. Letter styles swap each letter for a Unicode character from one alphabet, such as bold or script. Effects add a mark to your own letters, such as a strikethrough or dots above. Themed designs combine one of these with symbols, emoji, frames around each letter or a mark between letters; they are designs, never extra alphabets. Unicodeโs own FAQ calls the use of mathematical letters for styled-looking text an unintended side effect, so FontBlaze never presents them as fonts and always says which letters stayed plain.
Every style and design is rendered with several test texts, including accents, emoji and other scripts. A design is rejected when its output matches a letter style or another design, or when it differs from a design in the same theme by a single symbol. Each style page and platform page shows its strongest matches first, and its More button adds only designs from matching themes, letter styles or effects, so a page never grows with unrelated results.
How Help me choose ranks styles
On the home page, the copy and paste fonts page and the platform pages, Help me choose suggests two or three styles for what you are making, the look you want, and whether reading or decoration matters more. The ranking runs on your device, uses only the catalog and your text, and stores nothing.
- Only styles with the look you chose are offered, one per letter shape, unless fewer than two styles have that look. Each styleโs look is an editorial judgement, like its category.
- Readability and display risk come from each styleโs catalog entry, and count double when you choose Easy to read.
- Characters in your text that a style cannot change lower its rank, and the reasons say which ones stay plain.
- Messages avoid decorations, wide letters and combining marks. Names avoid combining marks and extra spaces. Graphics weigh display risk less, because you see the result while you make it.
- Popularity and other visitorsโ choices play no part.
Automated tests
More than a thousand automated unit tests run before each update is published. They check every alphabet against the official Unicode names, every documented exception by code point, digit coverage, preservation of punctuation, accents, emoji, flags and other scripts, determinism, glitch limits, and character counting. Randomized tests feed thousands of generated strings, including malformed text, through every style and confirm nothing crashes or produces invalid output. Browser tests check the tools at nine screen widths, from 320 to 1440 pixels, with keyboard only, and without JavaScript.
What is not tested
FontBlaze has not tested styles on live social media accounts or on a range of physical devices. Display depends on each readerโs fonts, and platform rules change. That is why platform pages state only rules from each platformโs own help pages, and why we recommend checking a style where you plan to use it.
Counting characters
Character counts use the browserโs Intl.Segmenter to count user-perceived characters, with a fallback that was compared against it on hundreds of thousands of random sequences. Code points, UTF-16 units and bytes are shown separately.
The X post count follows the rules in Xโs developer documentation and the weights in twitter-text, Xโs open-source counting library: text is normalized to NFC, most letters, numbers and punctuation count as 1, most styled letters, emoji and CJK characters count as 2, and each link counts as 23. Links are found with twitter-textโs own link rules. The count passes twitter-textโs official conformance tests for weighted length and links, and it matched twitter-text 3.1.0 on 1,884 more texts, styled, spaced and joined. One difference is known. twitter-text 3.1.0 only knows emoji up to 2019 and counts newer joined emoji in parts, while Xโs documentation says every emoji counts as 2; FontBlaze follows the documentation. Xโs own emoji images stop at Emoji 15.0 (2022), so X may still count the newest joined emoji and flags, from Emoji 15.1 on, in parts: the phoenix as 5 instead of 2, for example. The count inside Xโs own apps was not compared.