Open the appHanja Normalization

Have you ever searched a Hanja document and failed to find a character that is clearly there?
It looks like the very same to your eyes, but the search finds nothing.
Copying and pasting it doesn’t help either.

The cause is that the same-looking Hanja has several Unicode codes.
One character to a human, different characters to a computer.
This tool unifies those scattered codes into one standard code.

How to Use

Basic Steps

  1. Put the text into the Input Text box.
  2. Click [Normalize].
  3. Copy the result or save it as a file.

Not a single glyph changes shape.
The appearance stays exactly the same and only the codes underneath get tidied, so you cannot tell by looking what changed.
That’s why the statistics below matter.

Checking the Result

ItemMeaning
Characters replacedHow many characters had their code changed
Mapping typesHow many kinds of Hanja were involved

If “characters replaced” is 320 and “mapping types” is 5, that means five kinds of Hanja were scattered across 320 places.
If both are 0, that document was already clean.

Good to Know

What Multi-code Hanja Are

Unicode has a separate area called CJK Compatibility Ideographs.
It exists to preserve round-trip compatibility with older national character sets in Korea, China, and Japan — and the characters living there are the source of the trouble.

CodeWhich block
Standard U+8ECACJK Unified Ideographs
Compatibility U+F902CJK Compatibility Ideographs

They look identical. But the codes differ, so search fails, sorting puts them in odd places, and comparing two documents flags them as different characters.

How do such characters end up in a document? Usually like this.

  • Converting from old word processor files or other encodings
  • Merging manuscripts written by several people with different input methods
  • Mixing in text copied from the web

You end up with a document where some are standard and others are compatibility codes.

What the Conversion Is Based On

Conversion runs on 1,002 mapping entries.
When a character from the compatibility area appears, it is moved to its corresponding standard code — there is no judgment involved.

豈 U+F900  →  豈 U+8C48
更 U+F901  →  更 U+66F4
車 U+F902  →  車 U+8ECA
賈 U+F903  →  賈 U+8CC8

Each character is checked one by one: if it’s on the list it changes, if not it stays.
Characters outside the list are never touched, so there’s no risk of your text being altered unexpectedly.

When to Use It

  • When search fails : If a Hanja is there but won’t be found, this is almost always why.
  • Before merging documents : Normalizing first prevents confusion later when combining work from several people.
  • Before indexing : Stops one character from splitting into two entries.
  • Before loading into a database : Finding this after storage is far more painful to fix.

It’s Built into Other Tools Too

Five apps share this same normalization module.
Any job that compares characters against each other runs into the same problem.

What differs is where each one applies it.

Index Tagger — applies it to both the manuscript and the conversion table.
If your table holds the standard while the manuscript has the compatibility , nothing matches at all.
Bringing both to the same basis prevents that.

Index Extractor — applies it to the manuscript and the extraction symbols.
There’s an extra reason here: without normalization the same word splits into two entries in the list.
Two differently coded each take their own line. Deduplication can only do its job once the codes are unified.

Tag Converter — applies it when drawing to the screen.
The source is left untouched and only the displayed result is tidied, because seeing the same character render differently during review is confusing.

HWP Image Detector — applies it to the surrounding context text shown beside each image.
Sentences pulled out of HWP files often carry compatibility codes, and the result needs to be searchable in the browser.

When-Meet — applies it to participant names, locations, and notes.
When someone writes their name in Hanja, it stops one person from being counted as two because of a code difference.

So you don’t need to normalize separately when using those apps.
Use this tool when you want the document itself cleaned up for keeping, or before handing it to another program.

Upload

Click the Upload button in each app to load text files.

Supported formats: .txt, .md, .html, .xml, .tsv, .csv

Save

Download the converted result with the Save button.

Copy

Copy the result to your clipboard with the Copy button.

Open the appHanja Normalization