/*---------------------------------------------------------------------------* Source File *---------------------------------------------------------------------------*/ #include #include #include "patterns.h" PRCPoint PrototypeListPointArray[PDIC_WHOLE_POINT_NUM] = { {7, 9}, {54, 48}, {-1, -1}, {51, 9}, {13, 53}, {-1, -1}, {29, 0}, {33, 62}, {-1, -1}, {0, 31}, {60, 32}, {-1, -1}, {29, 0}, {31, 62}, {-1, -1}, {34, 0}, {38, 63}, {-1, -1}, {6, 32}, {52, 26}, {-1, -1}, {1, 32}, {62, 32}, {-1, -1}, {24, 1}, {11, 15}, {17, 52}, {36, 63}, {51, 37}, {43, 3}, {24, 0}, {-1, -1}, {32, 1}, {43, 8}, {50, 27}, {42, 62}, {26, 61}, {14, 39}, {12, 19}, {28, 3}, {-1, -1}, {31, 4}, {17, 22}, {19, 50}, {32, 59}, {45, 50}, {44, 11}, {32, 2}, {-1, -1}, {48, 0}, {15, 62}, {-1, -1}, {31, 0}, {32, 62}, {-1, -1}, {22, 10}, {36, 0}, {40, 63}, {-1, -1}, {18, 17}, {33, 0}, {33, 54}, {-1, -1}, {24, 63}, {42, 63}, {-1, -1}, {18, 19}, {13, 7}, {30, 0}, {47, 21}, {13, 63}, {50, 62}, {-1, -1}, {16, 11}, {24, 0}, {44, 5}, {46, 24}, {26, 28}, {51, 50}, {32, 63}, {11, 52}, {-1, -1}, {33, 0}, {12, 44}, {50, 44}, {-1, -1}, {34, 9}, {36, 63}, {-1, -1}, {57, 38}, {4, 40}, {29, 0}, {37, 63}, {-1, -1}, {14, 0}, {15, 35}, {33, 30}, {48, 45}, {37, 63}, {17, 55}, {-1, -1}, {16, 12}, {44, 12}, {-1, -1}, {15, 2}, {49, 0}, {-1, -1}, {12, 2}, {16, 31}, {34, 28}, {50, 44}, {36, 63}, {14, 57}, {-1, -1}, {29, 0}, {19, 30}, {20, 55}, {29, 63}, {44, 51}, {37, 36}, {19, 38}, {-1, -1}, {42, 9}, {37, 0}, {20, 4}, {14, 44}, {31, 63}, {49, 54}, {43, 34}, {18, 36}, {-1, -1}, {13, 0}, {15, 17}, {-1, -1}, {19, 4}, {50, 3}, {34, 63}, {-1, -1}, {10, 1}, {53, 0}, {25, 62}, {-1, -1}, {14, 1}, {49, 1}, {24, 62}, {-1, -1}, {25, 28}, {39, 37}, {-1, -1}, {39, 11}, {23, 0}, {14, 16}, {44, 37}, {48, 53}, {37, 63}, {19, 58}, {16, 38}, {43, 17}, {-1, -1}, {39, 21}, {45, 12}, {39, 1}, {20, 7}, {21, 23}, {44, 46}, {40, 62}, {28, 61}, {22, 42}, {40, 19}, {-1, -1}, {24, 27}, {16, 12}, {20, 1}, {35, 4}, {39, 17}, {20, 37}, {23, 62}, {46, 52}, {31, 30}, {-1, -1}, {46, 16}, {32, 0}, {15, 12}, {24, 31}, {46, 19}, {36, 61}, {-1, -1}, {46, 15}, {43, 28}, {29, 29}, {18, 22}, {15, 8}, {33, 0}, {45, 10}, {38, 62}, {-1, -1}, {61, 11}, {0, 31}, {61, 50}, {-1, -1}, {0, 21}, {61, 19}, {-1, -1}, {0, 43}, {60, 42}, {-1, -1}, {0, 8}, {63, 30}, {0, 54}, {-1, -1}, {45, 18}, {34, 0}, {15, 5}, {6, 20}, {4, 49}, {10, 60}, {25, 59}, {41, 24}, {42, 39}, {58, 62}, {-1, -1}, {15, 0}, {18, 58}, {16, 44}, {29, 33}, {39, 36}, {47, 52}, {32, 63}, {17, 56}, {-1, -1}, {19, 0}, {22, 60}, {-1, -1}, {22, 36}, {43, 45}, {36, 62}, {23, 61}, {-1, -1}, {12, 56}, {29, 40}, {34, 0}, {23, 53}, {29, 63}, {35, 58}, {32, 46}, {49, 52}, {-1, -1}, {55, 18}, {44, 4}, {23, 0}, {7, 15}, {6, 34}, {16, 54}, {35, 63}, {56, 49}, {-1, -1}, {35, 41}, {21, 26}, {7, 38}, {20, 63}, {32, 52}, {35, 0}, {40, 55}, {52, 60}, {-1, -1}, {40, 28}, {19, 25}, {10, 41}, {27, 56}, {41, 46}, {-1, -1}, {46, 0}, {42, 44}, {52, 61}, {-1, -1}, {10, 31}, {51, 27}, {52, 14}, {40, 3}, {23, 2}, {7, 16}, {5, 44}, {26, 62}, {59, 56}, {-1, -1}, {46, 22}, {39, 2}, {25, 5}, {36, 49}, {28, 62}, {-1, -1}, {14, 35}, {43, 36}, {-1, -1}, {18, 39}, {40, 19}, {39, 0}, {28, 56}, {37, 62}, {32, 33}, {43, 34}, {-1, -1}, {39, 13}, {36, 2}, {24, 0}, {15, 16}, {24, 24}, {41, 9}, {38, 56}, {24, 62}, {23, 44}, {46, 26}, {-1, -1}, {28, 0}, {34, 5}, {15, 13}, {16, 27}, {38, 25}, {47, 16}, {41, 8}, {-1, -1}, {24, 32}, {20, 40}, {47, 42}, {51, 54}, {21, 62}, {11, 51}, {21, 42}, {-1, -1}, {17, 0}, {19, 62}, {25, 33}, {32, 34}, {34, 53}, {43, 62}, {-1, -1}, {26, 0}, {33, 5}, {-1, -1}, {31, 20}, {35, 60}, {-1, -1}, {31, 21}, {31, 62}, {-1, -1}, {26, 0}, {37, 9}, {-1, -1}, {19, 24}, {34, 14}, {29, 56}, {36, 63}, {44, 51}, {-1, -1}, {29, 1}, {40, 10}, {-1, -1}, {25, 0}, {33, 6}, {-1, -1}, {19, 22}, {29, 19}, {28, 57}, {41, 60}, {-1, -1}, {12, 60}, {40, 16}, {32, 54}, {40, 63}, {51, 54}, {-1, -1}, {41, 1}, {48, 6}, {-1, -1}, {32, 0}, {38, 6}, {-1, -1}, {38, 17}, {40, 57}, {28, 62}, {20, 52}, {-1, -1}, {23, 18}, {36, 11}, {37, 40}, {31, 63}, {21, 60}, {21, 44}, {43, 30}, {-1, -1}, {26, 0}, {40, 8}, {-1, -1}, {26, 0}, {35, 5}, {-1, -1}, {20, 19}, {35, 20}, {38, 52}, {29, 63}, {27, 47}, {42, 33}, {-1, -1}, {21, 0}, {22, 60}, {-1, -1}, {41, 30}, {18, 42}, {43, 60}, {-1, -1}, {17, 0}, {18, 60}, {-1, -1}, {35, 31}, {17, 50}, {-1, -1}, {27, 46}, {47, 63}, {-1, -1}, {8, 27}, {32, 18}, {34, 1}, {23, 3}, {20, 13}, {22, 63}, {21, 36}, {39, 25}, {41, 36}, {22, 39}, {39, 58}, {53, 57}, {-1, -1}, {17, 61}, {38, 20}, {33, 0}, {29, 47}, {44, 62}, {-1, -1}, {2, 0}, {4, 62}, {8, 23}, {20, 5}, {27, 17}, {27, 55}, {29, 23}, {43, 4}, {58, 59}, {-1, -1}, {0, 21}, {4, 8}, {16, 9}, {18, 53}, {18, 21}, {30, 11}, {38, 56}, {35, 25}, {48, 12}, {58, 51}, {63, 50}, {-1, -1}, {3, 2}, {9, 62}, {13, 21}, {38, 0}, {48, 6}, {58, 58}, {-1, -1}, {0, 18}, {3, 3}, {19, 7}, {17, 59}, {29, 13}, {44, 10}, {50, 53}, {63, 58}, {-1, -1}, {29, 0}, {10, 9}, {1, 30}, {5, 45}, {25, 63}, {51, 56}, {61, 36}, {47, 9}, {29, 0}, {19, 9}, {26, 22}, {59, 17}, {-1, -1}, {31, 12}, {3, 20}, {0, 34}, {11, 47}, {44, 51}, {63, 31}, {54, 16}, {31, 10}, {-1, -1}, {19, 0}, {29, 60}, {-1, -1}, {22, 9}, {24, 3}, {36, 6}, {44, 19}, {34, 30}, {21, 30}, {-1, -1}, {17, 0}, {26, 63}, {20, 20}, {36, 3}, {45, 10}, {36, 34}, {21, 33}, {-1, -1}, {39, 16}, {37, 1}, {27, 0}, {17, 21}, {27, 26}, {36, 18}, {29, 37}, {34, 62}, {41, 63}, {44, 53}, {36, 32}, {44, 32}, {-1, -1}, {40, 11}, {24, 0}, {9, 16}, {21, 30}, {41, 26}, {-1, -1}, {44, 7}, {51, 63}, {-1, -1}, {9, 0}, {15, 63}, {21, 15}, {36, 10}, {53, 15}, {-1, -1}, {0, 57}, {9, 52}, {33, 2}, {32, 19}, {50, 27}, {46, 54}, {63, 57}, {-1, -1}, {47, 18}, {41, 2}, {19, 1}, {12, 13}, {16, 26}, {44, 35}, {49, 48}, {34, 63}, {17, 60}, {12, 48}, {-1, -1}, {0, 56}, {34, 4}, {29, 24}, {47, 30}, {52, 46}, {38, 57}, {13, 51}, {24, 58}, {62, 53}, {-1, -1}, {11, 20}, {49, 13}, {-1, -1}, {35, 0}, {27, 45}, {32, 59}, {42, 63}, {48, 56}, {-1, -1}, {32, 0}, {23, 56}, {34, 63}, {51, 49}, {-1, -1}, {12, 23}, {47, 21}, {-1, -1}, {11, 62}, {33, 21}, {36, 0}, {29, 50}, {35, 62}, {55, 53}, {-1, -1}, {6, 23}, {52, 22}, {-1, -1}, {6, 0}, {8, 52}, {22, 62}, {30, 57}, {46, 1}, {48, 46}, {59, 60}, {-1, -1}, {1, 20}, {2, 4}, {17, 2}, {14, 54}, {28, 61}, {52, 1}, {45, 38}, {49, 52}, {62, 58}, {-1, -1}, {6, 5}, {36, 62}, {55, 0}, {-1, -1}, {0, 21}, {12, 15}, {25, 51}, {61, 11}, {-1, -1}, {0, 7}, {24, 54}, {32, 10}, {54, 56}, {60, 7}, {-1, -1}, {6, 4}, {0, 30}, {10, 56}, {22, 48}, {25, 32}, {36, 53}, {53, 54}, {62, 30}, {47, 10}, {-1, -1}, {0, 18}, {7, 11}, {13, 15}, {10, 40}, {21, 52}, {32, 40}, {33, 23}, {40, 47}, {57, 46}, {61, 32}, {53, 10}, {63, 14}, {-1, -1}, {4, 0}, {55, 49}, {-1, -1}, {49, 1}, {13, 59}, {-1, -1}, {49, 1}, {14, 60}, {-1, -1}, {4, 7}, {55, 61}, {-1, -1}, {0, 3}, {18, 8}, {32, 25}, {31, 38}, {3, 56}, {-1, -1}, {51, 6}, {30, 32}, {31, 50}, {41, 57}, {62, 53}, {-1, -1}, {17, 0}, {33, 23}, {-1, -1}, {45, 4}, {18, 63}, {-1, -1}, {49, 0}, {16, 62}, {-1, -1}, {13, 5}, {33, 28}, {-1, -1}, {11, 9}, {15, 0}, {23, 4}, {29, 32}, {44, 13}, {46, 55}, {34, 63}, {21, 60}, {28, 44}, {52, 30}, {-1, -1}, {8, 3}, {54, 0}, {9, 59}, {53, 61}, {-1, -1}, {20, 27}, {41, 43}, {-1, -1}, {16, 4}, {34, 3}, {25, 23}, {34, 22}, {38, 33}, {32, 56}, {22, 62}, {24, 43}, {45, 26}, {-1, -1}, {34, 0}, {11, 63}, {61, 25}, {1, 25}, {60, 60}, {32, 1}, {-1, -1}, {0, 35}, {4, 20}, {19, 18}, {49, 47}, {63, 34}, {57, 18}, {42, 18}, {15, 44}, {2, 36}, {-1, -1}, {31, 0}, {35, 40}, {-1, -1}, {26, 55}, {33, 60}, {-1, -1}, {0, 21}, {61, 19}, {-1, -1}, {0, 43}, {60, 42}, {-1, -1}, {19, 0}, {21, 61}, {-1, -1}, {42, 0}, {43, 60}, {-1, -1}, {19, 0}, {21, 61}, {-1, -1}, {42, 0}, {43, 60}, {-1, -1}, {0, 21}, {61, 19}, {-1, -1}, {0, 43}, {60, 42}, {-1, -1}, {16, 11}, {24, 0}, {44, 5}, {46, 24}, {31, 31}, {32, 47}, {31, 60}, {-1, -1}, {51, 57}, {8, 10}, {23, 4}, {36, 14}, {11, 40}, {24, 49}, {52, 41}, {-1, -1}, {8, 10}, {23, 4}, {36, 14}, {11, 40}, {24, 49}, {52, 41}, {-1, -1}, {8, 10}, {51, 57}, {-1, -1}, {47, 23}, {41, 7}, {19, 6}, {12, 18}, {16, 26}, {44, 35}, {49, 43}, {34, 58}, {17, 55}, {12, 43}, {-1, -1}, {24, 0}, {26, 61}, {-1, -1}, {37, 0}, {38, 60}, {-1, -1}, {47, 23}, {41, 7}, {19, 6}, {12, 18}, {16, 26}, {44, 35}, {49, 43}, {34, 58}, {17, 55}, {12, 43}, {-1, -1}, {30, 0}, {31, 61}, {-1, -1}, {53, 5}, {7, 57}, {-1, -1}, {16, 9}, {25, 18}, {17, 27}, {8, 19}, {16, 9}, {-1, -1}, {44, 36}, {53, 46}, {45, 55}, {35, 47}, {44, 36}, {-1, -1}, }; PRCPrototypeEntry PrototypeListEntries[PDIC_PATTERN_NUM] = { { TRUE, 4, 0, 0, NULL, // '*' 0, 9, 3 }, { TRUE, 4, 1, 0, NULL, // '+' 9, 6, 2 }, { TRUE, 4, 1, 0, NULL, // '+' Different stroke order 15, 6, 2 }, { TRUE, 4, 2, 0, NULL, // '-' 21, 3, 1 }, { TRUE, 1, 3, 0, NULL, // '0' 24, 8, 1 }, { TRUE, 1, 3, 0, NULL, // '0' Counterclockwise 32, 9, 1 }, { TRUE, 1, 3, 0, NULL, // '0' With slash 41, 11, 2 }, { TRUE, 1, 4, 0, NULL, // '1' Vertical bar 52, 3, 1 }, { TRUE, 1, 4, 0, NULL, // '1' Serif 55, 4, 1 }, { TRUE, 1, 4, 0, NULL, // '1' 2 strokes 59, 7, 2 }, { TRUE, 1, 5, 0, NULL, // '2' 66, 7, 1 }, { TRUE, 1, 6, 0, NULL, // '3' 73, 9, 1 }, { TRUE, 1, 7, 0, NULL, // '4' 82, 7, 2 }, { TRUE, 1, 7, 0, NULL, // '4' 1 stroke 89, 5, 1 }, { TRUE, 1, 8, 0, NULL, // '5' 94, 10, 2 }, { TRUE, 1, 8, 0, NULL, // '5' Different stroke order 104, 10, 2 }, { TRUE, 1, 9, 0, NULL, // '6' 114, 8, 1 }, { TRUE, 1, 9, 0, NULL, // '6' Typeface variation 122, 9, 1 }, { TRUE, 1, 10, 0, NULL, // '7' 131, 7, 2 }, { TRUE, 1, 10, 0, NULL, // '7' 1 stroke 138, 4, 1 }, { TRUE, 1, 10, 0, NULL, // '7' With slash 142, 7, 2 }, { TRUE, 1, 11, 0, NULL, // '8' 149, 10, 1 }, { TRUE, 1, 11, 0, NULL, // '8' Difference in starting position 159, 11, 1 }, { TRUE, 1, 11, 0, NULL, // '8' Counterclockwise 170, 10, 1 }, { TRUE, 1, 12, 0, NULL, // '9' 180, 7, 1 }, { TRUE, 1, 12, 0, NULL, // '9' Different stroke order 187, 9, 1 }, { TRUE, 4, 13, 0, NULL, // '<' 196, 4, 1 }, { TRUE, 4, 14, 0, NULL, // '=' 200, 6, 2 }, { TRUE, 4, 15, 0, NULL, // '>' 206, 4, 1 }, { TRUE, 2, 16, 0, NULL, // 'a' 210, 11, 1 }, { TRUE, 2, 17, 0, NULL, // 'b' 221, 9, 1 }, { TRUE, 2, 17, 0, NULL, // 'b' 2 strokes 230, 8, 2 }, { TRUE, 2, 17, 0, NULL, // 'b' Cursive 238, 9, 1 }, { TRUE, 2, 18, 0, NULL, // 'c' 247, 9, 1 }, { TRUE, 2, 19, 0, NULL, // 'd' 256, 9, 1 }, { TRUE, 2, 19, 0, NULL, // 'd' 2 strokes 265, 10, 2 }, { TRUE, 2, 20, 0, NULL, // 'e' 275, 10, 1 }, { TRUE, 2, 21, 0, NULL, // 'f' 285, 9, 2 }, { TRUE, 2, 21, 0, NULL, // 'f' Cursive 294, 8, 1 }, { TRUE, 2, 22, 0, NULL, // 'g' 302, 11, 1 }, { TRUE, 2, 22, 0, NULL, // 'g' 2 strokes 313, 16, 2 }, { TRUE, 2, 23, 0, NULL, // 'h' 329, 7, 1 }, { TRUE, 2, 24, 0, NULL, // 'i' 336, 6, 2 }, { TRUE, 2, 24, 0, NULL, // 'i' Different stroke order 342, 6, 2 }, { TRUE, 2, 24, 0, NULL, // 'i' Serif 348, 9, 2 }, { TRUE, 2, 24, 0, NULL, // 'i' Serif, different stroke order 357, 8, 2 }, { TRUE, 2, 24, 0, NULL, // 'i' Cursive 365, 9, 2 }, { TRUE, 2, 25, 0, NULL, // 'j' 374, 8, 2 }, { TRUE, 2, 25, 0, NULL, // 'j' Serif 382, 11, 2 }, { TRUE, 2, 25, 0, NULL, // 'j' Serif, different stroke order 393, 10, 2 }, { TRUE, 2, 26, 0, NULL, // 'k' 403, 7, 2 }, { TRUE, 2, 26, 0, NULL, // 'k' 3 strokes 410, 9, 3 }, { TRUE, 2, 26, 0, NULL, // 'k' Cursive 419, 13, 1 }, { TRUE, 2, 27, 0, NULL, // 'l' 432, 6, 1 }, { TRUE, 2, 28, 0, NULL, // 'm' 438, 10, 1 }, { TRUE, 2, 28, 0, NULL, // 'm' Serif 448, 12, 1 }, { TRUE, 2, 29, 0, NULL, // 'n' 460, 7, 1 }, { TRUE, 2, 29, 0, NULL, // 'n' Serif 467, 9, 1 }, { TRUE, 2, 30, 0, NULL, // 'o' Serif 476, 13, 1 }, { TRUE, 2, 30, 0, NULL, // 'o' Wide 489, 9, 1 }, { TRUE, 2, 31, 0, NULL, // 'p' 498, 10, 2 }, { TRUE, 2, 31, 0, NULL, // 'p' 1 stroke 508, 8, 1 }, { TRUE, 2, 32, 0, NULL, // 'q' 516, 13, 1 }, { TRUE, 2, 32, 0, NULL, // 'q' 2 strokes 529, 9, 2 }, { TRUE, 2, 33, 0, NULL, // 'r' 538, 6, 1 }, { TRUE, 2, 33, 0, NULL, // 'r' Cursive 544, 8, 1 }, { TRUE, 2, 34, 0, NULL, // 's' 552, 11, 1 }, { TRUE, 2, 34, 0, NULL, // 's' Cursive 563, 10, 1 }, { TRUE, 2, 35, 0, NULL, // 't' 573, 9, 2 }, { TRUE, 2, 35, 0, NULL, // 't' Different stroke order 582, 8, 2 }, { TRUE, 2, 35, 0, NULL, // 't' Cursive 590, 10, 2 }, { TRUE, 2, 36, 0, NULL, // 'u' 600, 8, 1 }, { TRUE, 2, 36, 0, NULL, // 'u' Serif 608, 10, 1 }, { TRUE, 2, 37, 0, NULL, // 'v' 618, 4, 1 }, { TRUE, 2, 37, 0, NULL, // 'v' Cursive 622, 5, 1 }, { TRUE, 2, 38, 0, NULL, // 'w' 627, 6, 1 }, { TRUE, 2, 38, 0, NULL, // 'w' Soft 633, 10, 1 }, { TRUE, 2, 38, 0, NULL, // 'w' Cursive 643, 13, 1 }, { TRUE, 2, 39, 0, NULL, // 'x' 656, 6, 2 }, { TRUE, 2, 39, 0, NULL, // 'x' Different stroke order 662, 6, 2 }, { TRUE, 2, 39, 0, NULL, // 'x' Cursive 668, 12, 2 }, { TRUE, 2, 40, 0, NULL, // 'y' 680, 6, 2 }, { TRUE, 2, 40, 0, NULL, // 'y' Different stroke order 686, 6, 2 }, { TRUE, 2, 40, 0, NULL, // 'y' Cursive 692, 11, 1 }, { TRUE, 2, 41, 0, NULL, // 'z' With slash 703, 8, 2 }, { TRUE, 2, 41, 0, NULL, // 'z' Cursive 711, 10, 1 }, { TRUE, 16, 42, 0, NULL, // '' 721, 7, 1 }, { TRUE, 16, 43, 0, NULL, // '' 728, 10, 1 }, { TRUE, 4, 44, 0, NULL, // '!' 738, 6, 2 }, { TRUE, 4, 45, 0, NULL, // '#' 744, 12, 4 }, { TRUE, 4, 45, 0, NULL, // '#' Different stroke order 756, 12, 4 }, { TRUE, 4, 46, 0, NULL, // '?' 768, 8, 1 }, { TRUE, 4, 47, 0, NULL, // '&' 776, 8, 1 }, { TRUE, 4, 47, 0, NULL, // '&' Different stroke order 784, 10, 2 }, { TRUE, 4, 48, 0, NULL, // '$' 794, 17, 3 }, { TRUE, 4, 48, 0, NULL, // '$' One bar 811, 14, 2 }, { TRUE, 4, 49, 0, NULL, // '%' 825, 15, 3 }, }; PRCPrototypeList PrototypeList = { PrototypeListEntries, /* entries */ PDIC_PATTERN_NUM, /* entrySize */ PrototypeListPointArray, /* pointArray */ PDIC_WHOLE_POINT_NUM, /* pointArraySize */ PDIC_NORMALIZE_SIZE, /* normalizeSize */ }; char *PatternName[PDIC_CODE_NUM] = { "*", "+", "-", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "<", "=", ">", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "STAR", "INF", "!", "#", "?", "&", "$", "%", }; /*---------------------------------------------------------------------------* End of File *---------------------------------------------------------------------------*/