Home / Advanced / Typography & Fonts

Typography & Fonts

Choose the dialogue and accent font for each script, import your own fonts, and adjust how text is drawn.

1. The Fonts Table and Text Style

Settings -> Typesetting & Lettering -> Fonts is a table with one row per writing system and two columns:

  • Dialogue: the font for speech, thoughts and captions. The Latin row is the font for English, Spanish, Indonesian and other Latin-script languages.
  • Accent: the font for skill names, attacks, spells and title cards (see Accent Font). Latin starts with the bundled Sigmar One; other scripts start Off, which means accent text looks like dialogue.

Accented letters follow the font: if a font has no É, Ñ or ß (CC Wild Words has none), they are drawn as E, N and ss in that font instead of in a fallback font. A font that has them keeps them, so pick one like Poppins to keep French or Spanish accents.

Latin, the scripts your books are translated into, the scripts of the default language pair (General & Appearance) and any script you set a font for are listed. Show all scripts reveals the others: Chinese, Japanese, Korean, Cyrillic, Thai, Hindi and Arabic, the scripts of every supported language.

Below the table:

  • Dialogue Font Weight: from 100 (Thin) to 900 (Black). XianScan uses the matching file when a family has several weights.
  • Dialogue Letterform Casing: UPPERCASE (classic comic lettering), Normal / As Is, or lowercase.
  • Text Stroke Outline: None, Thin, Standard or Heavy.
  • Bubble Inset Padding: how much space to leave between text and the bubble edge.
  • Bubble Centering & Expansion: lets text use a little more room than the detected text area, so letters are not clipped.
  • Bubble Tilt Angle: rotate text to follow tilted bubbles.

Live Speech Bubble Preview shows the result as you change settings. Dialogue / Accent at its top switches the lettering in the same bubble: dialogue in the dialogue font, or a skill name or title card in the accent font. Pick a language sample, or Custom to type your own text for either. The preview is drawn by your browser, so it can differ slightly from the typeset pages.

Live Pipeline Step Previews is under General & Appearance.

2. Fonts for Other Scripts (CJK, Hindi, Thai, Arabic, Cyrillic...)

Every script row in the Fonts table has its own dialogue font.

  • Automatic (default) picks the best available font that really has the letters, and shows which font it chose. It tries your choice for that script first, then the Latin dialogue font if it covers the script, then a bundled or system font.
  • Bundled fonts work everywhere, including Docker: Noto Sans Devanagari (Hindi), Noto Sans Thai, Tajawal (Arabic) and WenQuanYi Micro Hei (CJK).
  • System fonts are used too when installed, for example Nirmala UI and Leelawadee UI on Windows, Kohinoor Devanagari and Thonburi on macOS, or Noto fonts on Linux.
  • A red note under a cell means no available font covers that script, so its text would show as boxes; amber means the font you chose does not have those letters. The book editor and folder import warn about the target language in the same way.

3. Accent Font (Skills, Attacks and Title Cards)

Comics letter some text differently from speech: a cultivation technique announced over the art, a shonen attack call, a fantasy spell, a system message like [Skill: Shadow Step], or a title card for a new arc. XianScan calls this accent text.

  • The translator marks it. While translating a page, the AI also says which text regions are accent text. Ordinary speech that only mentions a technique stays dialogue. Glossary terms with the category technique mark matching free-floating text as accent text too.
  • Choose the font per script in the Accent column of the Fonts table. Latin uses the bundled Sigmar One by default; pick a brush font for Chinese, for example, or another display font for Latin. Set a cell to Off to letter that script's accent text like dialogue; with every cell Off, pages look exactly as before accent fonts existed.
  • Accent style: accent text is drawn in UPPERCASE at regular weight, and only outside speech bubbles.
  • Every letter must be in the font. An accent font is used for a region only when it has every letter of that text. Accented letters it lacks (É, Ñ) do not count: they are drawn plain in the accent font. Any other missing letter makes that region fall back to the dialogue font with a slightly heavier outline. The Accent cell lists the letters that still matter.
  • Symbols: brackets, dashes and similar marks missing from the accent font are drawn in the dialogue font, so [Skill: ...] keeps its brackets.
  • System fonts on Linux, Docker and macOS user fonts: XianScan cannot always read which letters these fonts have, and the Accent cell says so. Import the font file to get the letter check.
  • Fix a region by hand: in the Page Inspector, accent regions show an Accent badge. Open a region and switch Lettering between Dialogue and Accent. Re-translating the page resets these switches, like manual text edits.

4. Importing and Removing Fonts

Every dropdown in the Fonts table ends with two commands. The font you add goes straight into the cell you opened it from.

  • Import font...: add .ttf and .otf files. XianScan reads each font and shows which scripts it covers. It also warns about old Hindi fonts that use a legacy encoding and would print the wrong letters. You can add several weights (Regular, Bold and so on) to one family.
  • Add system font...: use a font that is already installed on your computer. XianScan looks in the standard font folders: C:\Windows\Fonts and your user fonts folder on Windows, /System/Library/Fonts and /Library/Fonts on macOS, and /usr/share/fonts and /usr/local/share/fonts on Linux.

Fonts you added are listed under the table as Your fonts. The x on a chip deletes an imported font or removes a system font from the choices; cells that used it go back to the default dialogue font, Automatic or Off.

5. Getting Accent Fonts

XianScan ships one accent font, Sigmar One (SIL Open Font License), the default for Latin. It has every accented letter the supported Latin languages use, so French, Spanish, German, Polish or Turkish accent text stays in the accent font. For other scripts, or another Latin look, the Free accent fonts link above the Fonts table lists more free fonts under the same licence, for example Bangers (Latin), Zhi Mang Xing and Ma Shan Zheng (Chinese brush), Yuji Boku (Japanese), Black Han Sans (Korean), Rozha One (Hindi), Kanit (Thai), Lalezar (Arabic) and Russo One (Russian). Download one from its page, then choose Import font... in an Accent cell.

Freeware comic fonts, such as many Blambot fonts, are fine to import for your own reading, but their licences usually forbid sharing them. XianScan never bundles or uploads a font you import.