Cangjie input lookup. Enter Hanzi to see the Cangjie5 code as letters, radical glyphs and a key sequence — or reverse it: type a code or pick radicals to find the matching characters. Browser-only, zero tracking.
Cangjie Input Code Lookup (倉頡)
How to use
Pick a direction
Toggle between two modes at the top: "Char → Cangjie" looks up codes from characters, "Cangjie → Char" finds characters from a code. The input clears when you switch.
Enter characters or a code
For forward lookup, drop in one or more Hanzi (paste rare characters too). For reverse lookup, type the letter code (a–z), or click the radical keyboard below to spell the code key by key.
Click "Look Up"
Forward mode builds one card per character showing the letters, radical glyphs and the key sequence; reverse mode lists every character whose Cangjie code matches exactly. In reverse mode just press Enter.
Read the radicals and keys
Each letter maps to one radical (h→竹, q→手, i→戈…); the key-sequence cards show letter and radical together, so you can check your Cangjie decomposition while practising the input method.
Cangjie Input Lookup: Characters to Codes and Back Again
Cangjie (倉頡) is one of the oldest and most influential shape-based Chinese input methods, invented by Chu Bong-Foo in 1976. It decomposes every character into up to five radicals (字根), each mapped to a letter from a to z on the keyboard — 明, for instance, splits into 日 (a) and 月 (b), giving the code "ab". Unlike pinyin input, which relies on how a character sounds, Cangjie keys off how a character looks. That means you can type a character you can't even pronounce, as long as you can see its structure — which is exactly why Cangjie remains a staple for traditional-Chinese typesetting and among experienced users in Hong Kong and Taiwan. This tool exists to check that encoding both ways: paste a character to get its Cangjie code, or work backwards from a code to the characters.
The tool runs in two directions. Forward (Char → Cangjie): enter one or more Hanzi and each produces a result card showing three forms at once — the letter code (e.g. "hqi"), the radical glyphs (e.g. 竹手戈), and a per-key sequence with the letter and radical paired on each keycap, so you can see exactly how the character decomposes and what to press. Reverse (Cangjie → Char): type a letter code, or click the built-in radical keyboard to spell the code key by key, and the tool lists every character whose Cangjie code matches exactly — useful for learning decomposition, spotting duplicate-code (重碼) characters, or verifying which character a given code actually produces. Many characters also carry a short code (簡碼), and the card lists those too.
Where the code table comes from
None of the codes are invented. They come from a public, open-source code table: this tool uses the cangjie5 table from the Rime input engine (the rime-cangjie project). That table states its own provenance as 《五倉世紀》 from www.chinesecj.com, and its schema credits 發明人 朱邦復先生 — Chu Bong-Foo — as the inventor of the method. Its licensing is inconsistent upstream, and we report that rather than tidy it away: the repository is marked LGPL-3.0, while the dictionary files themselves carry the header "License: GPL". What it is not is a copy of 朱邦復工作室's own published materials — the studio's site (cbflabs.com) permits reuse with attribution but expressly forbids commercial gain, 「歡迎網友註明出處後轉載,但嚴禁以商業行為牟利」, and this page carries ads. That is the distinction worth drawing. The whole lookup is fully deterministic: the same character always returns the same code, with no random generation and no online model or server call — the table is downloaded once and cached locally in your browser. One limit on coverage: what ships here is the cangjie5 base table — 21,469 characters carrying 23,935 codes between them. Upstream also publishes an extended (增廣) table covering a further 53,681 characters — a set that does not overlap the base table at all — which this tool does not include, so a character with no code here may well have one in a full cangjie5 install. Cangjie has also gone through several generations (3rd, 5th and others) that decompose some characters differently.
"Not by sound but by shape — if you can see it, you can type it." That is the essence of Cangjie.
Who uses it
The use cases are broader than you'd expect. Cangjie learners check their decomposition in real time and confirm whether they split a character correctly. Experienced Cangjie typists recover the code for a rare character, or one they haven't typed in years. Traditional-Chinese typesetters and editors verify codes while proofreading, building custom glyphs, or handling variant forms. Input-method developers and researchers use the reverse lookup to inspect duplicate codes and study the distribution of the table. And anyone simply curious about character structure can use the char ↔ code ↔ radical mapping to see, concretely, how Hanzi are taken apart. Everything runs locally in your browser — whatever you type is never uploaded, stored, or tracked. This is a pure utility lookup, with no fortune-telling or character-divination component whatsoever.
10 Facts about Cangjie Input
Cangjie was invented by Chu Bong-Foo in 1976. First called the "form-meaning method", it was renamed after Cangjie, the legendary scribe said to have created Chinese characters — one of the earliest practical shape-based input methods.
Cangjie breaks each character into at most five radicals, mapped onto the a–z letter keys — encoding by shape, not by sound.
The radicals are grouped logically: a–g are "philosophical" (sun, moon, gold, wood, water, fire, earth), h–n are "strokes", o–r are "body" (person, heart, hand, mouth), s–y are "shapes", and z is special.
Cangjie evolved across generations: the 3rd and 5th editions are the most widespread. They decompose some characters differently, so the version matters — this tool uses the cangjie5 base table.
Cangjie is a shape code, not a sound code: you don't need to know how a character is pronounced to type it — only to see its structure. That makes it more reliable than pinyin for rare and variant characters.
"Quick" (Sucheng / simplified Cangjie) is a stripped-down variant taking only a character's first and last radical — easier to learn, but with far more code collisions, so you often pick from a candidate list.
Cangjie's decomposition rules have been implemented and copied freely by the community for decades. It is often said that Chu Bong-Foo gave up patent rights, but accounts disagree — some say renounced in 1982, others that no application was ever filed — and we could find no patent number in any jurisdiction, so we assert neither. What is checkable is that the cangjie5 table published by open-source projects such as Rime is openly available today.
A single Cangjie code can map to several characters — a "code collision" (重碼). This tool's reverse lookup lists every candidate under a code, so you can see exactly which characters clash.
Cangjie has long held a central place in traditional-Chinese computing in Taiwan and Hong Kong; many professional typesetters, publishers and veteran users still prefer it, valuing its coverage of uncommon characters.
Cangjie, Wubi, Zhuyin and pinyin represent different philosophies of input: Wubi is also shape-based but decomposes differently, while Zhuyin and pinyin are sound-based. Learning Cangjie illuminates the whole logic of taking Hanzi apart by shape.
Frequently Asked Questions
-
Cangjie is a shape-based Chinese input method invented by Chu Bong-Foo in 1976. It splits each character into up to five radicals, mapped onto the a–z letter keys — input by shape, not by sound. You can type a character you can't pronounce, as long as you can see its structure.
-
They are two views of the same code. The "letters" are the keys you actually press (e.g. hqi); the "radicals" are the component glyphs those letters stand for (h→竹, q→手, i→戈, i.e. 竹手戈). This tool shows both, plus a per-key letter+radical card.
-
Yes, in forward mode. Paste multiple characters and the tool builds one card per character; duplicates are de-duplicated and shown once. Reverse mode handles one Cangjie code at a time.
-
Switch to "Cangjie → Char" mode, type a letter code (a–z) or click the radical keyboard to spell it, then look up. The tool lists every character whose Cangjie code matches your input exactly — handy for spotting duplicate-code characters and verifying an encoding.
-
Because this tool ships the cangjie5 base table — 21,469 characters and 23,935 codes — while upstream rime-cangjie also publishes an extended (增廣) table of a further 53,681 characters, not overlapping the base table, that is not included here. Rare characters, many variant forms and extension-block Hanzi mostly live in that extended half. So "no code" means precisely "not in this tool's base table" — not that the character cannot be typed in Cangjie. A full cangjie5 install may well have it.
-
The table records, for some characters, a main code plus a "short code" (a shorter auxiliary encoding), or alternates arising from variant forms. The tool lists all of a character's codes, treating the first as the main code and labelling the rest as short codes.
-
This tool uses Cangjie 5th generation (cangjie5) — specifically the base table from the open-source Rime engine's rime-cangjie project, not its extended (增廣) table. The 3rd and 5th generations decompose some characters differently, so if your input method uses another generation, a few characters' codes may differ slightly.
-
Not the same. This tool uses the cangjie5 table published by the open-source Rime project, which states its provenance as 《五倉世紀》 from www.chinesecj.com and credits 發明人 朱邦復先生 in its schema. It is not a copy of 朱邦復工作室's own materials: the studio's site (cbflabs.com) allows reuse with attribution but forbids commercial gain, and this page carries ads — so the Rime table is the one we ship. Worth noting: Rime's repository is marked LGPL-3.0 while the dictionary files carry the header "License: GPL". Upstream has not reconciled the two, and we would rather say so than pick one.
-
No. All lookups run locally in your browser; the code-table file is downloaded once and cached locally, with no server calls. Whether you use forward or reverse lookup, what you type is never uploaded, stored, or tracked.
-
No. This is a pure input-method utility that looks up the mapping between characters and Cangjie codes in both directions, with no metaphysics, character-divination or fortune component. Its only goal is to tell you a character's Cangjie code, or which characters a code produces.
Related News
You may be interested in these recent stories from our newsroom.
-
Saudi Arabia's humain-m3 Is MiniMax's M3, Under MiniMax's Licence
Same 428 billion parameters, same 23 billion active, same mixture-of-experts design as the model Shanghai open-weighted in June. The Arabic...
-
OpenAI's GPT-6 Astra Costs 2.5 Times More and Matches GPT-5.6 on the Independent Index
OpenAI called the launch the start of the AGI era. Artificial Analysis, which OpenAI neither ran nor selected, scores Astra 61 — exactly wha...
-
Six AI Releases in Three Days, and Two Were New Models
The 72-hour launch count folds together two new models, a safeguard variant, two point releases, a pricing tier and a feature that is not a...
Method & sources
How it computes
A lookup, not a calculation: 21,469 Chinese characters carrying 23,935 Cangjie 5 codes between them, in a table compiled into the page. Nothing is computed at request time and nothing is fetched. A character that has more than one valid code shows all of them rather than only the first.
What this tool implements
- Cangjie 5 (倉頡五代) code table as distributed by the open-source Rime input-method project. It is NOT a redistribution of 朱邦復工作室's own published materials: cbflabs.com licenses those for reuse with attribution but expressly not for commercial gain (「歡迎網友註明出處後轉載,但嚴禁以商業行為牟利」), which is the distinction that matters for a table shipped on an ad-supported page.
- Every code on file for a character is shown. Input methods differ on which is canonical, so picking one silently would misrepresent the table.
- The vendored table is cangjie5.base ONLY: 21,469 characters and 23,935 codes, reconciling exactly against upstream. Upstream also ships an extended (增廣) table of 53,681 FURTHER characters — measured disjoint from base, sharing no characters with it — which this tool does NOT include, so a character with no code here may still have one in a full cangjie5 install. A character outside the table returns no result rather than a guess.
Sources
- Rime input-method project, rime-cangjie (cangjie5.base.dict.yaml): https://github.com/rime/rime-cangjie — the community-distributed Cangjie 5 code table. Its stated provenance is 《五倉世紀》 from www.chinesecj.com, the schema credits 發明人 朱邦復先生, and upstream AUTHORS records the chain as "Derived from ibus-table by acevery (Yu Yuwei) : (LGPL) and based on original work by 朱邦復 / Chu Bong-Foo : (Public Domain)" — that public-domain line is upstream's characterisation, repeated here and not verified by us. Licensing is inconsistent upstream and is reported rather than resolved: the repository, the LICENSE file and AUTHORS all say LGPL-3.0, while the dict files carry the header "# License: GPL". Vendored 2026-06-17; all of the above re-verified 2026-09-01.
What can make this go out of date
- The table is a vendored snapshot taken on 2026-06-17. rime-cangjie continues to receive corrections upstream and nothing on this page refetches it, so currency is a scheduled review task rather than an automatic one.
Pick up where you left off
Stored only in this browser — never sent to our servers.