Finding characters by stroke order
Example page layout, beginning:
Finding characters by stroke order
| Stroke number in the character | ![]() |
![]() |
![]() |
![]() |
![]() |
* | Stroke code |
| 1. | 5 | ||||||
| 2. | 1 | ||||||
| 3. | 3 | ||||||
| 4. | 3 | ||||||
| 5. | 3 | ||||||
| 6. | |||||||
| Characters found: 4 | |||||||
| 屐 屣 履 屦 | |||||||
This character search method searches for a user-specified sequence of strokes in the desired character. The Chinese–Russian Center draws users’ attention to the fact that, when this search tool was created, stroke order was recorded for only 7,208 characters, or just half of those in the Chinese–Russian Center’s dictionary.
The symbol "*"
Read more about character stroke order here. To add a character’s stroke order or report an inaccuracy in the stroke-order section of a character entry, use the dictionary entry error report form linked from every character entry page.
End of example page layout.
Description of how it works
This search operates on the 'Strokes' column of the 'crc_main_bigdict' table, which lists a character’s stroke types (1 - horizontal, 2 - vertical, 3 - left-falling, 4 - right-falling, 5 - all others) in the order they are written. I would like this search form implemented in Java with some Ajax enhancements. I will explain using the search example above.
When the page opens, the user sees a table with the first row (a header showing images of stroke types) and a second row inviting them to choose the character’s first stroke type by clicking the checkbox in the appropriate column. As soon as the user checks a box, a number corresponding to the selected stroke type appears in the row’s rightmost cell (5 in our case), and a third row is added to the table (Ajax, to make the tool visually engaging!), inviting the user to select the second stroke type. Similarly, once a box is checked in the appropriate column of the third row, a number corresponding to the selected stroke type appears in its rightmost cell (1 this time in our example), and a fourth row appears with buttons for specifying the third stroke type. This continues until the user specifies the fifth stroke type in the sixth table row. At that point, the most interesting part begins: three new rows appear at once, rows 7, 8, and 9. Row 7 naturally contains buttons for selecting the sixth stroke type. Row 8 has a single cell spanning the entire row, devoted entirely to search result statistics: it displays "Characters found: 4". The next row, row 9, lists the four characters whose 'Strokes' entries begin with "51333".
In principle, the last two table rows could appear earlier, for example after the types of only the first three or four strokes have been specified. However, I am concerned that the load on MySQL could be heavy and the list of matching characters could take too long to load. I therefore propose developing this character search form with the number of initially specified strokes I have suggested before the list is displayed in the final row.
Introduce the concept of *.




