Full-Width & Half-Width Character Converter
If this tool helped you, you can buy us a coffee ☕
Convert between full-width and half-width characters with one click to fix inconsistent text formatting.

Random Email Generator
Bulk generate random email addresses for testing and sign-ups with custom prefixes and domains.

Chinese D-Series Paper Size Lookup
Look up exact millimeter dimensions for D0 to D6 series paper based on the GB/T 19999-2003 national standard, suitable for book, magazine, and office paper design.

Random Decimal Generator
Generate random decimals with a specified range, decimal places, and quantity. Ideal for data analysis, simulation experiments, and more.
When copying and pasting text from different sources, you often encounter formatting issues caused by a mix of full-width and half-width characters. This tool is designed to solve this exact pain point. It accurately identifies and converts ASCII characters (numbers, letters, and punctuation) between their full-width (e.g., "123") and half-width (e.g., "123") forms to unify your text's visual style. Full-width characters refer to the two-byte character forms used in East Asian text encoding, while half-width characters are the standard single-byte representations of ASCII characters.
How can I tell if there are full-width characters in my text?
Full-width numbers and letters are noticeably wider than their half-width counterparts. For example, a full-width "A" (U+FF21) takes up more space than a half-width "A" (U+0041).
Will the conversion affect Chinese characters?
No. This tool only converts ASCII characters (letters, numbers, and punctuation). Chinese characters, which are natively full-width, will remain unchanged.
Exercise caution when converting symbols in programming code, as some languages strictly differentiate between full-width and half-width quotes or parentheses. We recommend manually verifying critical symbols after conversion.
In Japanese typography, the full-width tilde "~" (U+FF5E) and the half-width tilde "~" (U+007E) carry different semantics. Please confirm your use case before converting. A typical example is as follows:
Input: API~URL → Output: API~URL