These are counts in one KanjiVG snapshot. A count is not a rule of stroke order. The page makes no claim about meaning.

Each plate colors the arguments of the character’s blocked composition in stroke-number order: cinnabar first, indigo second, ochre third, celadon fourth. The plate plays the character’s own stroke order. Click a plate to replay. With reduced motion the finished character stays still, and the colors stay. The draw timings are unchanged. The plate stays cream in either theme.

On this page

How a blocked composition is read

Question
After Inferred operators for missing rows and Evaluation rules for the exception classes, 739 of the 2,136 jōyō characters are still unmapped. What blocks them? Every blocked composition is sorted by a measured kind, every character takes a class, and two small ordering rules are tested against the recorded stroke order.
Blocked composition
A KanjiVG group with two or more argument slots, no kvg:position row (Operator trees and stroke order), and no bounding-box operator (Inferred operators for missing rows). In operator terms: the arguments are stored, and no operator is found that puts them together.
Kinds
Taken in this order. 4+ arguments: no IDC has that arity. Label: the boxes give an operator, and a kvg:position on a slot contradicts it. Crossing: a stroke of one argument properly crosses a stroke of another (the test of Crossings and order, touch tolerance 1.5). Touching: no crossing, and two arguments touch within 1.5. Apart: the arguments’ ink does not meet.
Box split
Crossing, touching and apart are each split by the argument boxes. Inside: one box lies at least 80% inside another, the enclosure threshold of Inferred operators for missing rows. Interlock: not inside, and two boxes overlap more than 45% on both axes, so neither split test can pass. Offset: the rest; the boxes are apart on one axis and a split test failed on a centre or side condition.
Character class
A character takes the first kind among its blocked compositions in the order 4+ arguments, label, crossing, touching, apart. Partial: some other composition of the character got an inferred operator. Pure: none did. These are the 305 and 434 of Inferred operators for missing rows.
Bare stroke
An argument that is a run of strokes with no group of its own in the file, so no stored component entry (the one stroke 一 under 本). Written · for each stroke. A group with no kvg:element is also written ·.
Rules
Each rule gives a blocked composition an argument order from the boxes alone and names no operator. Top: with no crossing, the argument whose box starts higher goes first. Middle: with a crossing, the argument whose box centre is higher goes first. Ties go by the left edge. A character is brought into the walk when every blocked composition gets an order and the depth-first walk is then stroke 1 through N.
Scope
Inferred operators for missing rows reads boxes only inside the characters that Operator trees and stroke order left unmapped. The rules are scoped the same way, inside the 739. Every earlier hit is walked again, and the page also counts what the rules would do outside that scope.

The 739, reproduced

Class Inferred operators After the evaluation rules

The 985 blocked compositions

Kind Compositions 2 args 3 args 4+ args Inside Interlock Offset Bare-stroke argument
The 985 blocked compositions by kind. The bars add to 985.

The 739 by blocker class

Class Characters Partial Pure Only this kind With a later kind At the root Inside a component

Blocked compositions per character

Blocked compositions Characters Compositions

Four guesses, tested

Guess Compositions, yes Compositions, no Characters, yes Characters, no

The order is already in the file

Walk with every blocked composition in file order Characters

Two ordering rules

Rule Fires on Order right Order wrong Into the walk Walk-miss Still unmapped Hits lost

Both rules, by class

Class Characters Into the walk Walk-miss Still unmapped

Examples by kind

Kind Character Group Arguments (strokes) Rule order

Every character, by class

Class Characters List (Gallery order)

Plates

KanjiVG · CC BY-SA 3.0

What this shows