Chinese full-width ↔ half-width punctuation converter. Auto-fix mixed-width text for clean CJK typography, publishing, and writing. Optional digit/letter conversion.
Chinese Punctuation Converter (全角 ↔ 半角)
How to use
Pick direction
Full → half-width (simplifies code, normalises for processing) or half → full-width (cleans up CJK typography).
Pick what to convert
Tick "Punctuation" (most common) or "Digits & ASCII letters" (for mixed-width digit cleanup).
Paste text
Conversion is live. Chains nicely with the simplified-traditional converter.
Copy result
One-click copy of the cleaned-up text.
Full-Width vs. Half-Width: CJK Typography Conventions
Full-width (全角) is the traditional CJK (Chinese / Japanese / Korean) typography convention — each character occupies an equal-width square cell, matching the width of a Chinese character. Half-width (半角) is the traditional width for Western ASCII characters, roughly half a CJK cell.
Why this matters: In CJK publications, the comma "," and English comma "," are two different characters — different visual width, different Unicode codepoints, different occupied space. Mixed-width text looks unprofessional in Chinese.
Common scenarios
(1) Text pasted from English software (Word, Google Docs): punctuation is usually half-width. Needs converting to full-width to match CJK standards. (2) OCR output: often contains accidental mixed-width characters. (3) Code embedded in Chinese: code should stay half-width (preserving syntax), but surrounding prose should be full-width. (4) Database input: sometimes you want all punctuation half-width for consistent search/filter.
Unicode implementation
In Unicode, full-width ASCII lives in U+FF01 – U+FF5E (matching ASCII U+0021 – U+007E). The full-width space is U+3000 (matching ASCII space U+0020). CJK punctuation (「」, 《》, ,, 。) lives in dedicated CJK punctuation blocks.
This tool follows the Unicode-standard full/half-width mapping. All processing is in-browser — no text leaves your device.
10 Facts about Full/Half-Width
The concept originated in Japan and was adopted by Chinese and Korean typography. Japanese still enforces it rigidly; Chinese is moderate; Korean is the most relaxed.
The full-width space (U+3000) is NOT "two regular spaces". It's one character, equivalent in width to a full-width CJK character. A common OCR error — tools may misread it as 2 ASCII spaces.
The PRC MoE mandates full-width punctuation in official Chinese documents. Taiwan, HK, SG/MY publications follow similar conventions. But tech docs and the web often mix half-width freely.
Chinese IMEs (Sogou, Apple, Microsoft, etc.) default to inserting full-width punctuation. This is why typing a comma in Chinese mode produces 「,」 instead of ",".
In code, half-width is mandatory. Python's print("Hello") with full-width print(「Hello」) is a syntax error. A classic mistake among Chinese students learning to code.
Email addresses and URLs must be half-width. If an email like [email protected] gets converted to [email protected] (full-width), it'll fail to send. A critical OCR-cleanup scenario.
ISBNs, phone numbers are another half-width-mandatory zone. Some legacy Chinese software once auto-fullwidth-ified these digits, causing cross-system data incompatibility. Modern systems have fixed this.
Lua, Python, JavaScript and many languages accept full-width characters as variable names (Unicode identifiers), but it's strongly discouraged. Other developers reading the code will be confused.
OCR and scanning software is the biggest source of mixed-width content. When scanning Chinese newspapers or documents, the engine sometimes flags digits as full-width (since they're surrounded by CJK). This tool is a quick way to clean that up.
Pairs with RT-CHN-037 (Simp/Trad Converter) and RT-CHN-040 (Text Cleaner) — the complete Chinese text preprocessing toolkit.
Frequently Asked Questions
-
No. All conversion is in-browser. No text is sent anywhere. Privacy-safe.
-
Pure Chinese publishing: full-width. Code, emails, URLs, ISBNs: half-width. Mixed Chinese/English: full-width for Chinese sections, half-width for English.
-
Different Unicode characters. Full-width space (U+3000) is one CJK-cell wide. Regular space (U+0020) is about half a CJK cell. Visually distinct.
-
Reverse direction and convert again (full → half → full). But it won't 100% restore — some characters (like CJK comma 「、」) lack a direct half-width counterpart, so reverse conversion may pick the wrong variant.
-
This tool handles plain text. Documents need Word macros or Pandoc. But you can paste large text chunks and process them.
-
When enabled, the tool also converts 0-9 and A-Z, a-z. Otherwise only punctuation is touched. OCR-output Chinese digits may be full-width (012); this option cleans them.
-
Correct — CJK comma 「、」, double angle 「《》」 have no ASCII equivalents. The tool either preserves them or maps to the nearest ASCII (e.g. 「、」 → ",").
-
Visual consistency. Chinese game fonts are designed at CJK-cell width; half-width letters look "cramped". Many game titles and menus use full-width letters for visual balance.
-
Depends on collation. MySQL `utf8mb4_unicode_ci` ignores the difference; `utf8mb4_bin` preserves it. Most modern apps normalize (force all to half or all to full) before indexing to avoid ambiguity.
-
This tool is purely front-end — no server API. If you need batch processing, building a CLI tool from the same mapping rules is trivial in JavaScript, Python, or any language.
Pick up where you left off
Stored only in this browser — never sent to our servers.