Wide text generator

Wide text generator converts each ASCII character (letters, digits, punctuation) to its fullwidth Unicode counterpart in the U+FF00 block. The result is the wide-spaced, vaporwave aesthetic look used in CJK contexts where every character occupies one cell of a square grid. ASCII space U+0020 maps to ideographic space U+3000. Other Unicode characters and accented Latin pass through. Want bold or cursive instead? See bold or cursive.

Input
Line 1:1 LF cloud_done Saved locally
Result Wide Text Generator
0 lines 0 chars

Halfwidth-to-fullwidth mapping

In CJK typography, every character occupies one cell of a square grid called em. ASCII characters do not naturally fit that grid, so Unicode includes fullwidth versions of every printable ASCII character in the Halfwidth and Fullwidth Forms block at U+FF00 onwards. This tool maps each ASCII character to its fullwidth twin: ! at U+0021 becomes at U+FF01, and so on through ~ at U+007E -> U+FF5E.

The visual effect is widely used outside CJK as a "vaporwave aesthetic" or wide-spaced retro look popular on Instagram, TikTok, and Tumblr. Each fullwidth character is roughly twice as wide as its ASCII counterpart, so a short input produces a noticeably stretched output. ASCII space U+0020 maps to Ideographic Space U+3000, which renders as a wide space matching the rest of the line.

Anything outside the printable ASCII range (32-126) passes through unchanged. That means accented Latin letters, emoji, CJK characters already in fullwidth form, and most punctuation outside ASCII are not remapped. Combine with remove accents first if you need full coverage of accented input.

How to use wide text generator

  1. 1Paste or type your text into the input panel on the left.
  2. 2The fullwidth result appears in the output panel as you type.
  3. 3Click Copy in the output header to copy the result.
  4. 4Paste it into your bio, post, or aesthetic caption.
  5. 5For accented characters that pass through, run input through remove accents first.

Keyboard shortcuts

Drive TextResult without touching the mouse.

Shortcut Action
Ctrl FOpen the find & replace panel inside the input Plus
Ctrl ZUndo the last input change
Ctrl Shift ZRedo
Ctrl Shift EnterToggle fullscreen focus on the editor Plus
EscClose find & replace, or exit fullscreen
Ctrl KOpen the command palette to jump to any tool Plus
Ctrl SSave current workflow draft Plus
Ctrl PRun a saved workflow Plus

What this tool actually does

Direct ASCII-to-fullwidth offset

Every printable ASCII character (codepoints 33 to 126) is shifted by 0xFEE0 to land in the Halfwidth and Fullwidth Forms block. So A at U+0041 becomes at U+FF21, 0 at U+0030 becomes at U+FF10, and ! at U+0021 becomes at U+FF01.

Space gets the ideographic treatment

ASCII space U+0020 maps to Ideographic Space U+3000 instead of fullwidth space (which exists at U+FF00 but renders as a control glyph). U+3000 is the wide space CJK fonts use to fill one em cell, matching the visual width of the rest of the fullwidth output.

Letters, digits, and punctuation all covered

A-Z, a-z, 0-9, and every printable ASCII punctuation character has a fullwidth twin in U+FF00 onwards. Coverage is complete for the printable ASCII range.

Accents and CJK pass through

Accented Latin letters (é, ñ) sit outside the basic ASCII range, so they pass through unchanged. CJK characters, emoji, and any character above U+007E are also untouched.

Output length doubles visually

Each fullwidth character is twice as wide as its ASCII source on display. A 20-character input renders as roughly 40 columns on a fixed-width font. Plan for that when designing bios with strict character limits.

Worked example

Every printable ASCII character is shifted to its fullwidth twin in U+FF00 onwards. The space becomes U+3000 (ideographic space), wider than ASCII space and visually matched to the fullwidth letters.

Input
hello world 123!
Output
hello world 123!

Settings reference

Behaviour Effect on output
Letters A-Z, a-z Mapped to fullwidth at U+FF21 (capitals) and U+FF41 (lowercase). A -> , a -> .
Digits 0-9 Mapped to fullwidth at U+FF10. 0 -> .
ASCII punctuation Mapped to fullwidth at U+FF01-U+FF5E. ! -> , ? -> .
ASCII space Mapped to ideographic space U+3000 (wide).
Accented Latin Pass through unchanged because they are above U+007E.
CJK and emoji Pass through unchanged.
Newlines and tabs Pass through unchanged. Only printable ASCII 33-126 is remapped (plus space -> U+3000).

FAQ

Why is my space wider than the other characters?
ASCII space maps to Ideographic Space U+3000, which is one em wide (matching the fullwidth characters). If you want a normal-width space inside fullwidth text, paste a regular space afterwards; the input is the wide space by design.
Will it work in Instagram, Twitter, TikTok bios?
Yes. The Halfwidth and Fullwidth Forms block has shipped on every modern OS since the 1990s and renders cleanly on every social platform. The wide spacing reads as the vaporwave aesthetic on Western platforms and as standard CJK text alongside Japanese / Chinese / Korean characters.
Why are my accents not converted?
The fullwidth block only covers basic ASCII (codepoints 33-126). Accented Latin letters sit at U+00C0 onwards and have no fullwidth equivalent in Unicode. Strip accents first via remove accents if you need full coverage.
How do I undo fullwidth back to ASCII?
There is no clean reverse inside this site. A Unicode NFKC normalisation pass (in your editor or a Unicode utility) decomposes the Halfwidth and Fullwidth Forms block back to plain ASCII. The ideographic space U+3000 may stay as U+3000; a follow-up find and replace swaps it for U+0020 if needed.
Can I use this for monospace alignment?
Not really. Fullwidth characters are wide, not monospaced: every fullwidth character has the same width but that width is bigger than ASCII. For true monospace styling that aligns with code blocks, use monospace.