You can subscribe to this list here.
2007 |
Jan
|
Feb
|
Mar
|
Apr
(58) |
May
(28) |
Jun
(308) |
Jul
(11) |
Aug
(1) |
Sep
|
Oct
(3) |
Nov
(4) |
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2008 |
Jan
(4) |
Feb
(8) |
Mar
(3) |
Apr
(3) |
May
(8) |
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
(1) |
2009 |
Jan
|
Feb
|
Mar
(4) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <ik...@us...> - 2007-06-09 09:21:38
|
Revision: 1362 http://tomoe.svn.sourceforge.net/tomoe/?rev=1362&view=rev Author: ikezoe Date: 2007-06-09 02:21:38 -0700 (Sat, 09 Jun 2007) Log Message: ----------- * test/python/runtest.py: Taken from PyGtk. Modified Paths: -------------- tomoe/trunk/ChangeLog tomoe/trunk/test/python/test_char.py tomoe/trunk/test/python/test_dict.py tomoe/trunk/test/python/test_reading.py Added Paths: ----------- tomoe/trunk/test/python/runtests.py Property Changed: ---------------- tomoe/trunk/test/python/ Modified: tomoe/trunk/ChangeLog =================================================================== --- tomoe/trunk/ChangeLog 2007-06-09 04:19:12 UTC (rev 1361) +++ tomoe/trunk/ChangeLog 2007-06-09 09:21:38 UTC (rev 1362) @@ -1,6 +1,7 @@ 2007-06-09 Hiroyuki Ikezoe <poi...@ik...> * bindings/python/tomoe.defs: Implement tomoe_reading_compare(). + * test/python/runtest.py: Taken from PyGtk. 2007-06-08 Kouhei Sutou <ko...@co...> Property changes on: tomoe/trunk/test/python ___________________________________________________________________ Name: svn:ignore + *.pyc Added: tomoe/trunk/test/python/runtests.py =================================================================== --- tomoe/trunk/test/python/runtests.py (rev 0) +++ tomoe/trunk/test/python/runtests.py 2007-06-09 09:21:38 UTC (rev 1362) @@ -0,0 +1,30 @@ +#!/usr/bin/env python +import glob +import os +import sys +import unittest +sys.path.append('../../bindings/python/.libs') +import tomoe +tomoe.tomoe_dict_set_default_module_dir('../../module/dict/.libs') + +SKIP_FILES = ['runtests'] + +dir = os.path.split(os.path.abspath(__file__))[0] +os.chdir(dir) + +def gettestnames(): + files = glob.glob('*.py') + names = map(lambda x: x[:-3], files) + map(names.remove, SKIP_FILES) + return names + +suite = unittest.TestSuite() +loader = unittest.TestLoader() + +for name in gettestnames(): + suite.addTest(loader.loadTestsFromName(name)) + +testRunner = unittest.TextTestRunner() +testRunner.run(suite) + +# vi:ts=4:nowrap:ai:expandtab Property changes on: tomoe/trunk/test/python/runtests.py ___________________________________________________________________ Name: svn:executable + * Modified: tomoe/trunk/test/python/test_char.py =================================================================== --- tomoe/trunk/test/python/test_char.py 2007-06-09 04:19:12 UTC (rev 1361) +++ tomoe/trunk/test/python/test_char.py 2007-06-09 09:21:38 UTC (rev 1362) @@ -45,6 +45,7 @@ tomoe_char.add_radical(radical_string) + #self.assertNotEqual(len(tomoe_char.get_radicals()), 0) self.fail() def testWriting(self): @@ -73,7 +74,4 @@ tomoe_char2.set_utf8(char2) self.assertNotEqual(tomoe_char1.compare(tomoe_char2), 0) -if __name__ == '__main__': - unittest.main() - # vi:ts=4:nowrap:ai:expandtab Modified: tomoe/trunk/test/python/test_dict.py =================================================================== --- tomoe/trunk/test/python/test_dict.py 2007-06-09 04:19:12 UTC (rev 1361) +++ tomoe/trunk/test/python/test_dict.py 2007-06-09 09:21:38 UTC (rev 1362) @@ -2,12 +2,10 @@ import os import sys import unittest -sys.path.append('../../bindings/python/.libs') import tomoe class TomoeDictTest(unittest.TestCase): - def setUp(self): - tomoe.tomoe_dict_set_default_module_dir('../../module/dict/.libs') + #def setUp(self): def setUpXMLDict(self, dict_contents): dict_name = "tomoe-test-xmldict.xml" @@ -222,9 +220,4 @@ candidates = dict.search(tomoe_query) self.assertEqual(candidates[0].get_char().get_utf8(), char_code) -if __name__ == '__main__': - suite = unittest.makeSuite(TomoeDictTest) - unittest.TextTestRunner(verbosity=2).run(suite) - #unittest.main() - # vi:ts=4:nowrap:ai:expandtab Modified: tomoe/trunk/test/python/test_reading.py =================================================================== --- tomoe/trunk/test/python/test_reading.py 2007-06-09 04:19:12 UTC (rev 1361) +++ tomoe/trunk/test/python/test_reading.py 2007-06-09 09:21:38 UTC (rev 1362) @@ -2,7 +2,6 @@ import os import sys import unittest -sys.path.append('../../bindings/python/.libs') import tomoe class TomoeReadingTest(unittest.TestCase): @@ -84,9 +83,4 @@ self.assertNotEqual(reading2.compare(reading3), 0) self.assertNotEqual(reading1.compare(reading4), 0) -if __name__ == '__main__': - #suite = unittest.makeSuite(TomoeReadingTest) - #unittest.TextTestRunner(verbosity=2).run(suite) - unittest.main() - # vi:ts=4:nowrap:ai:expandtab This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2007-06-09 04:19:16
|
Revision: 1361 http://tomoe.svn.sourceforge.net/tomoe/?rev=1361&view=rev Author: makeinu Date: 2007-06-08 21:19:12 -0700 (Fri, 08 Jun 2007) Log Message: ----------- All characters has been done, but stroke orders of some characters are wrong. Modified Paths: -------------- tools/stroke-editor/data/ja/jis-x-0208-level2.xml Modified: tools/stroke-editor/data/ja/jis-x-0208-level2.xml =================================================================== --- tools/stroke-editor/data/ja/jis-x-0208-level2.xml 2007-06-09 02:12:38 UTC (rev 1360) +++ tools/stroke-editor/data/ja/jis-x-0208-level2.xml 2007-06-09 04:19:12 UTC (rev 1361) @@ -199719,171 +199719,2706 @@ <character> <utf8>體</utf8> <strokes> + <stroke> + <point x="153" y="203"/> + <point x="150" y="397"/> + </stroke> + <stroke> + <point x="160" y="198"/> + <point x="345" y="200"/> + <point x="345" y="386"/> + </stroke> + <stroke> + <point x="253" y="287"/> + <point x="340" y="284"/> + </stroke> + <stroke> + <point x="258" y="289"/> + <point x="250" y="394"/> + </stroke> + <stroke> + <point x="58" y="394"/> + <point x="58" y="483"/> + </stroke> + <stroke> + <point x="53" y="403"/> + <point x="458" y="394"/> + <point x="400" y="466"/> + </stroke> + <stroke> + <point x="133" y="468"/> + <point x="148" y="825"/> + </stroke> + <stroke> + <point x="135" y="483"/> + <point x="368" y="481"/> + <point x="355" y="810"/> + <point x="285" y="800"/> + </stroke> + <stroke> + <point x="148" y="584"/> + <point x="385" y="586"/> + </stroke> + <stroke> + <point x="150" y="666"/> + <point x="343" y="670"/> + </stroke> + <stroke> + <point x="525" y="224"/> + <point x="535" y="397"/> + </stroke> + <stroke> + <point x="515" y="239"/> + <point x="860" y="220"/> + <point x="835" y="416"/> + </stroke> + <stroke> + <point x="638" y="138"/> + <point x="633" y="390"/> + </stroke> + <stroke> + <point x="758" y="123"/> + <point x="755" y="392"/> + </stroke> + <stroke> + <point x="543" y="321"/> + <point x="833" y="313"/> + </stroke> + <stroke> + <point x="548" y="401"/> + <point x="845" y="392"/> + </stroke> + <stroke> + <point x="463" y="491"/> + <point x="875" y="489"/> + </stroke> + <stroke> + <point x="535" y="539"/> + <point x="555" y="668"/> + </stroke> + <stroke> + <point x="538" y="556"/> + <point x="828" y="545"/> + <point x="800" y="666"/> + </stroke> + <stroke> + <point x="555" y="677"/> + <point x="808" y="666"/> + </stroke> + <stroke> + <point x="583" y="720"/> + <point x="613" y="774"/> + </stroke> + <stroke> + <point x="800" y="720"/> + <point x="730" y="797"/> + </stroke> + <stroke> + <point x="465" y="823"/> + <point x="895" y="808"/> + </stroke> </strokes> </character> <character> <utf8>髞</utf8> <strokes> + <stroke> + <point x="253" y="127"/> + <point x="255" y="237"/> + </stroke> + <stroke> + <point x="58" y="235"/> + <point x="400" y="239"/> + </stroke> + <stroke> + <point x="153" y="310"/> + <point x="160" y="431"/> + </stroke> + <stroke> + <point x="148" y="321"/> + <point x="333" y="315"/> + <point x="318" y="438"/> + </stroke> + <stroke> + <point x="158" y="438"/> + <point x="320" y="435"/> + </stroke> + <stroke> + <point x="75" y="504"/> + <point x="85" y="845"/> + </stroke> + <stroke> + <point x="65" y="506"/> + <point x="390" y="502"/> + <point x="390" y="830"/> + <point x="298" y="795"/> + </stroke> + <stroke> + <point x="188" y="586"/> + <point x="195" y="709"/> + </stroke> + <stroke> + <point x="183" y="595"/> + <point x="300" y="588"/> + <point x="295" y="690"/> + </stroke> + <stroke> + <point x="200" y="696"/> + <point x="335" y="694"/> + </stroke> + <stroke> + <point x="603" y="192"/> + <point x="613" y="304"/> + </stroke> + <stroke> + <point x="610" y="194"/> + <point x="790" y="185"/> + <point x="795" y="319"/> + </stroke> + <stroke> + <point x="610" y="319"/> + <point x="790" y="315"/> + </stroke> + <stroke> + <point x="528" y="392"/> + <point x="543" y="496"/> + </stroke> + <stroke> + <point x="528" y="412"/> + <point x="663" y="401"/> + <point x="628" y="502"/> + </stroke> + <stroke> + <point x="538" y="500"/> + <point x="643" y="496"/> + </stroke> + <stroke> + <point x="738" y="390"/> + <point x="745" y="494"/> + </stroke> + <stroke> + <point x="733" y="405"/> + <point x="880" y="392"/> + <point x="878" y="496"/> + </stroke> + <stroke> + <point x="728" y="502"/> + <point x="878" y="498"/> + </stroke> + <stroke> + <point x="495" y="629"/> + <point x="918" y="621"/> + </stroke> + <stroke> + <point x="688" y="522"/> + <point x="690" y="856"/> + </stroke> + <stroke> + <point x="675" y="625"/> + <point x="510" y="821"/> + </stroke> + <stroke> + <point x="705" y="631"/> + <point x="885" y="789"/> + </stroke> </strokes> </character> <character> <utf8>髟</utf8> <strokes> + <stroke> + <point x="215" y="209"/> + <point x="205" y="558"/> + </stroke> + <stroke> + <point x="213" y="205"/> + <point x="465" y="203"/> + </stroke> + <stroke> + <point x="205" y="293"/> + <point x="440" y="295"/> + </stroke> + <stroke> + <point x="205" y="420"/> + <point x="418" y="416"/> + </stroke> + <stroke> + <point x="63" y="552"/> + <point x="513" y="550"/> + </stroke> + <stroke> + <point x="260" y="547"/> + <point x="143" y="765"/> + <point x="445" y="716"/> + </stroke> + <stroke> + <point x="393" y="623"/> + <point x="468" y="767"/> + </stroke> + <stroke> + <point x="810" y="220"/> + <point x="603" y="351"/> + </stroke> + <stroke> + <point x="858" y="371"/> + <point x="625" y="563"/> + </stroke> + <stroke> + <point x="873" y="582"/> + <point x="648" y="787"/> + </stroke> </strokes> </character> <character> <utf8>髢</utf8> <strokes> + <stroke> + <point x="188" y="170"/> + <point x="198" y="349"/> + </stroke> + <stroke> + <point x="180" y="168"/> + <point x="455" y="164"/> + </stroke> + <stroke> + <point x="190" y="222"/> + <point x="413" y="220"/> + </stroke> + <stroke> + <point x="203" y="289"/> + <point x="458" y="284"/> + </stroke> + <stroke> + <point x="100" y="364"/> + <point x="500" y="347"/> + </stroke> + <stroke> + <point x="258" y="349"/> + <point x="153" y="483"/> + <point x="410" y="444"/> + </stroke> + <stroke> + <point x="393" y="390"/> + <point x="493" y="481"/> + </stroke> + <stroke> + <point x="825" y="172"/> + <point x="590" y="263"/> + </stroke> + <stroke> + <point x="843" y="267"/> + <point x="638" y="364"/> + </stroke> + <stroke> + <point x="903" y="360"/> + <point x="738" y="455"/> + </stroke> + <stroke> + <point x="140" y="625"/> + <point x="783" y="575"/> + <point x="763" y="705"/> + <point x="665" y="700"/> + </stroke> + <stroke> + <point x="508" y="498"/> + <point x="503" y="716"/> + </stroke> + <stroke> + <point x="308" y="500"/> + <point x="295" y="825"/> + <point x="838" y="821"/> + <point x="845" y="739"/> + </stroke> </strokes> </character> <character> <utf8>髣</utf8> <strokes> + <stroke> + <point x="190" y="162"/> + <point x="198" y="377"/> + </stroke> + <stroke> + <point x="188" y="177"/> + <point x="455" y="172"/> + </stroke> + <stroke> + <point x="200" y="237"/> + <point x="433" y="233"/> + </stroke> + <stroke> + <point x="195" y="308"/> + <point x="435" y="293"/> + </stroke> + <stroke> + <point x="103" y="379"/> + <point x="503" y="353"/> + </stroke> + <stroke> + <point x="275" y="373"/> + <point x="178" y="496"/> + <point x="448" y="463"/> + </stroke> + <stroke> + <point x="415" y="397"/> + <point x="460" y="478"/> + </stroke> + <stroke> + <point x="798" y="194"/> + <point x="615" y="269"/> + </stroke> + <stroke> + <point x="858" y="278"/> + <point x="633" y="373"/> + </stroke> + <stroke> + <point x="885" y="379"/> + <point x="675" y="472"/> + </stroke> + <stroke> + <point x="508" y="496"/> + <point x="505" y="575"/> + </stroke> + <stroke> + <point x="165" y="580"/> + <point x="845" y="580"/> + </stroke> + <stroke> + <point x="413" y="659"/> + <point x="760" y="657"/> + <point x="688" y="849"/> + <point x="588" y="806"/> + </stroke> + <stroke> + <point x="425" y="575"/> + <point x="360" y="756"/> + <point x="218" y="860"/> + </stroke> </strokes> </character> <character> <utf8>髦</utf8> <strokes> + <stroke> + <point x="203" y="159"/> + <point x="208" y="356"/> + </stroke> + <stroke> + <point x="203" y="162"/> + <point x="460" y="155"/> + </stroke> + <stroke> + <point x="205" y="241"/> + <point x="458" y="239"/> + </stroke> + <stroke> + <point x="220" y="287"/> + <point x="423" y="289"/> + </stroke> + <stroke> + <point x="108" y="356"/> + <point x="528" y="345"/> + </stroke> + <stroke> + <point x="293" y="351"/> + <point x="185" y="491"/> + <point x="410" y="455"/> + </stroke> + <stroke> + <point x="395" y="412"/> + <point x="443" y="502"/> + </stroke> + <stroke> + <point x="805" y="159"/> + <point x="580" y="239"/> + </stroke> + <stroke> + <point x="838" y="278"/> + <point x="628" y="343"/> + </stroke> + <stroke> + <point x="888" y="356"/> + <point x="625" y="459"/> + </stroke> + <stroke> + <point x="710" y="489"/> + <point x="275" y="580"/> + </stroke> + <stroke> + <point x="178" y="649"/> + <point x="738" y="606"/> + </stroke> + <stroke> + <point x="158" y="733"/> + <point x="750" y="688"/> + </stroke> + <stroke> + <point x="460" y="550"/> + <point x="465" y="819"/> + <point x="845" y="823"/> + <point x="855" y="761"/> + </stroke> </strokes> </character> <character> <utf8>髯</utf8> <strokes> + <stroke> + <point x="203" y="164"/> + <point x="200" y="371"/> + </stroke> + <stroke> + <point x="193" y="179"/> + <point x="468" y="177"/> + </stroke> + <stroke> + <point x="190" y="235"/> + <point x="418" y="235"/> + </stroke> + <stroke> + <point x="195" y="289"/> + <point x="415" y="287"/> + </stroke> + <stroke> + <point x="88" y="351"/> + <point x="468" y="356"/> + </stroke> + <stroke> + <point x="263" y="353"/> + <point x="165" y="461"/> + <point x="420" y="418"/> + </stroke> + <stroke> + <point x="380" y="379"/> + <point x="430" y="457"/> + </stroke> + <stroke> + <point x="800" y="166"/> + <point x="565" y="263"/> + </stroke> + <stroke> + <point x="843" y="259"/> + <point x="643" y="338"/> + </stroke> + <stroke> + <point x="865" y="356"/> + <point x="613" y="476"/> + </stroke> + <stroke> + <point x="245" y="552"/> + <point x="253" y="877"/> + </stroke> + <stroke> + <point x="225" y="565"/> + <point x="740" y="545"/> + <point x="728" y="873"/> + <point x="648" y="838"/> + </stroke> + <stroke> + <point x="255" y="644"/> + <point x="723" y="623"/> + </stroke> + <stroke> + <point x="480" y="459"/> + <point x="473" y="722"/> + </stroke> + <stroke> + <point x="100" y="737"/> + <point x="863" y="711"/> + </stroke> </strokes> </character> <character> <utf8>髫</utf8> <strokes> + <stroke> + <point x="208" y="175"/> + <point x="208" y="353"/> + </stroke> + <stroke> + <point x="203" y="175"/> + <point x="450" y="177"/> + </stroke> + <stroke> + <point x="205" y="231"/> + <point x="440" y="228"/> + </stroke> + <stroke> + <point x="213" y="278"/> + <point x="443" y="278"/> + </stroke> + <stroke> + <point x="100" y="347"/> + <point x="503" y="341"/> + </stroke> + <stroke> + <point x="275" y="332"/> + <point x="185" y="435"/> + <point x="400" y="416"/> + </stroke> + <stroke> + <point x="375" y="369"/> + <point x="438" y="463"/> + </stroke> + <stroke> + <point x="820" y="168"/> + <point x="590" y="239"/> + </stroke> + <stroke> + <point x="855" y="250"/> + <point x="618" y="332"/> + </stroke> + <stroke> + <point x="863" y="358"/> + <point x="598" y="455"/> + </stroke> + <stroke> + <point x="218" y="506"/> + <point x="730" y="504"/> + <point x="615" y="677"/> + <point x="503" y="629"/> + </stroke> + <stroke> + <point x="458" y="487"/> + <point x="370" y="612"/> + <point x="170" y="700"/> + </stroke> + <stroke> + <point x="283" y="692"/> + <point x="285" y="849"/> + </stroke> + <stroke> + <point x="275" y="696"/> + <point x="665" y="696"/> + <point x="645" y="869"/> + </stroke> + <stroke> + <point x="305" y="871"/> + <point x="625" y="871"/> + </stroke> </strokes> </character> <character> <utf8>髮</utf8> <strokes> + <stroke> + <point x="205" y="159"/> + <point x="205" y="347"/> + </stroke> + <stroke> + <point x="208" y="162"/> + <point x="463" y="162"/> + </stroke> + <stroke> + <point x="220" y="222"/> + <point x="445" y="222"/> + </stroke> + <stroke> + <point x="215" y="284"/> + <point x="453" y="280"/> + </stroke> + <stroke> + <point x="110" y="349"/> + <point x="513" y="338"/> + </stroke> + <stroke> + <point x="270" y="351"/> + <point x="190" y="470"/> + <point x="450" y="444"/> + </stroke> + <stroke> + <point x="403" y="377"/> + <point x="473" y="485"/> + </stroke> + <stroke> + <point x="838" y="172"/> + <point x="603" y="246"/> + </stroke> + <stroke> + <point x="818" y="293"/> + <point x="643" y="353"/> + </stroke> + <stroke> + <point x="868" y="373"/> + <point x="618" y="459"/> + </stroke> + <stroke> + <point x="110" y="593"/> + <point x="810" y="575"/> + </stroke> + <stroke> + <point x="445" y="496"/> + <point x="358" y="685"/> + <point x="88" y="845"/> + </stroke> + <stroke> + <point x="693" y="629"/> + <point x="538" y="752"/> + <point x="243" y="849"/> + </stroke> + <stroke> + <point x="413" y="631"/> + <point x="598" y="776"/> + <point x="880" y="869"/> + </stroke> + <stroke> + <point x="590" y="474"/> + <point x="680" y="547"/> + </stroke> </strokes> </character> <character> <utf8>髴</utf8> <strokes> + <stroke> + <point x="198" y="153"/> + <point x="200" y="341"/> + </stroke> + <stroke> + <point x="190" y="149"/> + <point x="470" y="149"/> + </stroke> + <stroke> + <point x="210" y="220"/> + <point x="445" y="222"/> + </stroke> + <stroke> + <point x="205" y="284"/> + <point x="428" y="278"/> + </stroke> + <stroke> + <point x="100" y="345"/> + <point x="508" y="338"/> + </stroke> + <stroke> + <point x="273" y="338"/> + <point x="165" y="453"/> + <point x="408" y="427"/> + </stroke> + <stroke> + <point x="380" y="366"/> + <point x="450" y="453"/> + </stroke> + <stroke> + <point x="798" y="175"/> + <point x="608" y="246"/> + </stroke> + <stroke> + <point x="830" y="265"/> + <point x="623" y="345"/> + </stroke> + <stroke> + <point x="880" y="343"/> + <point x="613" y="433"/> + </stroke> + <stroke> + <point x="205" y="541"/> + <point x="768" y="526"/> + <point x="770" y="625"/> + </stroke> + <stroke> + <point x="225" y="621"/> + <point x="755" y="606"/> + </stroke> + <stroke> + <point x="230" y="616"/> + <point x="183" y="718"/> + <point x="805" y="700"/> + <point x="748" y="869"/> + <point x="640" y="823"/> + </stroke> + <stroke> + <point x="378" y="463"/> + <point x="380" y="720"/> + <point x="248" y="881"/> + </stroke> + <stroke> + <point x="585" y="461"/> + <point x="625" y="886"/> + </stroke> </strokes> </character> <character> <utf8>髱</utf8> <strokes> + <stroke> + <point x="195" y="166"/> + <point x="470" y="159"/> + </stroke> + <stroke> + <point x="200" y="155"/> + <point x="193" y="343"/> + </stroke> + <stroke> + <point x="203" y="224"/> + <point x="413" y="222"/> + </stroke> + <stroke> + <point x="190" y="295"/> + <point x="445" y="287"/> + </stroke> + <stroke> + <point x="73" y="347"/> + <point x="473" y="345"/> + </stroke> + <stroke> + <point x="283" y="341"/> + <point x="160" y="463"/> + <point x="400" y="431"/> + </stroke> + <stroke> + <point x="395" y="390"/> + <point x="433" y="478"/> + </stroke> + <stroke> + <point x="833" y="168"/> + <point x="593" y="246"/> + </stroke> + <stroke> + <point x="848" y="244"/> + <point x="628" y="336"/> + </stroke> + <stroke> + <point x="863" y="345"/> + <point x="690" y="446"/> + </stroke> + <stroke> + <point x="350" y="459"/> + <point x="138" y="662"/> + </stroke> + <stroke> + <point x="268" y="532"/> + <point x="798" y="513"/> + <point x="745" y="728"/> + <point x="665" y="694"/> + </stroke> + <stroke> + <point x="288" y="595"/> + <point x="568" y="593"/> + <point x="555" y="694"/> + </stroke> + <stroke> + <point x="293" y="690"/> + <point x="553" y="685"/> + </stroke> + <stroke> + <point x="295" y="597"/> + <point x="308" y="830"/> + <point x="825" y="828"/> + <point x="883" y="763"/> + </stroke> </strokes> </character> <character> <utf8>髷</utf8> <strokes> + <stroke> + <point x="193" y="147"/> + <point x="193" y="366"/> + </stroke> + <stroke> + <point x="195" y="157"/> + <point x="483" y="149"/> + </stroke> + <stroke> + <point x="203" y="222"/> + <point x="438" y="211"/> + </stroke> + <stroke> + <point x="220" y="284"/> + <point x="410" y="278"/> + </stroke> + <stroke> + <point x="100" y="356"/> + <point x="498" y="343"/> + </stroke> + <stroke> + <point x="278" y="360"/> + <point x="178" y="476"/> + <point x="408" y="459"/> + </stroke> + <stroke> + <point x="400" y="399"/> + <point x="458" y="513"/> + </stroke> + <stroke> + <point x="828" y="155"/> + <point x="573" y="261"/> + </stroke> + <stroke> + <point x="823" y="252"/> + <point x="610" y="362"/> + </stroke> + <stroke> + <point x="855" y="351"/> + <point x="618" y="476"/> + </stroke> + <stroke> + <point x="195" y="584"/> + <point x="210" y="832"/> + </stroke> + <stroke> + <point x="183" y="603"/> + <point x="793" y="588"/> + <point x="763" y="836"/> + </stroke> + <stroke> + <point x="395" y="519"/> + <point x="378" y="832"/> + </stroke> + <stroke> + <point x="600" y="513"/> + <point x="608" y="838"/> + </stroke> + <stroke> + <point x="210" y="696"/> + <point x="755" y="690"/> + </stroke> + <stroke> + <point x="243" y="832"/> + <point x="750" y="838"/> + </stroke> </strokes> </character> <character> <utf8>髻</utf8> <strokes> + <stroke> + <point x="200" y="144"/> + <point x="205" y="336"/> + </stroke> + <stroke> + <point x="205" y="142"/> + <point x="463" y="129"/> + </stroke> + <stroke> + <point x="200" y="231"/> + <point x="438" y="220"/> + </stroke> + <stroke> + <point x="190" y="287"/> + <point x="440" y="280"/> + </stroke> + <stroke> + <point x="80" y="364"/> + <point x="478" y="353"/> + </stroke> + <stroke> + <point x="283" y="353"/> + <point x="180" y="489"/> + <point x="435" y="450"/> + </stroke> + <stroke> + <point x="388" y="381"/> + <point x="450" y="483"/> + </stroke> + <stroke> + <point x="820" y="166"/> + <point x="563" y="259"/> + </stroke> + <stroke> + <point x="850" y="267"/> + <point x="605" y="362"/> + </stroke> + <stroke> + <point x="855" y="375"/> + <point x="628" y="457"/> + </stroke> + <stroke> + <point x="168" y="550"/> + <point x="788" y="552"/> + </stroke> + <stroke> + <point x="520" y="478"/> + <point x="513" y="634"/> + </stroke> + <stroke> + <point x="258" y="638"/> + <point x="745" y="638"/> + </stroke> + <stroke> + <point x="260" y="690"/> + <point x="275" y="884"/> + </stroke> + <stroke> + <point x="260" y="707"/> + <point x="730" y="694"/> + <point x="690" y="916"/> + </stroke> + <stroke> + <point x="275" y="890"/> + <point x="705" y="899"/> + </stroke> </strokes> </character> <character> <utf8>鬆</utf8> <strokes> + <stroke> + <point x="203" y="153"/> + <point x="205" y="351"/> + </stroke> + <stroke> + <point x="193" y="153"/> + <point x="450" y="153"/> + </stroke> + <stroke> + <point x="208" y="216"/> + <point x="430" y="213"/> + </stroke> + <stroke> + <point x="208" y="269"/> + <point x="445" y="274"/> + </stroke> + <stroke> + <point x="78" y="341"/> + <point x="480" y="330"/> + </stroke> + <stroke> + <point x="275" y="330"/> + <point x="168" y="448"/> + <point x="375" y="433"/> + </stroke> + <stroke> + <point x="368" y="381"/> + <point x="425" y="485"/> + </stroke> + <stroke> + <point x="808" y="168"/> + <point x="613" y="228"/> + </stroke> + <stroke> + <point x="860" y="250"/> + <point x="635" y="315"/> + </stroke> + <stroke> + <point x="878" y="358"/> + <point x="608" y="435"/> + </stroke> + <stroke> + <point x="88" y="588"/> + <point x="425" y="582"/> + </stroke> + <stroke> + <point x="273" y="463"/> + <point x="280" y="856"/> + </stroke> + <stroke> + <point x="288" y="595"/> + <point x="105" y="776"/> + </stroke> + <stroke> + <point x="275" y="601"/> + <point x="405" y="722"/> + </stroke> + <stroke> + <point x="595" y="522"/> + <point x="468" y="662"/> + </stroke> + <stroke> + <point x="738" y="491"/> + <point x="880" y="655"/> + </stroke> + <stroke> + <point x="685" y="601"/> + <point x="533" y="810"/> + <point x="770" y="787"/> + </stroke> + <stroke> + <point x="725" y="683"/> + <point x="830" y="864"/> + </stroke> </strokes> </character> <character> <utf8>鬘</utf8> <strokes> + <stroke> + <point x="200" y="142"/> + <point x="200" y="315"/> + </stroke> + <stroke> + <point x="203" y="142"/> + <point x="458" y="134"/> + </stroke> + <stroke> + <point x="208" y="190"/> + <point x="435" y="185"/> + </stroke> + <stroke> + <point x="210" y="239"/> + <point x="413" y="233"/> + </stroke> + <stroke> + <point x="95" y="310"/> + <point x="493" y="304"/> + </stroke> + <stroke> + <point x="260" y="308"/> + <point x="163" y="403"/> + <point x="403" y="381"/> + </stroke> + <stroke> + <point x="378" y="336"/> + <point x="453" y="425"/> + </stroke> + <stroke> + <point x="830" y="151"/> + <point x="595" y="235"/> + </stroke> + <stroke> + <point x="835" y="237"/> + <point x="630" y="323"/> + </stroke> + <stroke> + <point x="863" y="319"/> + <point x="633" y="416"/> + </stroke> + <stroke> + <point x="263" y="438"/> + <point x="283" y="550"/> + </stroke> + <stroke> + <point x="265" y="448"/> + <point x="663" y="435"/> + <point x="668" y="560"/> + </stroke> + <stroke> + <point x="273" y="491"/> + <point x="655" y="487"/> + </stroke> + <stroke> + <point x="288" y="558"/> + <point x="660" y="554"/> + </stroke> + <stroke> + <point x="195" y="584"/> + <point x="223" y="692"/> + </stroke> + <stroke> + <point x="198" y="595"/> + <point x="783" y="593"/> + <point x="750" y="703"/> + </stroke> + <stroke> + <point x="365" y="597"/> + <point x="375" y="688"/> + </stroke> + <stroke> + <point x="598" y="597"/> + <point x="603" y="672"/> + </stroke> + <stroke> + <point x="218" y="692"/> + <point x="760" y="692"/> + </stroke> + <stroke> + <point x="260" y="731"/> + <point x="670" y="724"/> + <point x="535" y="853"/> + <point x="320" y="916"/> + </stroke> + <stroke> + <point x="330" y="761"/> + <point x="503" y="856"/> + <point x="793" y="914"/> + </stroke> </strokes> </character> <character> <utf8>鬚</utf8> <strokes> + <stroke> + <point x="198" y="142"/> + <point x="193" y="345"/> + </stroke> + <stroke> + <point x="185" y="149"/> + <point x="458" y="147"/> + </stroke> + <stroke> + <point x="198" y="211"/> + <point x="460" y="205"/> + </stroke> + <stroke> + <point x="198" y="274"/> + <point x="438" y="272"/> + </stroke> + <stroke> + <point x="95" y="345"/> + <point x="503" y="343"/> + </stroke> + <stroke> + <point x="260" y="347"/> + <point x="163" y="450"/> + <point x="408" y="425"/> + </stroke> + <stroke> + <point x="385" y="373"/> + <point x="430" y="457"/> + </stroke> + <stroke> + <point x="823" y="168"/> + <point x="615" y="254"/> + </stroke> + <stroke> + <point x="853" y="267"/> + <point x="658" y="336"/> + </stroke> + <stroke> + <point x="905" y="358"/> + <point x="575" y="459"/> + </stroke> + <stroke> + <point x="365" y="491"/> + <point x="143" y="580"/> + </stroke> + <stroke> + <point x="325" y="606"/> + <point x="153" y="696"/> + </stroke> + <stroke> + <point x="365" y="720"/> + <point x="145" y="817"/> + </stroke> + <stroke> + <point x="430" y="481"/> + <point x="858" y="474"/> + </stroke> + <stroke> + <point x="665" y="470"/> + <point x="573" y="552"/> + </stroke> + <stroke> + <point x="503" y="550"/> + <point x="513" y="769"/> + </stroke> + <stroke> + <point x="485" y="563"/> + <point x="795" y="556"/> + <point x="790" y="780"/> + </stroke> + <stroke> + <point x="500" y="623"/> + <point x="788" y="631"/> + </stroke> + <stroke> + <point x="530" y="694"/> + <point x="785" y="685"/> + </stroke> + <stroke> + <point x="523" y="752"/> + <point x="770" y="746"/> + </stroke> + <stroke> + <point x="595" y="787"/> + <point x="448" y="873"/> + </stroke> + <stroke> + <point x="725" y="789"/> + <point x="803" y="869"/> + </stroke> </strokes> </character> <character> <utf8>鬟</utf8> <strokes> + <stroke> + <point x="190" y="138"/> + <point x="195" y="319"/> + </stroke> + <stroke> + <point x="188" y="153"/> + <point x="478" y="142"/> + </stroke> + <stroke> + <point x="215" y="205"/> + <point x="460" y="203"/> + </stroke> + <stroke> + <point x="203" y="261"/> + <point x="418" y="261"/> + </stroke> + <stroke> + <point x="105" y="321"/> + <point x="500" y="317"/> + </stroke> + <stroke> + <point x="288" y="321"/> + <point x="173" y="403"/> + <point x="373" y="384"/> + </stroke> + <stroke> + <point x="355" y="347"/> + <point x="410" y="392"/> + </stroke> + <stroke> + <point x="810" y="157"/> + <point x="598" y="222"/> + </stroke> + <stroke> + <point x="835" y="239"/> + <point x="613" y="306"/> + </stroke> + <stroke> + <point x="860" y="310"/> + <point x="568" y="401"/> + </stroke> + <stroke> + <point x="238" y="433"/> + <point x="255" y="526"/> + </stroke> + <stroke> + <point x="255" y="440"/> + <point x="738" y="438"/> + <point x="708" y="524"/> + </stroke> + <stroke> + <point x="403" y="438"/> + <point x="393" y="522"/> + </stroke> + <stroke> + <point x="578" y="442"/> + <point x="583" y="519"/> + </stroke> + <stroke> + <point x="258" y="524"/> + <point x="708" y="524"/> + </stroke> + <stroke> + <point x="120" y="552"/> + <point x="845" y="560"/> + </stroke> + <stroke> + <point x="278" y="588"/> + <point x="290" y="696"/> + </stroke> + <stroke> + <point x="285" y="593"/> + <point x="678" y="586"/> + <point x="620" y="694"/> + </stroke> + <stroke> + <point x="278" y="690"/> + <point x="613" y="696"/> + </stroke> + <stroke> + <point x="418" y="698"/> + <point x="153" y="769"/> + </stroke> + <stroke> + <point x="318" y="731"/> + <point x="293" y="866"/> + <point x="455" y="823"/> + </stroke> + <stroke> + <point x="793" y="720"/> + <point x="625" y="782"/> + </stroke> + <stroke> + <point x="483" y="707"/> + <point x="595" y="808"/> + <point x="823" y="873"/> + </stroke> </strokes> </character> <character> <utf8>鬢</utf8> <strokes> + <stroke> + <point x="205" y="170"/> + <point x="195" y="319"/> + </stroke> + <stroke> + <point x="198" y="179"/> + <point x="445" y="177"/> + </stroke> + <stroke> + <point x="210" y="220"/> + <point x="388" y="224"/> + </stroke> + <stroke> + <point x="208" y="263"/> + <point x="400" y="259"/> + </stroke> + <stroke> + <point x="93" y="313"/> + <point x="480" y="315"/> + </stroke> + <stroke> + <point x="268" y="313"/> + <point x="185" y="407"/> + <point x="405" y="373"/> + </stroke> + <stroke> + <point x="378" y="343"/> + <point x="420" y="420"/> + </stroke> + <stroke> + <point x="810" y="159"/> + <point x="590" y="231"/> + </stroke> + <stroke> + <point x="833" y="244"/> + <point x="623" y="300"/> + </stroke> + <stroke> + <point x="850" y="308"/> + <point x="605" y="401"/> + </stroke> + <stroke> + <point x="495" y="377"/> + <point x="510" y="448"/> + </stroke> + <stroke> + <point x="145" y="457"/> + <point x="120" y="547"/> + </stroke> + <stroke> + <point x="138" y="461"/> + <point x="875" y="459"/> + <point x="763" y="541"/> + </stroke> + <stroke> + <point x="255" y="509"/> + <point x="710" y="509"/> + </stroke> + <stroke> + <point x="500" y="511"/> + <point x="493" y="616"/> + </stroke> + <stroke> + <point x="355" y="539"/> + <point x="175" y="638"/> + </stroke> + <stroke> + <point x="630" y="543"/> + <point x="433" y="634"/> + <point x="50" y="735"/> + </stroke> + <stroke> + <point x="333" y="664"/> + <point x="335" y="815"/> + </stroke> + <stroke> + <point x="353" y="655"/> + <point x="738" y="638"/> + <point x="705" y="830"/> + </stroke> + <stroke> + <point x="343" y="713"/> + <point x="700" y="698"/> + </stroke> + <stroke> + <point x="348" y="756"/> + <point x="695" y="735"/> + </stroke> + <stroke> + <point x="315" y="815"/> + <point x="720" y="817"/> + </stroke> + <stroke> + <point x="418" y="851"/> + <point x="310" y="933"/> + </stroke> + <stroke> + <point x="598" y="853"/> + <point x="745" y="935"/> + </stroke> </strokes> </character> <character> <utf8>鬣</utf8> <strokes> + <stroke> + <point x="200" y="149"/> + <point x="200" y="308"/> + </stroke> + <stroke> + <point x="198" y="157"/> + <point x="450" y="155"/> + </stroke> + <stroke> + <point x="215" y="213"/> + <point x="445" y="216"/> + </stroke> + <stroke> + <point x="198" y="261"/> + <point x="413" y="263"/> + </stroke> + <stroke> + <point x="100" y="308"/> + <point x="515" y="310"/> + </stroke> + <stroke> + <point x="253" y="308"/> + <point x="173" y="407"/> + <point x="400" y="375"/> + </stroke> + <stroke> + <point x="383" y="336"/> + <point x="425" y="397"/> + </stroke> + <stroke> + <point x="810" y="162"/> + <point x="608" y="226"/> + </stroke> + <stroke> + <point x="833" y="244"/> + <point x="630" y="315"/> + </stroke> + <stroke> + <point x="870" y="321"/> + <point x="623" y="375"/> + </stroke> + <stroke> + <point x="328" y="399"/> + <point x="253" y="446"/> + <point x="303" y="506"/> + </stroke> + <stroke> + <point x="528" y="397"/> + <point x="430" y="444"/> + <point x="498" y="485"/> + </stroke> + <stroke> + <point x="758" y="397"/> + <point x="635" y="448"/> + <point x="733" y="494"/> + </stroke> + <stroke> + <point x="193" y="506"/> + <point x="208" y="659"/> + </stroke> + <stroke> + <point x="188" y="502"/> + <point x="788" y="502"/> + <point x="738" y="662"/> + </stroke> + <stroke> + <point x="625" y="532"/> + <point x="398" y="619"/> + </stroke> + <stroke> + <point x="393" y="534"/> + <point x="533" y="595"/> + </stroke> + <stroke> + <point x="218" y="653"/> + <point x="755" y="659"/> + </stroke> + <stroke> + <point x="240" y="657"/> + <point x="225" y="851"/> + </stroke> + <stroke> + <point x="233" y="705"/> + <point x="373" y="707"/> + </stroke> + <stroke> + <point x="250" y="761"/> + <point x="403" y="756"/> + </stroke> + <stroke> + <point x="135" y="879"/> + <point x="393" y="832"/> + </stroke> + <stroke> + <point x="493" y="662"/> + <point x="505" y="849"/> + </stroke> + <stroke> + <point x="508" y="696"/> + <point x="645" y="705"/> + </stroke> + <stroke> + <point x="520" y="752"/> + <point x="655" y="748"/> + </stroke> + <stroke> + <point x="430" y="860"/> + <point x="663" y="819"/> + </stroke> + <stroke> + <point x="675" y="670"/> + <point x="745" y="836"/> + <point x="853" y="916"/> + <point x="883" y="823"/> + </stroke> </strokes> </character> <character> <utf8>鬥</utf8> <strokes> + <stroke> + <point x="153" y="157"/> + <point x="145" y="862"/> + </stroke> + <stroke> + <point x="225" y="194"/> + <point x="430" y="194"/> + </stroke> + <stroke> + <point x="225" y="289"/> + <point x="433" y="291"/> + </stroke> + <stroke> + <point x="333" y="188"/> + <point x="333" y="409"/> + </stroke> + <stroke> + <point x="223" y="427"/> + <point x="420" y="416"/> + </stroke> + <stroke> + <point x="563" y="196"/> + <point x="760" y="194"/> + </stroke> + <stroke> + <point x="525" y="300"/> + <point x="753" y="293"/> + </stroke> + <stroke> + <point x="658" y="196"/> + <point x="655" y="405"/> + </stroke> + <stroke> + <point x="540" y="420"/> + <point x="740" y="416"/> + </stroke> + <stroke> + <point x="850" y="159"/> + <point x="855" y="791"/> + <point x="735" y="778"/> + </stroke> </strokes> </character> <character> <utf8>鬧</utf8> <strokes> + <stroke> + <point x="130" y="159"/> + <point x="135" y="849"/> + </stroke> + <stroke> + <point x="235" y="181"/> + <point x="403" y="183"/> + </stroke> + <stroke> + <point x="243" y="256"/> + <point x="443" y="256"/> + </stroke> + <stroke> + <point x="330" y="183"/> + <point x="328" y="351"/> + </stroke> + <stroke> + <point x="248" y="364"/> + <point x="410" y="356"/> + </stroke> + <stroke> + <point x="540" y="190"/> + <point x="748" y="190"/> + </stroke> + <stroke> + <point x="543" y="261"/> + <point x="753" y="246"/> + </stroke> + <stroke> + <point x="663" y="185"/> + <point x="643" y="356"/> + </stroke> + <stroke> + <point x="528" y="351"/> + <point x="783" y="351"/> + </stroke> + <stroke> + <point x="883" y="170"/> + <point x="868" y="843"/> + <point x="745" y="804"/> + </stroke> + <stroke> + <point x="498" y="388"/> + <point x="500" y="481"/> + </stroke> + <stroke> + <point x="265" y="481"/> + <point x="693" y="476"/> + </stroke> + <stroke> + <point x="328" y="575"/> + <point x="308" y="769"/> + </stroke> + <stroke> + <point x="320" y="580"/> + <point x="680" y="573"/> + <point x="670" y="741"/> + <point x="580" y="694"/> + </stroke> + <stroke> + <point x="493" y="489"/> + <point x="498" y="860"/> + </stroke> </strokes> </character> <character> <utf8>鬨</utf8> <strokes> + <stroke> + <point x="140" y="147"/> + <point x="130" y="853"/> + </stroke> + <stroke> + <point x="245" y="185"/> + <point x="428" y="183"/> + </stroke> + <stroke> + <point x="268" y="248"/> + <point x="428" y="254"/> + </stroke> + <stroke> + <point x="345" y="183"/> + <point x="335" y="360"/> + </stroke> + <stroke> + <point x="230" y="366"/> + <point x="415" y="356"/> + </stroke> + <stroke> + <point x="550" y="190"/> + <point x="735" y="188"/> + </stroke> + <stroke> + <point x="568" y="263"/> + <point x="725" y="265"/> + </stroke> + <stroke> + <point x="648" y="192"/> + <point x="653" y="362"/> + </stroke> + <stroke> + <point x="533" y="358"/> + <point x="783" y="358"/> + </stroke> + <stroke> + <point x="845" y="164"/> + <point x="853" y="838"/> + <point x="805" y="793"/> + </stroke> + <stroke> + <point x="265" y="517"/> + <point x="665" y="513"/> + </stroke> + <stroke> + <point x="385" y="416"/> + <point x="390" y="638"/> + </stroke> + <stroke> + <point x="578" y="418"/> + <point x="563" y="636"/> + </stroke> + <stroke> + <point x="273" y="649"/> + <point x="705" y="649"/> + </stroke> + <stroke> + <point x="390" y="694"/> + <point x="305" y="815"/> + </stroke> + <stroke> + <point x="553" y="681"/> + <point x="603" y="789"/> + </stroke> </strokes> </character> <character> <utf8>鬩</utf8> <strokes> + <stroke> + <point x="125" y="157"/> + <point x="128" y="866"/> + </stroke> + <stroke> + <point x="223" y="188"/> + <point x="420" y="192"/> + </stroke> + <stroke> + <point x="235" y="256"/> + <point x="430" y="256"/> + </stroke> + <stroke> + <point x="338" y="198"/> + <point x="338" y="358"/> + </stroke> + <stroke> + <point x="188" y="349"/> + <point x="438" y="349"/> + </stroke> + <stroke> + <point x="558" y="194"/> + <point x="758" y="185"/> + </stroke> + <stroke> + <point x="578" y="274"/> + <point x="740" y="267"/> + </stroke> + <stroke> + <point x="653" y="190"/> + <point x="655" y="360"/> + </stroke> + <stroke> + <point x="533" y="360"/> + <point x="783" y="358"/> + </stroke> + <stroke> + <point x="865" y="166"/> + <point x="878" y="845"/> + <point x="775" y="802"/> + </stroke> + <stroke> + <point x="480" y="403"/> + <point x="343" y="459"/> + </stroke> + <stroke> + <point x="335" y="455"/> + <point x="328" y="619"/> + </stroke> + <stroke> + <point x="518" y="450"/> + <point x="660" y="459"/> + <point x="663" y="610"/> + </stroke> + <stroke> + <point x="315" y="517"/> + <point x="445" y="522"/> + </stroke> + <stroke> + <point x="523" y="519"/> + <point x="638" y="522"/> + </stroke> + <stroke> + <point x="360" y="601"/> + <point x="695" y="599"/> + </stroke> + <stroke> + <point x="458" y="629"/> + <point x="433" y="722"/> + <point x="273" y="834"/> + </stroke> + <stroke> + <point x="548" y="614"/> + <point x="553" y="821"/> + <point x="753" y="819"/> + <point x="760" y="707"/> + </stroke> </strokes> </character> <character> <utf8>鬪</utf8> <strokes> + <stroke> + <point x="118" y="164"/> + <point x="123" y="851"/> + </stroke> + <stroke> + <point x="228" y="188"/> + <point x="443" y="194"/> + </stroke> + <stroke> + <point x="238" y="256"/> + <point x="433" y="261"/> + </stroke> + <stroke> + <point x="335" y="196"/> + <point x="340" y="338"/> + </stroke> + <stroke> + <point x="223" y="356"/> + <point x="428" y="345"/> + </stroke> + <stroke> + <point x="548" y="190"/> + <point x="758" y="194"/> + </stroke> + <stroke> + <point x="560" y="269"/> + <point x="743" y="274"/> + </stroke> + <stroke> + <point x="643" y="205"/> + <point x="653" y="353"/> + </stroke> + <stroke> + <point x="548" y="360"/> + <point x="778" y="360"/> + </stroke> + <stroke> + <point x="865" y="159"/> + <point x="878" y="838"/> + <point x="790" y="804"/> + </stroke> + <stroke> + <point x="243" y="463"/> + <point x="490" y="450"/> + </stroke> + <stroke> + <point x="290" y="522"/> + <point x="308" y="651"/> + </stroke> + <stroke> + <point x="293" y="522"/> + <point x="458" y="526"/> + <point x="403" y="634"/> + </stroke> + <stroke> + <point x="295" y="623"/> + <point x="405" y="625"/> + </stroke> + <stroke> + <point x="290" y="655"/> + <point x="315" y="737"/> + </stroke> + <stroke> + <point x="450" y="662"/> + <point x="395" y="752"/> + </stroke> + <stroke> + <point x="220" y="776"/> + <point x="493" y="759"/> + </stroke> + <stroke> + <point x="485" y="524"/> + <point x="780" y="519"/> + </stroke> + <stroke> + <point x="688" y="418"/> + <point x="693" y="795"/> + <point x="560" y="756"/> + </stroke> + <stroke> + <point x="525" y="606"/> + <point x="608" y="698"/> + </stroke> </strokes> </character> <character> <utf8>鬮</utf8> <strokes> + <stroke> + <point x="118" y="144"/> + <point x="120" y="847"/> + </stroke> + <stroke> + <point x="200" y="179"/> + <point x="400" y="181"/> + </stroke> + <stroke> + <point x="245" y="241"/> + <point x="420" y="246"/> + </stroke> + <stroke> + <point x="325" y="188"/> + <point x="333" y="315"/> + </stroke> + <stroke> + <point x="228" y="330"/> + <point x="428" y="328"/> + </stroke> + <stroke> + <point x="573" y="177"/> + <point x="753" y="183"/> + </stroke> + <stroke> + <point x="568" y="248"/> + <point x="730" y="241"/> + </stroke> + <stroke> + <point x="638" y="190"/> + <point x="653" y="338"/> + </stroke> + <stroke> + <point x="528" y="336"/> + <point x="755" y="330"/> + </stroke> + <stroke> + <point x="840" y="162"/> + <point x="848" y="825"/> + <point x="808" y="819"/> + </stroke> + <stroke> + <point x="408" y="369"/> + <point x="230" y="474"/> + </stroke> + <stroke> + <point x="370" y="375"/> + <point x="523" y="377"/> + <point x="483" y="431"/> + </stroke> + <stroke> + <point x="315" y="442"/> + <point x="330" y="539"/> + </stroke> + <stroke> + <point x="323" y="442"/> + <point x="705" y="448"/> + <point x="648" y="517"/> + </stroke> + <stroke> + <point x="328" y="504"/> + <point x="420" y="515"/> + </stroke> + <stroke> + <point x="525" y="511"/> + <point x="665" y="509"/> + </stroke> + <stroke> + <point x="530" y="448"/> + <point x="535" y="744"/> + </stroke> + <stroke> + <point x="438" y="444"/> + <point x="440" y="806"/> + <point x="745" y="804"/> + <point x="760" y="748"/> + </stroke> + <stroke> + <point x="235" y="550"/> + <point x="358" y="552"/> + <point x="350" y="631"/> + </stroke> + <stroke> + <point x="228" y="591"/> + <point x="688" y="591"/> + <point x="705" y="722"/> + </stroke> + <stroke> + <point x="238" y="623"/> + <point x="340" y="625"/> + </stroke> + <stroke> + <point x="243" y="683"/> + <point x="335" y="681"/> + <point x="335" y="752"/> + </stroke> + <stroke> + <point x="213" y="720"/> + <point x="705" y="711"/> + </stroke> + <stroke> + <point x="230" y="756"/> + <point x="343" y="759"/> + </stroke> + <stroke> + <point x="645" y="610"/> + <point x="553" y="694"/> + </stroke> + <stroke> + <point x="563" y="608"/> + <point x="648" y="681"/> + </stroke> </strokes> </character> <character> <utf8>鬯</utf8> <strokes> + <stroke> + <point x="400" y="168"/> + <point x="475" y="235"/> + </stroke> + <stroke> + <point x="660" y="188"/> + <point x="495" y="332"/> + <point x="243" y="444"/> + </stroke> + <stroke> + <point x="298" y="239"/> + <point x="665" y="442"/> + </stroke> + <stroke> + <point x="280" y="306"/> + <point x="288" y="364"/> + </stroke> + <stroke> + <point x="655" y="267"/> + <point x="703" y="345"/> + </stroke> + <stroke> + <point x="473" y="397"/> + <point x="528" y="446"/> + </stroke> + <stroke> + <point x="173" y="162"/> + <point x="165" y="515"/> + <point x="815" y="515"/> + </stroke> + <stroke> + <point x="823" y="164"/> + <point x="820" y="530"/> + </stroke> + <stroke> + <point x="700" y="578"/> + <point x="318" y="694"/> + </stroke> + <stroke> + <point x="285" y="565"/> + <point x="300" y="810"/> + <point x="753" y="821"/> + <point x="743" y="688"/> + </stroke> </strokes> </character> <character> <utf8>鬲</utf8> <strokes> + <stroke> + <point x="203" y="205"/> + <point x="828" y="190"/> + </stroke> + <stroke> + <point x="310" y="261"/> + <point x="325" y="422"/> + </stroke> + <stroke> + <point x="320" y="276"/> + <point x="688" y="269"/> + <point x="655" y="457"/> + </stroke> + <stroke> + <point x="330" y="435"/> + <point x="668" y="438"/> + </stroke> + <stroke> + <point x="193" y="498"/> + <point x="163" y="860"/> + </stroke> + <stroke> + <point x="188" y="509"/> + <point x="803" y="491"/> + <point x="793" y="847"/> + <point x="708" y="810"/> + </stroke> + <stroke> + <point x="415" y="500"/> + <point x="390" y="597"/> + <point x="278" y="659"/> + </stroke> + <stroke> + <point x="550" y="496"/> + <point x="563" y="625"/> + <point x="733" y="621"/> + <point x="710" y="552"/> + </stroke> + <stroke> + <point x="308" y="700"/> + <point x="658" y="683"/> + </stroke> + <stroke> + <point x="495" y="694"/> + <point x="490" y="873"/> + </stroke> </strokes> </character> <character> <utf8>魄</utf8> <strokes> + <stroke> + <point x="265" y="168"/> + <point x="180" y="291"/> + </stroke> + <stroke> + <point x="110" y="282"/> + <point x="125" y="707"/> + </stroke> + <stroke> + <point x="105" y="293"/> + <point x="323" y="291"/> + <point x="300" y="683"/> + </stroke> + <stroke> + <point x="128" y="472"/> + <point x="300" y="463"/> + </stroke> + <stroke> + <point x="125" y="677"/> + <point x="313" y="681"/> + </stroke> + <stroke> + <point x="678" y="127"/> + <point x="588" y="248"/> + </stroke> + <stroke> + <point x="463" y="244"/> + <point x="473" y="524"/> + </stroke> + <stroke> + <point x="460" y="269"/> + <point x="830" y="259"/> + <point x="790" y="515"/> + </stroke> + <stroke> + <point x="655" y="265"/> + <point x="668" y="522"/> + </stroke> + <stroke> + <point x="473" y="397"/> + <point x="808" y="394"/> + </stroke> + <stroke> + <point x="470" y="517"/> + <point x="790" y="511"/> + </stroke> + <stroke> + <point x="575" y="528"/> + <point x="543" y="707"/> + <point x="368" y="873"/> + </stroke> + <stroke> + <point x="678" y="526"/> + <point x="680" y="823"/> + <point x="928" y="843"/> + <point x="930" y="728"/> + </stroke> + <stroke> + <point x="833" y="591"/> + <point x="733" y="722"/> + <point x="863" y="690"/> + </stroke> + <stroke> + <point x="838" y="640"/> + <point x="875" y="746"/> + </stroke> </strokes> </character> <character> <utf8>魃</utf8> <strokes> + <stroke> + <point x="483" y="323"/> + <point x="915" y="315"/> + </stroke> + <stroke> + <point x="658" y="164"/> + <point x="623" y="461"/> + <point x="498" y="634"/> + </stroke> + <stroke> + <point x="845" y="403"/> + <point x="713" y="597"/> + <point x="520" y="735"/> + </stroke> + <stroke> + <point x="650" y="409"/> + <point x="710" y="563"/> + <point x="868" y="690"/> + </stroke> + <stroke> + <point x="748" y="183"/> + <point x="843" y="263"/> + </stroke> + <stroke> + <point x="273" y="149"/> + <point x="198" y="269"/> + </stroke> + <stroke> + <point x="115" y="259"/> + <point x="130" y="511"/> + </stroke> + <stroke> + <point x="103" y="272"/> + <point x="415" y="265"/> + <point x="378" y="534"/> + </stroke> + <stroke> + <point x="253" y="280"/> + <point x="255" y="502"/> + </stroke> + <stroke> + <point x="120" y="373"/> + <point x="405" y="379"/> + </stroke> + <stroke> + <point x="133" y="506"/> + <point x="388" y="515"/> + </stroke> + <stroke> + <point x="198" y="509"/> + <point x="175" y="713"/> + <point x="55" y="853"/> + </stroke> + <stroke> + <point x="295" y="524"/> + <point x="275" y="817"/> + <point x="903" y="825"/> + <point x="923" y="718"/> + </stroke> + <stroke> + <point x="433" y="567"/> + <point x="335" y="720"/> + <point x="440" y="694"/> + </stroke> + <stroke> + <point x="433" y="631"/> + <point x="468" y="744"/> + </stroke> </strokes> </character> <character> <utf8>魏</utf8> <strokes> + <stroke> + <point x="383" y="159"/> + <point x="130" y="254"/> + </stroke> + <stroke> + <point x="115" y="319"/> + <point x="450" y="313"/> + </stroke> + <stroke> + <point x="253" y="218"/> + <point x="263" y="474"/> + </stroke> + <stroke> + <point x="260" y="328"/> + <point x="125" y="470"/> + </stroke> + <stroke> + <point x="268" y="341"/> + <point x="400" y="442"/> + </stroke> + <stroke> + <point x="283" y="513"/> + <point x="165" y="685"/> + <point x="365" y="810"/> + </stroke> + <stroke> + <point x="375" y="571"/> + <point x="298" y="735"/> + <point x="138" y="843"/> + </stroke> + <stroke> + <point x="78" y="584"/> + <point x="443" y="571"/> + </stroke> + <stroke> + <point x="723" y="144"/> + <point x="613" y="252"/> + </stroke> + <stroke> + <point x="510" y="224"/> + <point x="550" y="515"/> + </stroke> + <stroke> + <point x="513" y="259"/> + <point x="860" y="250"/> + <point x="803" y="530"/> + </stroke> + <stroke> + <point x="680" y="265"/> + <point x="680" y="511"/> + </stroke> + <stroke> + <point x="565" y="399"/> + <point x="825" y="381"/> + </stroke> + <stroke> + <point x="560" y="513"/> + <point x="815" y="509"/> + </stroke> + <stroke> + <point x="620" y="517"/> + <point x="583" y="688"/> + <point x="458" y="843"/> + </stroke> + <stroke> + <point x="730" y="513"/> + <point x="725" y="821"/> + <point x="923" y="808"/> + <point x="948" y="733"/> + </stroke> + <stroke> + <point x="835" y="575"/> + <point x="758" y="705"/> + <point x="880" y="688"/> + </stroke> + <stroke> + <point x="868" y="644"/> + <point x="905" y="731"/> + </stroke> </strokes> </character> <character> <utf8>魍</utf8> <strokes> + <stroke> + <point x="520" y="196"/> + <point x="520" y="741"/> + </stroke> + <stroke> + <point x="523" y="207"/> + <point x="865" y="209"/> + <point x="878" y="746"/> + <point x="803" y="707"/> + </stroke> + <stroke> + <point x="608" y="263"/> + <point x="658" y="343"/> + </stroke> + <stroke> + <point x="760" y="252"/> + <point x="690" y="358"/> + </stroke> + <stroke> + <point x="568" y="373"/> + <point x="833" y="366"/> + </stroke> + <stroke> + <point x="695" y="397"/> + <point x="698" y="498"/> + </stroke> + <stroke> + <point x="563" y="489"/> + <point x="785" y="487"/> + </stroke> + <stroke> + <point x="623" y="496"/> + <point x="635" y="634"/> + <point x="770" y="638"/> + </stroke> + <stroke> + <point x="268" y="166"/> + <point x="193" y="259"/> + </stroke> + <stroke> + <point x="100" y="252"/> + <point x="120" y="498"/> + </stroke> + <stroke> +... [truncated message content] |
From: <ik...@us...> - 2007-06-09 02:12:36
|
Revision: 1360 http://tomoe.svn.sourceforge.net/tomoe/?rev=1360&view=rev Author: ikezoe Date: 2007-06-08 19:12:38 -0700 (Fri, 08 Jun 2007) Log Message: ----------- add test for TomoeChar. Added Paths: ----------- tomoe/trunk/test/python/test_char.py Added: tomoe/trunk/test/python/test_char.py =================================================================== --- tomoe/trunk/test/python/test_char.py (rev 0) +++ tomoe/trunk/test/python/test_char.py 2007-06-09 02:12:38 UTC (rev 1360) @@ -0,0 +1,79 @@ +# -*- coding: UTF=8 -*- +import os +import sys +import unittest +sys.path.append('../../bindings/python/.libs') +import tomoe + +class TomoeCharTest(unittest.TestCase): + #def setUp(self): + + def testUTF8(self): + utf8 = '池' + + tomoe_char = tomoe.Char() + self.assertEqual(tomoe_char.get_utf8(), None) + + tomoe_char.set_utf8(utf8) + self.assertEqual(tomoe_char.get_utf8(), utf8) + + def testStrokes(self): + n_strokes = 2 + + tomoe_char = tomoe.Char() + self.assertEqual(tomoe_char.get_n_strokes(), -1) + + tomoe_char.set_n_strokes(n_strokes) + self.assertEqual(tomoe_char.get_n_strokes(), n_strokes) + + def testReading(self): + reading_string = 'いけ' + reading = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string) + + tomoe_char = tomoe.Char() + self.assertEqual(len(tomoe_char.get_readings()), 0) + + tomoe_char.add_reading(reading) + + self.fail() + + def testRadical(self): + radical_string = 'いけ' + + tomoe_char = tomoe.Char() + self.assertEqual(len(tomoe_char.get_radicals()), 0) + + tomoe_char.add_radical(radical_string) + + self.fail() + + def testWriting(self): + self.fail() + + def testVariant(self): + variant = '池' + tomoe_char = tomoe.Char() + self.assertEqual(tomoe_char.get_variant(), None) + + tomoe_char.set_variant(variant) + self.assertEqual(tomoe_char.get_variant(), variant) + + def testCompare(self): + char1 = '池' + char2 = '地' + + tomoe_char1 = tomoe.Char() + tomoe_char1.set_utf8(char1) + tomoe_char2 = tomoe.Char() + tomoe_char2.set_utf8(char1) + + self.assertEqual(tomoe_char1.compare(tomoe_char2), 0) + + tomoe_char2 = tomoe.Char() + tomoe_char2.set_utf8(char2) + self.assertNotEqual(tomoe_char1.compare(tomoe_char2), 0) + +if __name__ == '__main__': + unittest.main() + +# vi:ts=4:nowrap:ai:expandtab This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2007-06-09 01:47:31
|
Revision: 1359 http://tomoe.svn.sourceforge.net/tomoe/?rev=1359&view=rev Author: makeinu Date: 2007-06-08 18:47:26 -0700 (Fri, 08 Jun 2007) Log Message: ----------- 3200/3390 has benn finished. Modified Paths: -------------- tools/stroke-editor/data/ja/jis-x-0208-level2.xml Modified: tools/stroke-editor/data/ja/jis-x-0208-level2.xml =================================================================== --- tools/stroke-editor/data/ja/jis-x-0208-level2.xml 2007-06-09 01:06:21 UTC (rev 1358) +++ tools/stroke-editor/data/ja/jis-x-0208-level2.xml 2007-06-09 01:47:26 UTC (rev 1359) @@ -181702,341 +181702,5033 @@ <character> <utf8>鑛</utf8> <strokes> + <stroke> + <point x="220" y="170"/> + <point x="58" y="412"/> + </stroke> + <stroke> + <point x="213" y="175"/> + <point x="383" y="351"/> + </stroke> + <stroke> + <point x="113" y="371"/> + <point x="290" y="369"/> + </stroke> + <stroke> + <point x="100" y="496"/> + <point x="308" y="494"/> + </stroke> + <stroke> + <point x="208" y="386"/> + <point x="220" y="746"/> + </stroke> + <stroke> + <point x="105" y="606"/> + <point x="130" y="705"/> + </stroke> + <stroke> + <point x="328" y="567"/> + <point x="260" y="700"/> + </stroke> + <stroke> + <point x="60" y="789"/> + <point x="325" y="728"/> + </stroke> + <stroke> + <point x="695" y="125"/> + <point x="698" y="216"/> + </stroke> + <stroke> + <point x="460" y="226"/> + <point x="920" y="216"/> + </stroke> + <stroke> + <point x="463" y="224"/> + <point x="448" y="608"/> + <point x="373" y="813"/> + </stroke> + <stroke> + <point x="500" y="317"/> + <point x="910" y="315"/> + </stroke> + <stroke> + <point x="633" y="280"/> + <point x="633" y="407"/> + </stroke> + <stroke> + <point x="788" y="284"/> + <point x="798" y="407"/> + </stroke> + <stroke> + <point x="640" y="397"/> + <point x="800" y="392"/> + </stroke> + <stroke> + <point x="513" y="472"/> + <point x="875" y="461"/> + </stroke> + <stroke> + <point x="550" y="539"/> + <point x="563" y="711"/> + </stroke> + <stroke> + <point x="558" y="550"/> + <point x="863" y="537"/> + <point x="835" y="716"/> + </stroke> + <stroke> + <point x="695" y="476"/> + <point x="710" y="696"/> + </stroke> + <stroke> + <point x="580" y="627"/> + <point x="835" y="629"/> + </stroke> + <stroke> + <point x="578" y="694"/> + <point x="835" y="688"/> + </stroke> + <stroke> + <point x="640" y="750"/> + <point x="548" y="841"/> + </stroke> + <stroke> + <point x="770" y="748"/> + <point x="870" y="845"/> + </stroke> </strokes> </character> <character> <utf8>鑠</utf8> <strokes> + <stroke> + <point x="200" y="200"/> + <point x="68" y="401"/> + </stroke> + <stroke> + <point x="208" y="183"/> + <point x="335" y="319"/> + </stroke> + <stroke> + <point x="123" y="358"/> + <point x="293" y="349"/> + </stroke> + <stroke> + <point x="100" y="491"/> + <point x="305" y="485"/> + </stroke> + <stroke> + <point x="185" y="362"/> + <point x="183" y="767"/> + </stroke> + <stroke> + <point x="93" y="608"/> + <point x="123" y="705"/> + </stroke> + <stroke> + <point x="310" y="580"/> + <point x="258" y="696"/> + </stroke> + <stroke> + <point x="65" y="789"/> + <point x="328" y="720"/> + </stroke> + <stroke> + <point x="678" y="131"/> + <point x="613" y="224"/> + </stroke> + <stroke> + <point x="570" y="213"/> + <point x="578" y="487"/> + </stroke> + <stroke> + <point x="578" y="222"/> + <point x="708" y="224"/> + <point x="695" y="491"/> + </stroke> + <stroke> + <point x="588" y="349"/> + <point x="680" y="347"/> + </stroke> + <stroke> + <point x="578" y="483"/> + <point x="685" y="476"/> + </stroke> + <stroke> + <point x="485" y="168"/> + <point x="395" y="310"/> + <point x="438" y="362"/> + </stroke> + <stroke> + <point x="503" y="282"/> + <point x="380" y="511"/> + <point x="498" y="494"/> + </stroke> + <stroke> + <point x="473" y="438"/> + <point x="515" y="537"/> + </stroke> + <stroke> + <point x="880" y="179"/> + <point x="788" y="310"/> + <point x="838" y="362"/> + </stroke> + <stroke> + <point x="913" y="293"/> + <point x="783" y="494"/> + <point x="908" y="468"/> + </stroke> + <stroke> + <point x="895" y="418"/> + <point x="943" y="500"/> + </stroke> + <stroke> + <point x="400" y="608"/> + <point x="868" y="608"/> + </stroke> + <stroke> + <point x="640" y="506"/> + <point x="640" y="864"/> + </stroke> + <stroke> + <point x="640" y="623"/> + <point x="350" y="834"/> + </stroke> + <stroke> + <point x="645" y="625"/> + <point x="883" y="834"/> + </stroke> </strokes> </character> <character> <utf8>鑢</utf8> <strokes> + <stroke> + <point x="233" y="164"/> + <point x="38" y="425"/> + </stroke> + <stroke> + <point x="228" y="168"/> + <point x="383" y="330"/> + </stroke> + <stroke> + <point x="103" y="360"/> + <point x="325" y="353"/> + </stroke> + <stroke> + <point x="80" y="485"/> + <point x="340" y="481"/> + </stroke> + <stroke> + <point x="218" y="360"/> + <point x="233" y="748"/> + </stroke> + <stroke> + <point x="98" y="563"/> + <point x="150" y="694"/> + </stroke> + <stroke> + <point x="338" y="556"/> + <point x="278" y="685"/> + </stroke> + <stroke> + <point x="90" y="778"/> + <point x="368" y="716"/> + </stroke> + <stroke> + <point x="675" y="213"/> + <point x="830" y="211"/> + </stroke> + <stroke> + <point x="665" y="138"/> + <point x="670" y="276"/> + </stroke> + <stroke> + <point x="453" y="291"/> + <point x="878" y="289"/> + <point x="858" y="343"/> + </stroke> + <stroke> + <point x="448" y="287"/> + <point x="453" y="601"/> + <point x="368" y="808"/> + </stroke> + <stroke> + <point x="535" y="371"/> + <point x="788" y="358"/> + </stroke> + <stroke> + <point x="653" y="304"/> + <point x="648" y="438"/> + <point x="853" y="433"/> + <point x="850" y="394"/> + </stroke> + <stroke> + <point x="570" y="485"/> + <point x="588" y="644"/> + </stroke> + <stroke> + <point x="580" y="489"/> + <point x="840" y="483"/> + <point x="815" y="644"/> + </stroke> + <stroke> + <point x="695" y="494"/> + <point x="708" y="642"/> + </stroke> + <stroke> + <point x="588" y="565"/> + <point x="813" y="560"/> + </stroke> + <stroke> + <point x="595" y="636"/> + <point x="805" y="634"/> + </stroke> + <stroke> + <point x="543" y="722"/> + <point x="518" y="823"/> + </stroke> + <stroke> + <point x="623" y="707"/> + <point x="690" y="836"/> + <point x="835" y="838"/> + <point x="838" y="776"/> + </stroke> + <stroke> + <point x="743" y="679"/> + <point x="773" y="769"/> + </stroke> + <stroke> + <point x="885" y="692"/> + <point x="910" y="767"/> + </stroke> </strokes> </character> <character> <utf8>鑞</utf8> <strokes> + <stroke> + <point x="235" y="168"/> + <point x="60" y="407"/> + </stroke> + <stroke> + <point x="220" y="177"/> + <point x="395" y="351"/> + </stroke> + <stroke> + <point x="110" y="369"/> + <point x="315" y="364"/> + </stroke> + <stroke> + <point x="105" y="494"/> + <point x="345" y="489"/> + </stroke> + <stroke> + <point x="208" y="369"/> + <point x="230" y="748"/> + </stroke> + <stroke> + <point x="110" y="591"/> + <point x="148" y="698"/> + </stroke> + <stroke> + <point x="343" y="591"/> + <point x="303" y="696"/> + </stroke> + <stroke> + <point x="83" y="795"/> + <point x="333" y="741"/> + </stroke> + <stroke> + <point x="548" y="131"/> + <point x="433" y="224"/> + <point x="520" y="304"/> + </stroke> + <stroke> + <point x="683" y="147"/> + <point x="595" y="235"/> + <point x="685" y="293"/> + </stroke> + <stroke> + <point x="855" y="149"/> + <point x="750" y="216"/> + <point x="848" y="287"/> + </stroke> + <stroke> + <point x="473" y="325"/> + <point x="473" y="515"/> + </stroke> + <stroke> + <point x="473" y="343"/> + <point x="825" y="334"/> + <point x="825" y="498"/> + </stroke> + <stroke> + <point x="740" y="369"/> + <point x="575" y="457"/> + </stroke> + <stroke> + <point x="563" y="388"/> + <point x="738" y="459"/> + </stroke> + <stroke> + <point x="470" y="491"/> + <point x="815" y="481"/> + </stroke> + <stroke> + <point x="475" y="550"/> + <point x="453" y="806"/> + <point x="573" y="776"/> + </stroke> + <stroke> + <point x="518" y="588"/> + <point x="585" y="644"/> + </stroke> + <stroke> + <point x="508" y="677"/> + <point x="578" y="716"/> + </stroke> + <stroke> + <point x="633" y="550"/> + <point x="620" y="808"/> + <point x="768" y="776"/> + </stroke> + <stroke> + <point x="705" y="593"/> + <point x="748" y="638"/> + </stroke> + <stroke> + <point x="683" y="659"/> + <point x="760" y="724"/> + </stroke> + <stroke> + <point x="828" y="554"/> + <point x="860" y="741"/> + <point x="948" y="836"/> + <point x="958" y="716"/> + </stroke> </strokes> </character> <character> <utf8>鑪</utf8> <strokes> + <stroke> + <point x="235" y="170"/> + <point x="55" y="414"/> + </stroke> + <stroke> + <point x="233" y="175"/> + <point x="385" y="343"/> + </stroke> + <stroke> + <point x="108" y="358"/> + <point x="320" y="356"/> + </stroke> + <stroke> + <point x="110" y="483"/> + <point x="350" y="481"/> + </stroke> + <stroke> + <point x="225" y="369"/> + <point x="235" y="735"/> + </stroke> + <stroke> + <point x="123" y="578"/> + <point x="160" y="685"/> + </stroke> + <stroke> + <point x="355" y="571"/> + <point x="275" y="696"/> + </stroke> + <stroke> + <point x="93" y="780"/> + <point x="350" y="720"/> + </stroke> + <stroke> + <point x="660" y="211"/> + <point x="843" y="213"/> + </stroke> + <stroke> + <point x="660" y="134"/> + <point x="665" y="280"/> + </stroke> + <stroke> + <point x="483" y="287"/> + <point x="848" y="276"/> + <point x="838" y="328"/> + </stroke> + <stroke> + <point x="455" y="293"/> + <point x="450" y="584"/> + <point x="365" y="841"/> + </stroke> + <stroke> + <point x="540" y="362"/> + <point x="800" y="353"/> + </stroke> + <stroke> + <point x="643" y="295"/> + <point x="635" y="435"/> + <point x="843" y="435"/> + <point x="855" y="379"/> + </stroke> + <stroke> + <point x="573" y="494"/> + <point x="575" y="636"/> + </stroke> + <stroke> + <point x="563" y="485"/> + <point x="838" y="485"/> + <point x="815" y="642"/> + </stroke> + <stroke> + <point x="688" y="478"/> + <point x="695" y="638"/> + </stroke> + <stroke> + <point x="595" y="556"/> + <point x="823" y="558"/> + </stroke> + <stroke> + <point x="593" y="627"/> + <point x="803" y="625"/> + </stroke> + <stroke> + <point x="563" y="681"/> + <point x="558" y="845"/> + </stroke> + <stroke> + <point x="563" y="694"/> + <point x="853" y="688"/> + <point x="838" y="834"/> + </stroke> + <stroke> + <point x="628" y="692"/> + <point x="633" y="825"/> + </stroke> + <stroke> + <point x="735" y="698"/> + <point x="735" y="828"/> + </stroke> + <stroke> + <point x="470" y="841"/> + <point x="918" y="841"/> + </stroke> </strokes> </character> <character> <utf8>鈩</utf8> <strokes> + <stroke> + <point x="260" y="175"/> + <point x="60" y="420"/> + </stroke> + <stroke> + <point x="253" y="168"/> + <point x="445" y="373"/> + </stroke> + <stroke> + <point x="125" y="371"/> + <point x="363" y="366"/> + </stroke> + <stroke> + <point x="110" y="491"/> + <point x="388" y="489"/> + </stroke> + <stroke> + <point x="248" y="377"/> + <point x="258" y="756"/> + </stroke> + <stroke> + <point x="135" y="573"/> + <point x="175" y="700"/> + </stroke> + <stroke> + <point x="388" y="567"/> + <point x="345" y="681"/> + </stroke> + <stroke> + <point x="103" y="789"/> + <point x="423" y="733"/> + </stroke> + <stroke> + <point x="528" y="226"/> + <point x="880" y="224"/> + </stroke> + <stroke> + <point x="555" y="358"/> + <point x="848" y="356"/> + <point x="860" y="569"/> + </stroke> + <stroke> + <point x="560" y="552"/> + <point x="850" y="558"/> + </stroke> + <stroke> + <point x="550" y="356"/> + <point x="543" y="631"/> + <point x="460" y="821"/> + </stroke> </strokes> </character> <character> <utf8>鑰</utf8> <strokes> + <stroke> + <point x="243" y="172"/> + <point x="55" y="405"/> + </stroke> + <stroke> + <point x="233" y="179"/> + <point x="383" y="317"/> + </stroke> + <stroke> + <point x="115" y="349"/> + <point x="313" y="353"/> + </stroke> + <stroke> + <point x="90" y="487"/> + <point x="330" y="485"/> + </stroke> + <stroke> + <point x="210" y="353"/> + <point x="215" y="756"/> + </stroke> + <stroke> + <point x="90" y="578"/> + <point x="128" y="688"/> + </stroke> + <stroke> + <point x="325" y="565"/> + <point x="285" y="690"/> + </stroke> + <stroke> + <point x="80" y="793"/> + <point x="365" y="709"/> + </stroke> + <stroke> + <point x="655" y="155"/> + <point x="393" y="373"/> + </stroke> + <stroke> + <point x="643" y="155"/> + <point x="918" y="338"/> + </stroke> + <stroke> + <point x="495" y="328"/> + <point x="773" y="328"/> + </stroke> + <stroke> + <point x="423" y="390"/> + <point x="438" y="485"/> + </stroke> + <stroke> + <point x="433" y="388"/> + <point x="535" y="392"/> + <point x="513" y="489"/> + </stroke> + <stroke> + <point x="440" y="474"/> + <point x="520" y="476"/> + </stroke> + <stroke> + <point x="600" y="384"/> + <point x="610" y="481"/> + </stroke> + <stroke> + <point x="595" y="390"/> + <point x="708" y="392"/> + <point x="683" y="461"/> + </stroke> + <stroke> + <point x="595" y="478"/> + <point x="688" y="474"/> + </stroke> + <stroke> + <point x="768" y="394"/> + <point x="783" y="481"/> + </stroke> + <stroke> + <point x="760" y="397"/> + <point x="883" y="397"/> + <point x="860" y="474"/> + </stroke> + <stroke> + <point x="795" y="474"/> + <point x="845" y="478"/> + </stroke> + <stroke> + <point x="460" y="547"/> + <point x="455" y="832"/> + </stroke> + <stroke> + <point x="470" y="545"/> + <point x="858" y="537"/> + <point x="843" y="817"/> + <point x="780" y="797"/> + </stroke> + <stroke> + <point x="593" y="552"/> + <point x="585" y="795"/> + </stroke> + <stroke> + <point x="720" y="552"/> + <point x="718" y="810"/> + </stroke> + <stroke> + <point x="478" y="683"/> + <point x="845" y="688"/> + </stroke> </strokes> </character> <character> <utf8>鑵</utf8> <strokes> + <stroke> + <point x="223" y="172"/> + <point x="20" y="433"/> + </stroke> + <stroke> + <point x="218" y="164"/> + <point x="378" y="336"/> + </stroke> + <stroke> + <point x="105" y="356"/> + <point x="318" y="351"/> + </stroke> + <stroke> + <point x="78" y="491"/> + <point x="330" y="487"/> + </stroke> + <stroke> + <point x="213" y="366"/> + <point x="215" y="752"/> + </stroke> + <stroke> + <point x="100" y="580"/> + <point x="145" y="707"/> + </stroke> + <stroke> + <point x="355" y="558"/> + <point x="278" y="688"/> + </stroke> + <stroke> + <point x="65" y="784"/> + <point x="378" y="705"/> + </stroke> + <stroke> + <point x="423" y="209"/> + <point x="923" y="205"/> + </stroke> + <stroke> + <point x="583" y="142"/> + <point x="588" y="261"/> + </stroke> + <stroke> + <point x="768" y="140"/> + <point x="735" y="269"/> + </stroke> + <stroke> + <point x="460" y="310"/> + <point x="468" y="433"/> + </stroke> + <stroke> + <point x="458" y="313"/> + <point x="605" y="306"/> + <point x="585" y="422"/> + </stroke> + <stroke> + <point x="475" y="422"/> + <point x="588" y="422"/> + </stroke> + <stroke> + <point x="723" y="300"/> + <point x="733" y="420"/> + </stroke> + <stroke> + <point x="720" y="304"/> + <point x="858" y="300"/> + <point x="845" y="414"/> + </stroke> + <stroke> + <point x="725" y="414"/> + <point x="830" y="414"/> + </stroke> + <stroke> + <point x="565" y="459"/> + <point x="403" y="653"/> + </stroke> + <stroke> + <point x="508" y="543"/> + <point x="500" y="866"/> + </stroke> + <stroke> + <point x="743" y="459"/> + <point x="705" y="530"/> + </stroke> + <stroke> + <point x="520" y="545"/> + <point x="880" y="537"/> + </stroke> + <stroke> + <point x="528" y="623"/> + <point x="870" y="621"/> + </stroke> + <stroke> + <point x="515" y="713"/> + <point x="873" y="711"/> + </stroke> + <stroke> + <point x="693" y="547"/> + <point x="700" y="800"/> + </stroke> + <stroke> + <point x="515" y="802"/> + <point x="910" y="804"/> + </stroke> </strokes> </character> <character> <utf8>鑷</utf8> <strokes> + <stroke> + <point x="233" y="162"/> + <point x="50" y="399"/> + </stroke> + <stroke> + <point x="223" y="162"/> + <point x="408" y="343"/> + </stroke> + <stroke> + <point x="103" y="345"/> + <point x="318" y="338"/> + </stroke> + <stroke> + <point x="70" y="485"/> + <point x="338" y="481"/> + </stroke> + <stroke> + <point x="205" y="341"/> + <point x="218" y="756"/> + </stroke> + <stroke> + <point x="88" y="588"/> + <point x="128" y="700"/> + </stroke> + <stroke> + <point x="348" y="573"/> + <point x="283" y="681"/> + </stroke> + <stroke> + <point x="93" y="782"/> + <point x="360" y="720"/> + </stroke> + <stroke> + <point x="455" y="183"/> + <point x="903" y="179"/> + </stroke> + <stroke> + <point x="563" y="185"/> + <point x="555" y="422"/> + </stroke> + <stroke> + <point x="563" y="256"/> + <point x="793" y="252"/> + </stroke> + <stroke> + <point x="565" y="332"/> + <point x="790" y="334"/> + </stroke> + <stroke> + <point x="468" y="433"/> + <point x="785" y="401"/> + </stroke> + <stroke> + <point x="795" y="207"/> + <point x="798" y="474"/> + </stroke> + <stroke> + <point x="378" y="504"/> + <point x="638" y="504"/> + </stroke> + <stroke> + <point x="463" y="506"/> + <point x="458" y="750"/> + </stroke> + <stroke> + <point x="458" y="565"/> + <point x="565" y="571"/> + </stroke> + <stroke> + <point x="470" y="651"/> + <point x="568" y="655"/> + </stroke> + <stroke> + <point x="395" y="767"/> + <point x="598" y="731"/> + </stroke> + <stroke> + <point x="585" y="511"/> + <point x="595" y="851"/> + </stroke> + <stroke> + <point x="658" y="506"/> + <point x="935" y="500"/> + </stroke> + <stroke> + <point x="728" y="506"/> + <point x="728" y="754"/> + </stroke> + <stroke> + <point x="738" y="584"/> + <point x="850" y="578"/> + </stroke> + <stroke> + <point x="735" y="666"/> + <point x="855" y="662"/> + </stroke> + <stroke> + <point x="665" y="767"/> + <point x="850" y="741"/> + </stroke> + <stroke> + <point x="858" y="515"/> + <point x="870" y="871"/> + </stroke> </strokes> </character> <character> <utf8>鑽</utf8> <strokes> + <stroke> + <point x="238" y="164"/> + <point x="58" y="407"/> + </stroke> + <stroke> + <point x="225" y="170"/> + <point x="360" y="336"/> + </stroke> + <stroke> + <point x="108" y="358"/> + <point x="300" y="353"/> + </stroke> + <stroke> + <point x="105" y="485"/> + <point x="325" y="483"/> + </stroke> + <stroke> + <point x="205" y="360"/> + <point x="210" y="750"/> + </stroke> + <stroke> + <point x="105" y="588"/> + <point x="143" y="694"/> + </stroke> + <stroke> + <point x="338" y="569"/> + <point x="268" y="683"/> + </stroke> + <stroke> + <point x="68" y="784"/> + <point x="370" y="728"/> + </stroke> + <stroke> + <point x="460" y="142"/> + <point x="398" y="252"/> + </stroke> + <stroke> + <point x="430" y="205"/> + <point x="620" y="205"/> + </stroke> + <stroke> + <point x="518" y="127"/> + <point x="515" y="280"/> + </stroke> + <stroke> + <point x="375" y="282"/> + <point x="628" y="278"/> + </stroke> + <stroke> + <point x="475" y="284"/> + <point x="403" y="420"/> + </stroke> + <stroke> + <point x="545" y="280"/> + <point x="533" y="399"/> + <point x="628" y="364"/> + </stroke> + <stroke> + <point x="740" y="140"/> + <point x="690" y="263"/> + </stroke> + <stroke> + <point x="720" y="200"/> + <point x="878" y="200"/> + </stroke> + <stroke> + <point x="810" y="144"/> + <point x="803" y="274"/> + </stroke> + <stroke> + <point x="683" y="278"/> + <point x="948" y="269"/> + </stroke> + <stroke> + <point x="758" y="280"/> + <point x="690" y="418"/> + </stroke> + <stroke> + <point x="830" y="274"/> + <point x="823" y="399"/> + <point x="918" y="399"/> + <point x="913" y="343"/> + </stroke> + <stroke> + <point x="495" y="455"/> + <point x="490" y="694"/> + </stroke> + <stroke> + <point x="503" y="457"/> + <point x="810" y="463"/> + <point x="800" y="705"/> + </stroke> + <stroke> + <point x="503" y="539"/> + <point x="798" y="550"/> + </stroke> + <stroke> + <point x="503" y="610"/> + <point x="803" y="619"/> + </stroke> + <stroke> + <point x="495" y="688"/> + <point x="790" y="696"/> + </stroke> + <stroke> + <point x="560" y="746"/> + <point x="465" y="860"/> + </stroke> + <stroke> + <point x="695" y="741"/> + <point x="813" y="853"/> + </stroke> </strokes> </character> <character> <utf8>鑚</utf8> <strokes> + <stroke> + <point x="240" y="162"/> + <point x="53" y="429"/> + </stroke> + <stroke> + <point x="230" y="157"/> + <point x="368" y="358"/> + </stroke> + <stroke> + <point x="118" y="356"/> + <point x="293" y="347"/> + </stroke> + <stroke> + <point x="100" y="478"/> + <point x="330" y="474"/> + </stroke> + <stroke> + <point x="210" y="356"/> + <point x="220" y="752"/> + </stroke> + <stroke> + <point x="75" y="582"/> + <point x="150" y="709"/> + </stroke> + <stroke> + <point x="308" y="565"/> + <point x="258" y="703"/> + </stroke> + <stroke> + <point x="58" y="804"/> + <point x="340" y="726"/> + </stroke> + <stroke> + <point x="413" y="224"/> + <point x="605" y="222"/> + </stroke> + <stroke> + <point x="420" y="297"/> + <point x="628" y="297"/> + </stroke> + <stroke> + <point x="518" y="147"/> + <point x="508" y="332"/> + <point x="440" y="429"/> + </stroke> + <stroke> + <point x="510" y="341"/> + <point x="605" y="401"/> + </stroke> + <stroke> + <point x="678" y="224"/> + <point x="870" y="213"/> + </stroke> + <stroke> + <point x="695" y="313"/> + <point x="893" y="313"/> + </stroke> + <stroke> + <point x="783" y="155"/> + <point x="775" y="291"/> + <point x="713" y="412"/> + </stroke> + <stroke> + <point x="788" y="323"/> + <point x="873" y="394"/> + </stroke> + <stroke> + <point x="503" y="450"/> + <point x="510" y="683"/> + </stroke> + <stroke> + <point x="513" y="459"/> + <point x="828" y="459"/> + <point x="818" y="692"/> + </stroke> + <stroke> + <point x="508" y="547"/> + <point x="823" y="550"/> + </stroke> + <stroke> + <point x="528" y="619"/> + <point x="835" y="616"/> + </stroke> + <stroke> + <point x="515" y="690"/> + <point x="823" y="692"/> + </stroke> + <stroke> + <point x="598" y="746"/> + <point x="490" y="869"/> + </stroke> + <stroke> + <point x="723" y="737"/> + <point x="878" y="851"/> + </stroke> </strokes> </character> <character> <utf8>鑼</utf8> <strokes> + <stroke> + <point x="215" y="151"/> + <point x="70" y="409"/> + </stroke> + <stroke> + <point x="205" y="162"/> + <point x="360" y="338"/> + </stroke> + <stroke> + <point x="110" y="360"/> + <point x="295" y="356"/> + </stroke> + <stroke> + <point x="90" y="487"/> + <point x="295" y="487"/> + </stroke> + <stroke> + <point x="188" y="360"/> + <point x="193" y="763"/> + </stroke> + <stroke> + <point x="93" y="606"/> + <point x="133" y="711"/> + </stroke> + <stroke> + <point x="305" y="569"/> + <point x="245" y="681"/> + </stroke> + <stroke> + <point x="73" y="791"/> + <point x="305" y="722"/> + </stroke> + <stroke> + <point x="448" y="168"/> + <point x="458" y="321"/> + </stroke> + <stroke> + <point x="468" y="183"/> + <point x="878" y="170"/> + <point x="848" y="332"/> + </stroke> + <stroke> + <point x="580" y="185"/> + <point x="578" y="310"/> + </stroke> + <stroke> + <point x="725" y="181"/> + <point x="730" y="310"/> + </stroke> + <stroke> + <point x="463" y="313"/> + <point x="843" y="308"/> + </stroke> + <stroke> + <point x="500" y="366"/> + <point x="408" y="461"/> + <point x="478" y="509"/> + </stroke> + <stroke> + <point x="568" y="427"/> + <point x="393" y="595"/> + <point x="553" y="582"/> + </stroke> + <stroke> + <point x="545" y="530"/> + <point x="595" y="610"/> + </stroke> + <stroke> + <point x="498" y="599"/> + <point x="500" y="828"/> + </stroke> + <stroke> + <point x="425" y="683"/> + <point x="378" y="800"/> + </stroke> + <stroke> + <point x="528" y="675"/> + <point x="595" y="776"/> + </stroke> + <stroke> + <point x="745" y="390"/> + <point x="633" y="552"/> + </stroke> + <stroke> + <point x="695" y="463"/> + <point x="680" y="817"/> + </stroke> + <stroke> + <point x="865" y="358"/> + <point x="823" y="459"/> + </stroke> + <stroke> + <point x="718" y="481"/> + <point x="910" y="466"/> + </stroke> + <stroke> + <point x="700" y="567"/> + <point x="920" y="556"/> + </stroke> + <stroke> + <point x="698" y="677"/> + <point x="898" y="670"/> + </stroke> + <stroke> + <point x="810" y="481"/> + <point x="810" y="793"/> + </stroke> + <stroke> + <point x="700" y="795"/> + <point x="930" y="791"/> + </stroke> </strokes> </character> <character> <utf8>鑾</utf8> <strokes> + <stroke> + <point x="443" y="116"/> + <point x="503" y="175"/> + </stroke> + <stroke> + <point x="380" y="203"/> + <point x="598" y="198"/> + </stroke> + <stroke> + <point x="418" y="259"/> + <point x="568" y="254"/> + </stroke> + <stroke> + <point x="430" y="313"/> + <point x="575" y="306"/> + </stroke> + <stroke> + <point x="423" y="364"/> + <point x="430" y="457"/> + </stroke> + <stroke> + <point x="430" y="364"/> + <point x="568" y="360"/> + <point x="553" y="448"/> + </stroke> + <stroke> + <point x="418" y="446"/> + <point x="555" y="444"/> + </stroke> + <stroke> + <point x="228" y="134"/> + <point x="125" y="222"/> + <point x="175" y="274"/> + </stroke> + <stroke> + <point x="278" y="200"/> + <point x="113" y="349"/> + <point x="298" y="325"/> + </stroke> + <stroke> + <point x="273" y="276"/> + <point x="335" y="369"/> + </stroke> + <stroke> + <point x="223" y="332"/> + <point x="228" y="502"/> + </stroke> + <stroke> + <point x="150" y="397"/> + <point x="93" y="487"/> + </stroke> + <stroke> + <point x="263" y="384"/> + <point x="320" y="468"/> + </stroke> + <stroke> + <point x="795" y="134"/> + <point x="718" y="211"/> + <point x="763" y="276"/> + </stroke> + <stroke> + <point x="865" y="188"/> + <point x="695" y="334"/> + <point x="888" y="304"/> + </stroke> + <stroke> + <point x="865" y="248"/> + <point x="923" y="349"/> + </stroke> + <stroke> + <point x="810" y="325"/> + <point x="813" y="485"/> + </stroke> + <stroke> + <point x="750" y="375"/> + <point x="705" y="455"/> + </stroke> + <stroke> + <point x="863" y="373"/> + <point x="925" y="461"/> + </stroke> + <stroke> + <point x="495" y="481"/> + <point x="140" y="644"/> + </stroke> + <stroke> + <point x="490" y="474"/> + <point x="848" y="616"/> + </stroke> + <stroke> + <point x="295" y="612"/> + <point x="638" y="614"/> + </stroke> + <stroke> + <point x="270" y="696"/> + <point x="695" y="690"/> + </stroke> + <stroke> + <point x="480" y="619"/> + <point x="490" y="819"/> + </stroke> + <stroke> + <point x="343" y="744"/> + <point x="413" y="808"/> + </stroke> + <stroke> + <point x="628" y="726"/> + <point x="545" y="804"/> + </stroke> + <stroke> + <point x="135" y="834"/> + <point x="855" y="832"/> + </stroke> </strokes> </character> <character> <utf8>钁</utf8> <strokes> + <stroke> + <point x="220" y="168"/> + <point x="65" y="407"/> + </stroke> + <stroke> + <point x="205" y="172"/> + <point x="363" y="317"/> + </stroke> + <stroke> + <point x="108" y="358"/> + <point x="308" y="351"/> + </stroke> + <stroke> + <point x="98" y="498"/> + <point x="308" y="485"/> + </stroke> + <stroke> + <point x="210" y="364"/> + <point x="205" y="754"/> + </stroke> + <stroke> + <point x="103" y="599"/> + <point x="145" y="681"/> + </stroke> + <stroke> + <point x="293" y="580"/> + <point x="268" y="677"/> + </stroke> + <stroke> + <point x="80" y="782"/> + <point x="325" y="739"/> + </stroke> + <stroke> + <point x="460" y="185"/> + <point x="470" y="345"/> + </stroke> + <stroke> + <point x="468" y="190"/> + <point x="605" y="183"/> + <point x="595" y="358"/> + </stroke> + <stroke> + <point x="470" y="239"/> + <point x="588" y="233"/> + </stroke> + <stroke> + <point x="468" y="293"/> + <point x="590" y="287"/> + </stroke> + <stroke> + <point x="475" y="343"/> + <point x="585" y="343"/> + </stroke> + <stroke> + <point x="703" y="181"/> + <point x="720" y="347"/> + </stroke> + <stroke> + <point x="705" y="198"/> + <point x="875" y="183"/> + <point x="858" y="369"/> + </stroke> + <stroke> + <point x="713" y="241"/> + <point x="863" y="237"/> + </stroke> + <stroke> + <point x="718" y="291"/> + <point x="850" y="289"/> + </stroke> + <stroke> + <point x="725" y="347"/> + <point x="855" y="349"/> + </stroke> + <stroke> + <point x="545" y="379"/> + <point x="375" y="537"/> + </stroke> + <stroke> + <point x="488" y="431"/> + <point x="483" y="638"/> + </stroke> + <stroke> + <point x="715" y="371"/> + <point x="668" y="438"/> + </stroke> + <stroke> + <point x="505" y="435"/> + <point x="843" y="442"/> + </stroke> + <stroke> + <point x="503" y="506"/> + <point x="818" y="506"/> + </stroke> + <stroke> + <point x="513" y="567"/> + <point x="808" y="569"/> + </stroke> + <stroke> + <point x="675" y="440"/> + <point x="678" y="619"/> + </stroke> + <stroke> + <point x="498" y="610"/> + <point x="893" y="612"/> + </stroke> + <stroke> + <point x="483" y="683"/> + <point x="813" y="679"/> + <point x="648" y="791"/> + <point x="458" y="894"/> + </stroke> + <stroke> + <point x="540" y="711"/> + <point x="658" y="817"/> + <point x="863" y="892"/> + </stroke> </strokes> </character> <character> <utf8>鑿</utf8> <strokes> + <stroke> + <point x="248" y="116"/> + <point x="253" y="224"/> + </stroke> + <stroke> + <point x="335" y="121"/> + <point x="340" y="209"/> + </stroke> + <stroke> + <point x="143" y="142"/> + <point x="180" y="207"/> + </stroke> + <stroke> + <point x="463" y="149"/> + <point x="403" y="216"/> + </stroke> + <stroke> + <point x="70" y="226"/> + <point x="495" y="224"/> + </stroke> + <stroke> + <point x="213" y="226"/> + <point x="223" y="287"/> + </stroke> + <stroke> + <point x="368" y="226"/> + <point x="363" y="280"/> + </stroke> + <stroke> + <point x="125" y="291"/> + <point x="443" y="289"/> + </stroke> + <stroke> + <point x="65" y="351"/> + <point x="493" y="356"/> + </stroke> + <stroke> + <point x="285" y="291"/> + <point x="295" y="504"/> + </stroke> + <stroke> + <point x="243" y="366"/> + <point x="153" y="399"/> + </stroke> + <stroke> + <point x="148" y="397"/> + <point x="155" y="500"/> + </stroke> + <stroke> + <point x="358" y="394"/> + <point x="455" y="388"/> + <point x="438" y="504"/> + </stroke> + <stroke> + <point x="163" y="448"/> + <point x="220" y="446"/> + </stroke> + <stroke> + <point x="348" y="444"/> + <point x="435" y="440"/> + </stroke> + <stroke> + <point x="153" y="504"/> + <point x="423" y="496"/> + </stroke> + <stroke> + <point x="628" y="164"/> + <point x="620" y="259"/> + <point x="528" y="338"/> + </stroke> + <stroke> + <point x="630" y="179"/> + <point x="763" y="170"/> + <point x="760" y="300"/> + <point x="885" y="297"/> + <point x="880" y="222"/> + </stroke> + <stroke> + <point x="595" y="364"/> + <point x="810" y="356"/> + <point x="730" y="448"/> + <point x="610" y="496"/> + </stroke> + <stroke> + <point x="623" y="390"/> + <point x="868" y="498"/> + </stroke> + <stroke> + <point x="503" y="481"/> + <point x="195" y="647"/> + </stroke> + <stroke> + <point x="475" y="485"/> + <point x="788" y="608"/> + </stroke> + <stroke> + <point x="310" y="623"/> + <point x="608" y="619"/> + </stroke> + <stroke> + <point x="290" y="698"/> + <point x="703" y="703"/> + </stroke> + <stroke> + <point x="483" y="631"/> + <point x="505" y="853"/> + </stroke> + <stroke> + <point x="305" y="772"/> + <point x="410" y="834"/> + </stroke> + <stroke> + <point x="663" y="756"/> + <point x="590" y="834"/> + </stroke> + <stroke> + <point x="238" y="873"/> + <point x="860" y="858"/> + </stroke> </strokes> </character> <character> <utf8>閂</utf8> <strokes> + <stroke> + <point x="130" y="192"/> + <point x="148" y="851"/> + </stroke> + <stroke> + <point x="125" y="183"/> + <point x="398" y="179"/> + <point x="395" y="438"/> + </stroke> + <stroke> + <point x="138" y="291"/> + <point x="370" y="293"/> + </stroke> + <stroke> + <point x="135" y="412"/> + <point x="393" y="407"/> + </stroke> + <stroke> + <point x="573" y="181"/> + <point x="588" y="422"/> + </stroke> + <stroke> + <point x="568" y="185"/> + <point x="850" y="188"/> + <point x="853" y="834"/> + <point x="750" y="797"/> + </stroke> + <stroke> + <point x="570" y="295"/> + <point x="843" y="287"/> + </stroke> + <stroke> + <point x="583" y="403"/> + <point x="840" y="397"/> + </stroke> + <stroke> + <point x="273" y="610"/> + <point x="668" y="595"/> + </stroke> </strokes> </character> <character> <utf8>閇</utf8> <strokes> + <stroke> + <point x="130" y="177"/> + <point x="135" y="841"/> + </stroke> + <stroke> + <point x="113" y="168"/> + <point x="403" y="170"/> + <point x="413" y="384"/> + </stroke> + <stroke> + <point x="135" y="280"/> + <point x="400" y="280"/> + </stroke> + <stroke> + <point x="160" y="386"/> + <point x="410" y="386"/> + </stroke> + <stroke> + <point x="580" y="168"/> + <point x="593" y="392"/> + </stroke> + <stroke> + <point x="578" y="175"/> + <point x="860" y="177"/> + <point x="855" y="828"/> + <point x="768" y="789"/> + </stroke> + <stroke> + <point x="603" y="282"/> + <point x="828" y="282"/> + </stroke> + <stroke> + <point x="605" y="381"/> + <point x="853" y="386"/> + </stroke> + <stroke> + <point x="298" y="513"/> + <point x="713" y="504"/> + </stroke> + <stroke> + <point x="480" y="511"/> + <point x="478" y="830"/> + </stroke> + <stroke> + <point x="513" y="584"/> + <point x="635" y="666"/> + </stroke> </strokes> </character> <character> <utf8>閊</utf8> <strokes> + <stroke> + <point x="130" y="170"/> + <point x="125" y="856"/> + </stroke> + <stroke> + <point x="130" y="175"/> + <point x="400" y="170"/> + <point x="405" y="388"/> + </stroke> + <stroke> + <point x="140" y="280"/> + <point x="403" y="278"/> + </stroke> + <stroke> + <point x="140" y="379"/> + <point x="400" y="377"/> + </stroke> + <stroke> + <point x="570" y="166"/> + <point x="588" y="392"/> + </stroke> + <stroke> + <point x="568" y="175"/> + <point x="865" y="177"/> + <point x="845" y="838"/> + <point x="753" y="808"/> + </stroke> + <stroke> + <point x="580" y="272"/> + <point x="848" y="269"/> + </stroke> + <stroke> + <point x="590" y="381"/> + <point x="858" y="384"/> + </stroke> + <stroke> + <point x="490" y="438"/> + <point x="495" y="731"/> + </stroke> + <stroke> + <point x="330" y="534"/> + <point x="325" y="731"/> + <point x="663" y="733"/> + </stroke> + <stroke> + <point x="663" y="534"/> + <point x="668" y="746"/> + </stroke> </strokes> </character> <character> <utf8>閔</utf8> <strokes> + <stroke> + <point x="140" y="177"/> + <point x="138" y="860"/> + </stroke> + <stroke> + <point x="145" y="177"/> + <point x="393" y="177"/> + <point x="398" y="371"/> + </stroke> + <stroke> + <point x="153" y="274"/> + <point x="398" y="269"/> + </stroke> + <stroke> + <point x="148" y="362"/> + <point x="408" y="369"/> + </stroke> + <stroke> + <point x="585" y="175"/> + <point x="588" y="369"/> + </stroke> + <stroke> + <point x="595" y="175"/> + <point x="860" y="170"/> + <point x="860" y="832"/> + <point x="773" y="802"/> + </stroke> + <stroke> + <point x="580" y="272"/> + <point x="848" y="269"/> + </stroke> + <stroke> + <point x="593" y="364"/> + <point x="858" y="362"/> + </stroke> + <stroke> + <point x="485" y="407"/> + <point x="485" y="515"/> + </stroke> + <stroke> + <point x="295" y="515"/> + <point x="718" y="519"/> + </stroke> + <stroke> + <point x="603" y="519"/> + <point x="465" y="711"/> + <point x="268" y="782"/> + </stroke> + <stroke> + <point x="365" y="528"/> + <point x="435" y="666"/> + <point x="690" y="778"/> + </stroke> </strokes> </character> <character> <utf8>閖</utf8> <strokes> + <stroke> + <point x="138" y="175"/> + <point x="145" y="849"/> + </stroke> + <stroke> + <point x="150" y="175"/> + <point x="433" y="170"/> + <point x="420" y="401"/> + </stroke> + <stroke> + <point x="163" y="276"/> + <point x="418" y="274"/> + </stroke> + <stroke> + <point x="160" y="386"/> + <point x="425" y="388"/> + </stroke> + <stroke> + <point x="573" y="159"/> + <point x="583" y="397"/> + </stroke> + <stroke> + <point x="568" y="159"/> + <point x="833" y="166"/> + <point x="848" y="830"/> + <point x="755" y="797"/> + </stroke> + <stroke> + <point x="580" y="280"/> + <point x="833" y="282"/> + </stroke> + <stroke> + <point x="590" y="386"/> + <point x="840" y="381"/> + </stroke> + <stroke> + <point x="495" y="446"/> + <point x="485" y="806"/> + <point x="423" y="780"/> + </stroke> + <stroke> + <point x="260" y="537"/> + <point x="403" y="534"/> + <point x="248" y="744"/> + </stroke> + <stroke> + <point x="680" y="511"/> + <point x="573" y="608"/> + </stroke> + <stroke> + <point x="510" y="513"/> + <point x="600" y="642"/> + <point x="740" y="722"/> + </stroke> </strokes> </character> <character> <utf8>閘</utf8> <strokes> + <stroke> + <point x="133" y="181"/> + <point x="140" y="856"/> + </stroke> + <stroke> + <point x="135" y="185"/> + <point x="400" y="183"/> + <point x="383" y="377"/> + </stroke> + <stroke> + <point x="145" y="274"/> + <point x="375" y="278"/> + </stroke> + <stroke> + <point x="143" y="362"/> + <point x="383" y="362"/> + </stroke> + <stroke> + <point x="575" y="172"/> + <point x="588" y="377"/> + </stroke> + <stroke> + <point x="578" y="188"/> + <point x="848" y="183"/> + <point x="853" y="834"/> + <point x="788" y="810"/> + </stroke> + <stroke> + <point x="575" y="276"/> + <point x="843" y="272"/> + </stroke> + <stroke> + <point x="600" y="358"/> + <point x="853" y="356"/> + </stroke> + <stroke> + <point x="323" y="455"/> + <point x="330" y="662"/> + </stroke> + <stroke> + <point x="328" y="461"/> + <point x="678" y="468"/> + <point x="648" y="670"/> + </stroke> + <stroke> + <point x="343" y="558"/> + <point x="653" y="560"/> + </stroke> + <stroke> + <point x="335" y="664"/> + <point x="655" y="655"/> + </stroke> + <stroke> + <point x="485" y="466"/> + <point x="490" y="836"/> + </stroke> </strokes> </character> <character> <utf8>閙</utf8> <strokes> + <stroke> + <point x="140" y="179"/> + <point x="143" y="856"/> + </stroke> + <stroke> + <point x="138" y="181"/> + <point x="410" y="185"/> + <point x="405" y="375"/> + </stroke> + <stroke> + <point x="148" y="265"/> + <point x="420" y="267"/> + </stroke> + <stroke> + <point x="155" y="360"/> + <point x="410" y="362"/> + </stroke> + <stroke> + <point x="580" y="175"/> + <point x="595" y="366"/> + </stroke> + <stroke> + <point x="575" y="183"/> + <point x="863" y="185"/> + <point x="860" y="834"/> + <point x="760" y="804"/> + </stroke> + <stroke> + <point x="585" y="267"/> + <point x="848" y="259"/> + </stroke> + <stroke> + <point x="583" y="358"/> + <point x="865" y="360"/> + </stroke> + <stroke> + <point x="493" y="388"/> + <point x="500" y="491"/> + </stroke> + <stroke> + <point x="243" y="500"/> + <point x="698" y="500"/> + </stroke> + <stroke> + <point x="323" y="584"/> + <point x="328" y="776"/> + </stroke> + <stroke> + <point x="328" y="586"/> + <point x="665" y="586"/> + <point x="660" y="761"/> + <point x="583" y="731"/> + </stroke> + <stroke> + <point x="495" y="502"/> + <point x="488" y="853"/> + </stroke> </strokes> </character> <character> <utf8>閠</utf8> <strokes> + <stroke> + <point x="128" y="179"/> + <point x="125" y="851"/> + </stroke> + <stroke> + <point x="125" y="175"/> + <point x="390" y="181"/> + <point x="395" y="364"/> + </stroke> + <stroke> + <point x="145" y="267"/> + <point x="385" y="269"/> + </stroke> + <stroke> + <point x="143" y="358"/> + <point x="398" y="358"/> + </stroke> + <stroke> + <point x="568" y="168"/> + <point x="578" y="375"/> + </stroke> + <stroke> + <point x="578" y="181"/> + <point x="860" y="183"/> + <point x="868" y="836"/> + <point x="785" y="810"/> + </stroke> + <stroke> + <point x="578" y="269"/> + <point x="853" y="267"/> + </stroke> + <stroke> + <point x="595" y="360"/> + <point x="850" y="356"/> + </stroke> + <stroke> + <point x="320" y="476"/> + <point x="678" y="472"/> + </stroke> + <stroke> + <point x="345" y="595"/> + <point x="658" y="597"/> + </stroke> + <stroke> + <point x="490" y="478"/> + <point x="495" y="752"/> + </stroke> + <stroke> + <point x="243" y="741"/> + <point x="735" y="748"/> + </stroke> + <stroke> + <point x="560" y="623"/> + <point x="648" y="696"/> + </stroke> </strokes> </character> <character> <utf8>閨</utf8> <strokes> + <stroke> + <point x="123" y="177"/> + <point x="135" y="856"/> + </stroke> + <stroke> + <point x="128" y="179"/> + <point x="408" y="183"/> + <point x="398" y="371"/> + </stroke> + <stroke> + <point x="140" y="269"/> + <point x="398" y="272"/> + </stroke> + <stroke> + <point x="135" y="360"/> + <point x="418" y="360"/> + </stroke> + <stroke> + <point x="570" y="172"/> + <point x="588" y="369"/> + </stroke> + <stroke> + <point x="578" y="175"/> + <point x="868" y="177"/> + <point x="883" y="828"/> + <point x="790" y="817"/> + </stroke> + <stroke> + <point x="578" y="269"/> + <point x="883" y="259"/> + </stroke> + <stroke> + <point x="585" y="364"/> + <point x="880" y="364"/> + </stroke> + <stroke> + <point x="328" y="481"/> + <point x="675" y="481"/> + </stroke> + <stroke> + <point x="483" y="392"/> + <point x="495" y="569"/> + </stroke> + <stroke> + <point x="285" y="575"/> + <point x="735" y="565"/> + </stroke> + <stroke> + <point x="350" y="657"/> + <point x="698" y="659"/> + </stroke> + <stroke> + <point x="488" y="591"/> + <point x="495" y="750"/> + </stroke> + <stroke> + <point x="283" y="750"/> + <point x="678" y="746"/> + </stroke> </strokes> </character> <character> <utf8>閧</utf8> <strokes> + <stroke> + <point x="125" y="179"/> + <point x="128" y="864"/> + </stroke> + <stroke> + <point x="110" y="179"/> + <point x="395" y="185"/> + <point x="400" y="375"/> + </stroke> + <stroke> + <point x="153" y="265"/> + <point x="398" y="265"/> + </stroke> + <stroke> + <point x="140" y="360"/> + <point x="395" y="358"/> + </stroke> + <stroke> + <point x="568" y="172"/> + <point x="583" y="371"/> + </stroke> + <stroke> + <point x="568" y="181"/> + <point x="858" y="179"/> + <point x="865" y="845"/> + <point x="775" y="817"/> + </stroke> + <stroke> + <point x="568" y="265"/> + <point x="860" y="269"/> + </stroke> + <stroke> + <point x="605" y="358"/> + <point x="863" y="362"/> + </stroke> + <stroke> + <point x="293" y="530"/> + <point x="670" y="524"/> + </stroke> + <stroke> + <point x="408" y="446"/> + <point x="400" y="642"/> + </stroke> + <stroke> + <point x="560" y="438"/> + <point x="575" y="640"/> + </stroke> + <stroke> + <point x="245" y="644"/> + <point x="723" y="638"/> + </stroke> + <stroke> + <point x="403" y="705"/> + <point x="350" y="806"/> + </stroke> + <stroke> + <point x="575" y="690"/> + <point x="658" y="780"/> + </stroke> </strokes> </character> <character> <utf8>閭</utf8> <strokes> + <stroke> + <point x="133" y="179"/> + <point x="143" y="845"/> + </stroke> + <stroke> + <point x="138" y="177"/> + <point x="400" y="175"/> + <point x="393" y="373"/> + </stroke> + <stroke> + <point x="145" y="259"/> + <point x="390" y="263"/> + </stroke> + <stroke> + <point x="155" y="360"/> + <point x="398" y="347"/> + </stroke> + <stroke> + <point x="565" y="159"/> + <point x="568" y="375"/> + </stroke> + <stroke> + <point x="558" y="166"/> + <point x="848" y="172"/> + <point x="848" y="841"/> + <point x="770" y="813"/> + </stroke> + <stroke> + <point x="555" y="263"/> + <point x="840" y="263"/> + </stroke> + <stroke> + <point x="560" y="366"/> + <point x="833" y="366"/> + </stroke> + <stroke> + <point x="358" y="422"/> + <point x="370" y="565"/> + </stroke> + <stroke> + <point x="365" y="431"/> + <point x="603" y="429"/> + <point x="598" y="565"/> + </stroke> + <stroke> + <point x="363" y="560"/> + <point x="600" y="560"/> + </stroke> + <stroke> + <point x="460" y="560"/> + <point x="408" y="662"/> + </stroke> + <stroke> + <point x="323" y="651"/> + <point x="335" y="813"/> + </stroke> + <stroke> + <point x="318" y="662"/> + <point x="660" y="666"/> + <point x="640" y="817"/> + </stroke> + <stroke> + <point x="338" y="813"/> + <point x="648" y="810"/> + </stroke> </strokes> </character> <character> <utf8>閼</utf8> <strokes> + <stroke> + <point x="133" y="172"/> + <point x="133" y="864"/> + </stroke> + <stroke> + <point x="135" y="179"/> + <point x="393" y="179"/> + <point x="398" y="369"/> + </stroke> + <stroke> + <point x="133" y="265"/> + <point x="393" y="267"/> + </stroke> + <stroke> + <point x="140" y="356"/> + <point x="385" y="358"/> + </stroke> + <stroke> + <point x="570" y="164"/> + <point x="588" y="358"/> + </stroke> + <stroke> + <point x="573" y="185"/> + <point x="865" y="179"/> + <point x="868" y="836"/> + <point x="778" y="810"/> + </stroke> + <stroke> + <point x="580" y="269"/> + <point x="853" y="265"/> + </stroke> + <stroke> + <point x="593" y="362"/> + <point x="843" y="362"/> + </stroke> + <stroke> + <point x="348" y="399"/> + <point x="360" y="502"/> + </stroke> + <stroke> + <point x="220" y="506"/> + <point x="495" y="502"/> + </stroke> + <stroke> + <point x="313" y="593"/> + <point x="428" y="588"/> + <point x="393" y="815"/> + <point x="335" y="784"/> + </stroke> + <stroke> + <point x="310" y="509"/> + <point x="295" y="672"/> + <point x="213" y="787"/> + </stroke> + <stroke> + <point x="648" y="450"/> + <point x="515" y="621"/> + </stroke> + <stroke> + <point x="623" y="455"/> + <point x="803" y="612"/> + </stroke> + <stroke> + <point x="573" y="591"/> + <point x="693" y="668"/> + </stroke> + <stroke> + <point x="575" y="703"/> + <point x="690" y="772"/> + </stroke> </strokes> </character> <character> <utf8>閻</utf8> <strokes> + <stroke> + <point x="118" y="183"/> + <point x="128" y="860"/> + </stroke> + <stroke> + <point x="128" y="181"/> + <point x="400" y="177"/> + <point x="408" y="375"/> + </stroke> + <stroke> + <point x="118" y="278"/> + <point x="400" y="274"/> + </stroke> + <stroke> + <point x="125" y="366"/> + <point x="398" y="360"/> + </stroke> + <stroke> + <point x="553" y="175"/> + <point x="575" y="358"/> + </stroke> + <stroke> + <point x="543" y="185"/> + <point x="858" y="185"/> + <point x="863" y="832"/> + <point x="780" y="813"/> + </stroke> + <stroke> + <point x="565" y="274"/> + <point x="825" y="276"/> + </stroke> + <stroke> + <point x="585" y="358"/> + <point x="853" y="358"/> + </stroke> + <stroke> + <point x="408" y="427"/> + <point x="268" y="582"/> + </stroke> + <stroke> + <point x="380" y="453"/> + <point x="635" y="455"/> + <point x="583" y="567"/> + <point x="470" y="541"/> + </stroke> + <stroke> + <point x="463" y="571"/> + <point x="333" y="634"/> + </stroke> + <stroke> + <point x="335" y="629"/> + <point x="328" y="804"/> + </stroke> + <stroke> + <point x="508" y="629"/> + <point x="663" y="629"/> + <point x="678" y="797"/> + </stroke> + <stroke> + <point x="325" y="703"/> + ... [truncated message content] |
From: <ik...@us...> - 2007-06-09 01:06:22
|
Revision: 1358 http://tomoe.svn.sourceforge.net/tomoe/?rev=1358&view=rev Author: ikezoe Date: 2007-06-08 18:06:21 -0700 (Fri, 08 Jun 2007) Log Message: ----------- set default module dir. Modified Paths: -------------- tomoe/trunk/test/python/test_dict.py Modified: tomoe/trunk/test/python/test_dict.py =================================================================== --- tomoe/trunk/test/python/test_dict.py 2007-06-09 00:29:49 UTC (rev 1357) +++ tomoe/trunk/test/python/test_dict.py 2007-06-09 01:06:21 UTC (rev 1358) @@ -6,7 +6,8 @@ import tomoe class TomoeDictTest(unittest.TestCase): - #def setUp(self): + def setUp(self): + tomoe.tomoe_dict_set_default_module_dir('../../module/dict/.libs') def setUpXMLDict(self, dict_contents): dict_name = "tomoe-test-xmldict.xml" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ik...@us...> - 2007-06-09 00:29:48
|
Revision: 1357 http://tomoe.svn.sourceforge.net/tomoe/?rev=1357&view=rev Author: ikezoe Date: 2007-06-08 17:29:49 -0700 (Fri, 08 Jun 2007) Log Message: ----------- more TomoeReading test. Modified Paths: -------------- tomoe/trunk/test/python/test_reading.py Modified: tomoe/trunk/test/python/test_reading.py =================================================================== --- tomoe/trunk/test/python/test_reading.py 2007-06-08 23:50:44 UTC (rev 1356) +++ tomoe/trunk/test/python/test_reading.py 2007-06-09 00:29:49 UTC (rev 1357) @@ -38,36 +38,55 @@ def testCompare(self): reading_string = "いけ" + reading_string2 = "ほげ" reading1 = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string) reading2 = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string) + reading3 = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string2) self.assertEqual(reading1.compare(reading2), 0) + self.assertNotEqual(reading1.compare(reading3), 0) reading1 = tomoe.Reading(tomoe.READING_JA_KUN, reading_string) reading2 = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string) + reading3 = tomoe.Reading(tomoe.READING_JA_KUN, reading_string2) + reading4 = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string2) self.assertEqual(reading1.compare(reading2), 0) self.assertEqual(reading2.compare(reading1), 0) + self.assertNotEqual(reading2.compare(reading3), 0) + self.assertNotEqual(reading1.compare(reading4), 0) reading1 = tomoe.Reading(tomoe.READING_JA_ON, reading_string) reading2 = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string) + reading3 = tomoe.Reading(tomoe.READING_JA_ON, reading_string2) + reading4 = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string2) self.assertEqual(reading1.compare(reading2), 0) self.assertEqual(reading2.compare(reading1), 0) + self.assertNotEqual(reading2.compare(reading3), 0) + self.assertNotEqual(reading1.compare(reading4), 0) reading1 = tomoe.Reading(tomoe.READING_JA_ON, reading_string) reading2 = tomoe.Reading(tomoe.READING_JA_ON, reading_string) + reading3 = tomoe.Reading(tomoe.READING_JA_ON, reading_string2) self.assertEqual(reading1.compare(reading2), 0) + self.assertNotEqual(reading1.compare(reading3), 0) reading1 = tomoe.Reading(tomoe.READING_JA_KUN, reading_string) reading2 = tomoe.Reading(tomoe.READING_JA_KUN, reading_string) + reading3 = tomoe.Reading(tomoe.READING_JA_KUN, reading_string2) self.assertEqual(reading1.compare(reading2), 0) + self.assertNotEqual(reading1.compare(reading3), 0) reading1 = tomoe.Reading(tomoe.READING_JA_ON, reading_string) reading2 = tomoe.Reading(tomoe.READING_JA_KUN, reading_string) + reading3 = tomoe.Reading(tomoe.READING_JA_ON, reading_string2) + reading4 = tomoe.Reading(tomoe.READING_JA_KUN, reading_string2) self.assertNotEqual(reading1.compare(reading2), 0) self.assertNotEqual(reading2.compare(reading1), 0) + self.assertNotEqual(reading2.compare(reading3), 0) + self.assertNotEqual(reading1.compare(reading4), 0) if __name__ == '__main__': - suite = unittest.makeSuite(TomoeReadingTest) - unittest.TextTestRunner(verbosity=2).run(suite) - #unittest.main() + #suite = unittest.makeSuite(TomoeReadingTest) + #unittest.TextTestRunner(verbosity=2).run(suite) + unittest.main() # vi:ts=4:nowrap:ai:expandtab This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ik...@us...> - 2007-06-08 23:51:00
|
Revision: 1356 http://tomoe.svn.sourceforge.net/tomoe/?rev=1356&view=rev Author: ikezoe Date: 2007-06-08 16:50:44 -0700 (Fri, 08 Jun 2007) Log Message: ----------- * bindings/python/tomoe.defs: Implement tomoe_reading_compare(). Modified Paths: -------------- tomoe/trunk/ChangeLog tomoe/trunk/bindings/python/tomoe.defs Modified: tomoe/trunk/ChangeLog =================================================================== --- tomoe/trunk/ChangeLog 2007-06-08 23:49:07 UTC (rev 1355) +++ tomoe/trunk/ChangeLog 2007-06-08 23:50:44 UTC (rev 1356) @@ -1,3 +1,7 @@ +2007-06-09 Hiroyuki Ikezoe <poi...@ik...> + + * bindings/python/tomoe.defs: Implement tomoe_reading_compare(). + 2007-06-08 Kouhei Sutou <ko...@co...> * test/tomoe-test-utils.rb: fixed dynamic dictionary search method. Modified: tomoe/trunk/bindings/python/tomoe.defs =================================================================== --- tomoe/trunk/bindings/python/tomoe.defs 2007-06-08 23:49:07 UTC (rev 1355) +++ tomoe/trunk/bindings/python/tomoe.defs 2007-06-08 23:50:44 UTC (rev 1356) @@ -707,6 +707,14 @@ (return-type "gchar*") ) +(define-method compare + (of-object "TomoeReading") + (c-name "tomoe_reading_compare") + (return-type "gint") + (parameters + '("const-TomoeReading*" "b") + ) +) ;; From tomoe-recognizer.h This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ik...@us...> - 2007-06-08 23:49:12
|
Revision: 1355 http://tomoe.svn.sourceforge.net/tomoe/?rev=1355&view=rev Author: ikezoe Date: 2007-06-08 16:49:07 -0700 (Fri, 08 Jun 2007) Log Message: ----------- fix silly mistake. Modified Paths: -------------- tomoe/trunk/test/python/test_reading.py Modified: tomoe/trunk/test/python/test_reading.py =================================================================== --- tomoe/trunk/test/python/test_reading.py 2007-06-08 23:43:48 UTC (rev 1354) +++ tomoe/trunk/test/python/test_reading.py 2007-06-08 23:49:07 UTC (rev 1355) @@ -40,27 +40,31 @@ reading_string = "いけ" reading1 = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string) reading2 = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string) - self.assertEqual(tomoe.tomoe_reading_compare(reading1, reading2), 0) - self.assertEqual(tomoe.tomoe_reading_compare(reading2, reading1), 0) + self.assertEqual(reading1.compare(reading2), 0) reading1 = tomoe.Reading(tomoe.READING_JA_KUN, reading_string) reading2 = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string) - self.assertEqual(tomoe.tomoe_reading_compare(reading1, reading2), 0) - self.assertEqual(tomoe.tomoe_reading_compare(reading2, reading1), 0) + self.assertEqual(reading1.compare(reading2), 0) + self.assertEqual(reading2.compare(reading1), 0) reading1 = tomoe.Reading(tomoe.READING_JA_ON, reading_string) reading2 = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string) - self.assertEqual(tomoe.tomoe_reading_compare(reading1, reading2), 0) - self.assertEqual(tomoe.tomoe_reading_compare(reading2, reading1), 0) + self.assertEqual(reading1.compare(reading2), 0) + self.assertEqual(reading2.compare(reading1), 0) - reading1 = tomoe.Reading(tomoe.READING_JA, reading_string) - reading2 = tomoe.Reading(tomoe.READING_JA, reading_string) - self.assertEqual(tomoe.tomoe_reading_compare(reading1, reading2), 0) + reading1 = tomoe.Reading(tomoe.READING_JA_ON, reading_string) + reading2 = tomoe.Reading(tomoe.READING_JA_ON, reading_string) + self.assertEqual(reading1.compare(reading2), 0) - reading1 = tomoe.Reading(tomoe.READING_ON, reading_string) - reading2 = tomoe.Reading(tomoe.READING_ON, reading_string) - self.assertEqual(tomoe.tomoe_reading_compare(reading1, reading2), 0) + reading1 = tomoe.Reading(tomoe.READING_JA_KUN, reading_string) + reading2 = tomoe.Reading(tomoe.READING_JA_KUN, reading_string) + self.assertEqual(reading1.compare(reading2), 0) + reading1 = tomoe.Reading(tomoe.READING_JA_ON, reading_string) + reading2 = tomoe.Reading(tomoe.READING_JA_KUN, reading_string) + self.assertNotEqual(reading1.compare(reading2), 0) + self.assertNotEqual(reading2.compare(reading1), 0) + if __name__ == '__main__': suite = unittest.makeSuite(TomoeReadingTest) unittest.TextTestRunner(verbosity=2).run(suite) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ik...@us...> - 2007-06-08 23:43:49
|
Revision: 1354 http://tomoe.svn.sourceforge.net/tomoe/?rev=1354&view=rev Author: ikezoe Date: 2007-06-08 16:43:48 -0700 (Fri, 08 Jun 2007) Log Message: ----------- add test for TomoeReading. Added Paths: ----------- tomoe/trunk/test/python/test_reading.py Added: tomoe/trunk/test/python/test_reading.py =================================================================== --- tomoe/trunk/test/python/test_reading.py (rev 0) +++ tomoe/trunk/test/python/test_reading.py 2007-06-08 23:43:48 UTC (rev 1354) @@ -0,0 +1,69 @@ +# -*- coding: UTF=8 -*- +import os +import sys +import unittest +sys.path.append('../../bindings/python/.libs') +import tomoe + +class TomoeReadingTest(unittest.TestCase): + #def setUp(self): + + def testGetReadingType(self): + reading_string = "いけ" + + reading = tomoe.Reading(tomoe.READING_INVALID, reading_string) + self.assertEqual(reading.get_reading_type(), tomoe.READING_INVALID) + + reading = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string) + self.assertEqual(reading.get_reading_type(), tomoe.READING_UNKNOWN) + + reading = tomoe.Reading(tomoe.READING_JA_KUN, reading_string) + self.assertEqual(reading.get_reading_type(), tomoe.READING_JA_KUN) + + reading = tomoe.Reading(tomoe.READING_JA_ON, reading_string) + self.assertEqual(reading.get_reading_type(), tomoe.READING_JA_ON) + + def testGetReading(self): + reading_string = "いけ" + reading = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string) + self.assertEqual(reading.get_reading(), reading_string) + + def testToXML(self): + reading_string = "いけ" + reading = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string) + reading_data = """\ + <reading type="unknown">%s</reading> +""" % (reading_string) + self.assertEqual(reading.to_xml(), reading_data) + + def testCompare(self): + reading_string = "いけ" + reading1 = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string) + reading2 = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string) + self.assertEqual(tomoe.tomoe_reading_compare(reading1, reading2), 0) + self.assertEqual(tomoe.tomoe_reading_compare(reading2, reading1), 0) + + reading1 = tomoe.Reading(tomoe.READING_JA_KUN, reading_string) + reading2 = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string) + self.assertEqual(tomoe.tomoe_reading_compare(reading1, reading2), 0) + self.assertEqual(tomoe.tomoe_reading_compare(reading2, reading1), 0) + + reading1 = tomoe.Reading(tomoe.READING_JA_ON, reading_string) + reading2 = tomoe.Reading(tomoe.READING_UNKNOWN, reading_string) + self.assertEqual(tomoe.tomoe_reading_compare(reading1, reading2), 0) + self.assertEqual(tomoe.tomoe_reading_compare(reading2, reading1), 0) + + reading1 = tomoe.Reading(tomoe.READING_JA, reading_string) + reading2 = tomoe.Reading(tomoe.READING_JA, reading_string) + self.assertEqual(tomoe.tomoe_reading_compare(reading1, reading2), 0) + + reading1 = tomoe.Reading(tomoe.READING_ON, reading_string) + reading2 = tomoe.Reading(tomoe.READING_ON, reading_string) + self.assertEqual(tomoe.tomoe_reading_compare(reading1, reading2), 0) + +if __name__ == '__main__': + suite = unittest.makeSuite(TomoeReadingTest) + unittest.TextTestRunner(verbosity=2).run(suite) + #unittest.main() + +# vi:ts=4:nowrap:ai:expandtab This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ik...@us...> - 2007-06-08 23:25:56
|
Revision: 1353 http://tomoe.svn.sourceforge.net/tomoe/?rev=1353&view=rev Author: ikezoe Date: 2007-06-08 16:25:58 -0700 (Fri, 08 Jun 2007) Log Message: ----------- Use tomoe_char_new_from_xml_data(). Modified Paths: -------------- tomoe/trunk/test/python/test_dict.py Modified: tomoe/trunk/test/python/test_dict.py =================================================================== --- tomoe/trunk/test/python/test_dict.py 2007-06-08 23:13:11 UTC (rev 1352) +++ tomoe/trunk/test/python/test_dict.py 2007-06-08 23:25:58 UTC (rev 1353) @@ -31,13 +31,18 @@ <dictionary> </dictionary> """ + char_code ='池' + char_data = """ + <character> + <utf8>%s</utf8> + </character> + """ % (char_code) + dict = self.setUpXMLDict(dict_contents) - char_code ='池' tomoe_char = dict.get_char(char_code) self.assertEqual(tomoe_char, None) - tomoe_char = tomoe.Char() - tomoe_char.set_utf8(char_code) + tomoe_char = tomoe.tomoe_char_new_from_xml_data(char_data, -1) ret = dict.register_char(tomoe_char) self.assertEqual(ret, True) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ik...@us...> - 2007-06-08 23:13:17
|
Revision: 1352 http://tomoe.svn.sourceforge.net/tomoe/?rev=1352&view=rev Author: ikezoe Date: 2007-06-08 16:13:11 -0700 (Fri, 08 Jun 2007) Log Message: ----------- minor fix. Modified Paths: -------------- tomoe/trunk/test/python/test_dict.py Modified: tomoe/trunk/test/python/test_dict.py =================================================================== --- tomoe/trunk/test/python/test_dict.py 2007-06-08 23:11:57 UTC (rev 1351) +++ tomoe/trunk/test/python/test_dict.py 2007-06-08 23:13:11 UTC (rev 1352) @@ -60,7 +60,7 @@ def testUnregisterChar(self): char_code ='池' dict_contents = """ - <?xml version="1.0" standalone="no"?> + <?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE dictionary SYSTEM "/usr/share/tomoe/dict.dtd"> <dictionary> <character> @@ -75,6 +75,15 @@ tomoe_char = dict.get_char(char_code) self.assertEqual(tomoe_char, None) + dict.flush() + contents = """\ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE dictionary SYSTEM "/usr/share/tomoe/dict.dtd"> +<dictionary> +</dictionary> +""" + self.assertEqual(contents, self.getDictContents()) + def testGetExistChar(self): char_code ='池' n_strokes = 6 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ik...@us...> - 2007-06-08 23:11:56
|
Revision: 1351 http://tomoe.svn.sourceforge.net/tomoe/?rev=1351&view=rev Author: ikezoe Date: 2007-06-08 16:11:57 -0700 (Fri, 08 Jun 2007) Log Message: ----------- more strict check. Modified Paths: -------------- tomoe/trunk/test/python/test_dict.py Modified: tomoe/trunk/test/python/test_dict.py =================================================================== --- tomoe/trunk/test/python/test_dict.py 2007-06-08 16:48:19 UTC (rev 1350) +++ tomoe/trunk/test/python/test_dict.py 2007-06-08 23:11:57 UTC (rev 1351) @@ -16,20 +16,47 @@ return tomoe.Dict("XML", filename = dict_name, editable = True) + def getDictContents(self): + dict_name = "tomoe-test-xmldict.xml" + dict_file = open(dict_name, "r") + contents = dict_file.read() + dict_file.close() + + return contents + def testRegisterChar(self): dict_contents = """ - <?xml version="1.0" standalone="no"?> + <?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE dictionary SYSTEM "/usr/share/tomoe/dict.dtd"> <dictionary> </dictionary> """ dict = self.setUpXMLDict(dict_contents) char_code ='池' + tomoe_char = dict.get_char(char_code) + self.assertEqual(tomoe_char, None) + tomoe_char = tomoe.Char() tomoe_char.set_utf8(char_code) ret = dict.register_char(tomoe_char) self.assertEqual(ret, True) + tomoe_char = dict.get_char(char_code) + self.assertNotEqual(tomoe_char, None) + self.assertEqual(tomoe_char.get_utf8(), char_code) + + dict.flush() + contents = """\ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE dictionary SYSTEM "/usr/share/tomoe/dict.dtd"> +<dictionary> + <character> + <utf8>池</utf8> + </character> +</dictionary> +""" + self.assertEqual(contents, self.getDictContents()) + def testUnregisterChar(self): char_code ='池' dict_contents = """ @@ -45,6 +72,9 @@ ret = dict.unregister_char(char_code) self.assertEqual(ret, True) + tomoe_char = dict.get_char(char_code) + self.assertEqual(tomoe_char, None) + def testGetExistChar(self): char_code ='池' n_strokes = 6 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2007-06-08 16:48:34
|
Revision: 1350 http://tomoe.svn.sourceforge.net/tomoe/?rev=1350&view=rev Author: makeinu Date: 2007-06-08 09:48:19 -0700 (Fri, 08 Jun 2007) Log Message: ----------- 3000/3390 has been finished. Modified Paths: -------------- tools/stroke-editor/data/ja/jis-x-0208-level2.xml Modified: tools/stroke-editor/data/ja/jis-x-0208-level2.xml =================================================================== --- tools/stroke-editor/data/ja/jis-x-0208-level2.xml 2007-06-08 15:08:27 UTC (rev 1349) +++ tools/stroke-editor/data/ja/jis-x-0208-level2.xml 2007-06-08 16:48:19 UTC (rev 1350) @@ -174391,501 +174391,7312 @@ <character> <utf8>酊</utf8> <strokes> + <stroke> + <point x="78" y="205"/> + <point x="460" y="200"/> + </stroke> + <stroke> + <point x="98" y="343"/> + <point x="118" y="821"/> + </stroke> + <stroke> + <point x="88" y="353"/> + <point x="450" y="343"/> + <point x="448" y="804"/> + </stroke> + <stroke> + <point x="238" y="231"/> + <point x="238" y="403"/> + <point x="193" y="569"/> + </stroke> + <stroke> + <point x="315" y="220"/> + <point x="320" y="543"/> + <point x="415" y="554"/> + </stroke> + <stroke> + <point x="135" y="675"/> + <point x="435" y="679"/> + </stroke> + <stroke> + <point x="145" y="806"/> + <point x="435" y="795"/> + </stroke> + <stroke> + <point x="500" y="261"/> + <point x="908" y="248"/> + </stroke> + <stroke> + <point x="745" y="261"/> + <point x="755" y="825"/> + <point x="618" y="791"/> + </stroke> </strokes> </character> <character> <utf8>酖</utf8> <strokes> + <stroke> + <point x="83" y="216"/> + <point x="403" y="207"/> + </stroke> + <stroke> + <point x="110" y="349"/> + <point x="123" y="808"/> + </stroke> + <stroke> + <point x="113" y="347"/> + <point x="390" y="347"/> + <point x="385" y="813"/> + </stroke> + <stroke> + <point x="205" y="228"/> + <point x="200" y="416"/> + <point x="163" y="543"/> + </stroke> + <stroke> + <point x="283" y="218"/> + <point x="290" y="526"/> + <point x="388" y="530"/> + </stroke> + <stroke> + <point x="118" y="664"/> + <point x="383" y="666"/> + </stroke> + <stroke> + <point x="118" y="791"/> + <point x="390" y="787"/> + </stroke> + <stroke> + <point x="510" y="332"/> + <point x="493" y="438"/> + </stroke> + <stroke> + <point x="508" y="343"/> + <point x="908" y="325"/> + <point x="850" y="418"/> + </stroke> + <stroke> + <point x="673" y="175"/> + <point x="635" y="558"/> + <point x="473" y="832"/> + </stroke> + <stroke> + <point x="695" y="448"/> + <point x="708" y="759"/> + <point x="790" y="817"/> + <point x="930" y="825"/> + <point x="910" y="685"/> + </stroke> </strokes> </character> <character> <utf8>酘</utf8> <strokes> + <stroke> + <point x="85" y="203"/> + <point x="408" y="203"/> + </stroke> + <stroke> + <point x="103" y="345"/> + <point x="120" y="819"/> + </stroke> + <stroke> + <point x="105" y="345"/> + <point x="410" y="349"/> + <point x="413" y="810"/> + </stroke> + <stroke> + <point x="208" y="222"/> + <point x="213" y="414"/> + <point x="178" y="543"/> + </stroke> + <stroke> + <point x="280" y="226"/> + <point x="280" y="502"/> + <point x="388" y="511"/> + </stroke> + <stroke> + <point x="120" y="662"/> + <point x="400" y="664"/> + </stroke> + <stroke> + <point x="118" y="791"/> + <point x="403" y="797"/> + </stroke> + <stroke> + <point x="580" y="194"/> + <point x="580" y="341"/> + <point x="513" y="450"/> + </stroke> + <stroke> + <point x="580" y="205"/> + <point x="753" y="196"/> + <point x="750" y="397"/> + <point x="888" y="412"/> + <point x="898" y="328"/> + </stroke> + <stroke> + <point x="555" y="528"/> + <point x="840" y="515"/> + <point x="740" y="679"/> + <point x="508" y="821"/> + </stroke> + <stroke> + <point x="578" y="556"/> + <point x="660" y="670"/> + <point x="905" y="793"/> + </stroke> </strokes> </character> <character> <utf8>酣</utf8> <strokes> + <stroke> + <point x="95" y="207"/> + <point x="383" y="203"/> + </stroke> + <stroke> + <point x="118" y="338"/> + <point x="138" y="828"/> + </stroke> + <stroke> + <point x="125" y="351"/> + <point x="390" y="347"/> + <point x="383" y="797"/> + </stroke> + <stroke> + <point x="208" y="211"/> + <point x="215" y="409"/> + <point x="148" y="586"/> + </stroke> + <stroke> + <point x="290" y="209"/> + <point x="293" y="534"/> + <point x="375" y="541"/> + </stroke> + <stroke> + <point x="143" y="668"/> + <point x="365" y="672"/> + </stroke> + <stroke> + <point x="143" y="789"/> + <point x="368" y="787"/> + </stroke> + <stroke> + <point x="445" y="336"/> + <point x="945" y="336"/> + </stroke> + <stroke> + <point x="578" y="168"/> + <point x="590" y="802"/> + </stroke> + <stroke> + <point x="818" y="168"/> + <point x="810" y="791"/> + </stroke> + <stroke> + <point x="573" y="528"/> + <point x="813" y="522"/> + </stroke> + <stroke> + <point x="585" y="793"/> + <point x="828" y="787"/> + </stroke> </strokes> </character> <character> <utf8>酥</utf8> <strokes> + <stroke> + <point x="73" y="198"/> + <point x="400" y="190"/> + </stroke> + <stroke> + <point x="103" y="325"/> + <point x="128" y="817"/> + </stroke> + <stroke> + <point x="90" y="343"/> + <point x="403" y="338"/> + <point x="390" y="804"/> + </stroke> + <stroke> + <point x="198" y="194"/> + <point x="203" y="394"/> + <point x="178" y="545"/> + </stroke> + <stroke> + <point x="288" y="213"/> + <point x="280" y="504"/> + <point x="395" y="500"/> + </stroke> + <stroke> + <point x="125" y="670"/> + <point x="383" y="670"/> + </stroke> + <stroke> + <point x="143" y="787"/> + <point x="383" y="787"/> + </stroke> + <stroke> + <point x="845" y="155"/> + <point x="538" y="274"/> + </stroke> + <stroke> + <point x="480" y="429"/> + <point x="900" y="422"/> + </stroke> + <stroke> + <point x="693" y="207"/> + <point x="690" y="836"/> + </stroke> + <stroke> + <point x="688" y="435"/> + <point x="485" y="750"/> + </stroke> + <stroke> + <point x="695" y="431"/> + <point x="928" y="711"/> + </stroke> </strokes> </character> <character> <utf8>酩</utf8> <strokes> + <stroke> + <point x="100" y="211"/> + <point x="433" y="198"/> + </stroke> + <stroke> + <point x="120" y="330"/> + <point x="125" y="838"/> + </stroke> + <stroke> + <point x="113" y="351"/> + <point x="418" y="345"/> + <point x="393" y="841"/> + </stroke> + <stroke> + <point x="218" y="211"/> + <point x="200" y="435"/> + <point x="153" y="545"/> + </stroke> + <stroke> + <point x="313" y="207"/> + <point x="285" y="513"/> + <point x="380" y="502"/> + </stroke> + <stroke> + <point x="118" y="675"/> + <point x="403" y="666"/> + </stroke> + <stroke> + <point x="120" y="806"/> + <point x="420" y="815"/> + </stroke> + <stroke> + <point x="670" y="203"/> + <point x="528" y="397"/> + </stroke> + <stroke> + <point x="653" y="231"/> + <point x="863" y="222"/> + <point x="758" y="405"/> + <point x="525" y="610"/> + </stroke> + <stroke> + <point x="578" y="345"/> + <point x="683" y="429"/> + </stroke> + <stroke> + <point x="633" y="534"/> + <point x="660" y="808"/> + </stroke> + <stroke> + <point x="625" y="550"/> + <point x="888" y="541"/> + <point x="835" y="789"/> + </stroke> + <stroke> + <point x="658" y="774"/> + <point x="835" y="769"/> + </stroke> </strokes> </character> <character> <utf8>酳</utf8> <strokes> + <stroke> + <point x="75" y="211"/> + <point x="403" y="200"/> + </stroke> + <stroke> + <point x="88" y="338"/> + <point x="123" y="810"/> + </stroke> + <stroke> + <point x="83" y="338"/> + <point x="405" y="338"/> + <point x="365" y="819"/> + </stroke> + <stroke> + <point x="220" y="222"/> + <point x="215" y="444"/> + <point x="158" y="578"/> + </stroke> + <stroke> + <point x="295" y="231"/> + <point x="280" y="517"/> + <point x="388" y="519"/> + </stroke> + <stroke> + <point x="98" y="681"/> + <point x="375" y="672"/> + </stroke> + <stroke> + <point x="118" y="806"/> + <point x="338" y="808"/> + </stroke> + <stroke> + <point x="713" y="153"/> + <point x="570" y="280"/> + <point x="650" y="330"/> + </stroke> + <stroke> + <point x="768" y="222"/> + <point x="568" y="425"/> + <point x="813" y="377"/> + </stroke> + <stroke> + <point x="783" y="321"/> + <point x="858" y="442"/> + </stroke> + <stroke> + <point x="575" y="509"/> + <point x="578" y="838"/> + </stroke> + <stroke> + <point x="583" y="517"/> + <point x="813" y="522"/> + <point x="818" y="815"/> + <point x="710" y="787"/> + </stroke> + <stroke> + <point x="580" y="597"/> + <point x="813" y="597"/> + </stroke> + <stroke> + <point x="578" y="675"/> + <point x="805" y="683"/> + </stroke> </strokes> </character> <character> <utf8>酲</utf8> <strokes> + <stroke> + <point x="88" y="207"/> + <point x="398" y="203"/> + </stroke> + <stroke> + <point x="113" y="341"/> + <point x="113" y="808"/> + </stroke> + <stroke> + <point x="108" y="360"/> + <point x="400" y="358"/> + <point x="393" y="789"/> + </stroke> + <stroke> + <point x="210" y="226"/> + <point x="218" y="388"/> + <point x="168" y="556"/> + </stroke> + <stroke> + <point x="295" y="220"/> + <point x="290" y="519"/> + <point x="378" y="511"/> + </stroke> + <stroke> + <point x="125" y="666"/> + <point x="385" y="666"/> + </stroke> + <stroke> + <point x="118" y="784"/> + <point x="398" y="787"/> + </stroke> + <stroke> + <point x="558" y="196"/> + <point x="570" y="388"/> + </stroke> + <stroke> + <point x="565" y="205"/> + <point x="838" y="207"/> + <point x="813" y="392"/> + </stroke> + <stroke> + <point x="575" y="381"/> + <point x="808" y="379"/> + </stroke> + <stroke> + <point x="843" y="440"/> + <point x="533" y="537"/> + </stroke> + <stroke> + <point x="525" y="659"/> + <point x="865" y="649"/> + </stroke> + <stroke> + <point x="708" y="489"/> + <point x="708" y="800"/> + </stroke> + <stroke> + <point x="485" y="800"/> + <point x="933" y="813"/> + </stroke> </strokes> </character> <character> <utf8>醋</utf8> <strokes> + <stroke> + <point x="98" y="211"/> + <point x="423" y="203"/> + </stroke> + <stroke> + <point x="103" y="336"/> + <point x="115" y="800"/> + </stroke> + <stroke> + <point x="98" y="349"/> + <point x="393" y="341"/> + <point x="380" y="787"/> + </stroke> + <stroke> + <point x="210" y="216"/> + <point x="210" y="425"/> + <point x="155" y="556"/> + </stroke> + <stroke> + <point x="280" y="222"/> + <point x="290" y="515"/> + <point x="373" y="515"/> + </stroke> + <stroke> + <point x="108" y="670"/> + <point x="373" y="670"/> + </stroke> + <stroke> + <point x="123" y="784"/> + <point x="373" y="782"/> + </stroke> + <stroke> + <point x="523" y="287"/> + <point x="885" y="284"/> + </stroke> + <stroke> + <point x="628" y="159"/> + <point x="628" y="422"/> + </stroke> + <stroke> + <point x="770" y="172"/> + <point x="768" y="425"/> + </stroke> + <stroke> + <point x="480" y="433"/> + <point x="930" y="427"/> + </stroke> + <stroke> + <point x="588" y="534"/> + <point x="588" y="789"/> + </stroke> + <stroke> + <point x="573" y="545"/> + <point x="818" y="545"/> + <point x="808" y="800"/> + </stroke> + <stroke> + <point x="595" y="670"/> + <point x="803" y="662"/> + </stroke> + <stroke> + <point x="580" y="793"/> + <point x="808" y="791"/> + </stroke> </strokes> </character> <character> <utf8>醉</utf8> <strokes> + <stroke> + <point x="88" y="203"/> + <point x="413" y="198"/> + </stroke> + <stroke> + <point x="100" y="343"/> + <point x="125" y="787"/> + </stroke> + <stroke> + <point x="105" y="345"/> + <point x="398" y="336"/> + <point x="375" y="787"/> + </stroke> + <stroke> + <point x="203" y="211"/> + <point x="205" y="416"/> + <point x="155" y="545"/> + </stroke> + <stroke> + <point x="273" y="211"/> + <point x="280" y="517"/> + <point x="365" y="515"/> + </stroke> + <stroke> + <point x="118" y="666"/> + <point x="373" y="666"/> + </stroke> + <stroke> + <point x="115" y="789"/> + <point x="370" y="791"/> + </stroke> + <stroke> + <point x="688" y="151"/> + <point x="690" y="267"/> + </stroke> + <stroke> + <point x="465" y="272"/> + <point x="893" y="263"/> + </stroke> + <stroke> + <point x="575" y="338"/> + <point x="480" y="543"/> + </stroke> + <stroke> + <point x="540" y="427"/> + <point x="625" y="519"/> + </stroke> + <stroke> + <point x="823" y="338"/> + <point x="733" y="517"/> + </stroke> + <stroke> + <point x="790" y="429"/> + <point x="890" y="534"/> + </stroke> + <stroke> + <point x="453" y="644"/> + <point x="930" y="636"/> + </stroke> + <stroke> + <point x="693" y="476"/> + <point x="690" y="847"/> + </stroke> </strokes> </character> <character> <utf8>醂</utf8> <strokes> + <stroke> + <point x="73" y="205"/> + <point x="405" y="198"/> + </stroke> + <stroke> + <point x="95" y="338"/> + <point x="105" y="806"/> + </stroke> + <stroke> + <point x="105" y="349"/> + <point x="383" y="347"/> + <point x="355" y="815"/> + </stroke> + <stroke> + <point x="190" y="218"/> + <point x="188" y="435"/> + <point x="140" y="573"/> + </stroke> + <stroke> + <point x="265" y="211"/> + <point x="280" y="550"/> + <point x="365" y="547"/> + </stroke> + <stroke> + <point x="103" y="672"/> + <point x="365" y="670"/> + </stroke> + <stroke> + <point x="105" y="787"/> + <point x="358" y="789"/> + </stroke> + <stroke> + <point x="433" y="336"/> + <point x="675" y="332"/> + </stroke> + <stroke> + <point x="570" y="153"/> + <point x="578" y="843"/> + </stroke> + <stroke> + <point x="565" y="369"/> + <point x="430" y="662"/> + </stroke> + <stroke> + <point x="565" y="392"/> + <point x="685" y="498"/> + </stroke> + <stroke> + <point x="690" y="323"/> + <point x="938" y="321"/> + </stroke> + <stroke> + <point x="798" y="162"/> + <point x="785" y="847"/> + </stroke> + <stroke> + <point x="793" y="349"/> + <point x="660" y="659"/> + </stroke> + <stroke> + <point x="788" y="369"/> + <point x="928" y="651"/> + </stroke> </strokes> </character> <character> <utf8>醢</utf8> <strokes> + <stroke> + <point x="93" y="196"/> + <point x="383" y="194"/> + </stroke> + <stroke> + <point x="118" y="325"/> + <point x="118" y="802"/> + </stroke> + <stroke> + <point x="120" y="343"/> + <point x="373" y="341"/> + <point x="353" y="804"/> + </stroke> + <stroke> + <point x="193" y="203"/> + <point x="188" y="422"/> + <point x="148" y="560"/> + </stroke> + <stroke> + <point x="265" y="205"/> + <point x="263" y="517"/> + <point x="345" y="526"/> + </stroke> + <stroke> + <point x="118" y="666"/> + <point x="360" y="662"/> + </stroke> + <stroke> + <point x="125" y="774"/> + <point x="355" y="776"/> + </stroke> + <stroke> + <point x="463" y="261"/> + <point x="890" y="259"/> + </stroke> + <stroke> + <point x="690" y="134"/> + <point x="575" y="351"/> + <point x="458" y="448"/> + </stroke> + <stroke> + <point x="590" y="353"/> + <point x="593" y="511"/> + </stroke> + <stroke> + <point x="575" y="360"/> + <point x="820" y="356"/> + <point x="810" y="506"/> + </stroke> + <stroke> + <point x="580" y="494"/> + <point x="795" y="494"/> + </stroke> + <stroke> + <point x="528" y="606"/> + <point x="535" y="810"/> + </stroke> + <stroke> + <point x="530" y="610"/> + <point x="855" y="603"/> + <point x="830" y="795"/> + </stroke> + <stroke> + <point x="635" y="610"/> + <point x="638" y="806"/> + </stroke> + <stroke> + <point x="730" y="612"/> + <point x="735" y="808"/> + </stroke> + <stroke> + <point x="433" y="808"/> + <point x="928" y="804"/> + </stroke> </strokes> </character> <character> <utf8>醫</utf8> <strokes> + <stroke> + <point x="135" y="181"/> + <point x="450" y="181"/> + </stroke> + <stroke> + <point x="265" y="200"/> + <point x="205" y="304"/> + </stroke> + <stroke> + <point x="240" y="263"/> + <point x="438" y="263"/> + </stroke> + <stroke> + <point x="223" y="330"/> + <point x="465" y="319"/> + </stroke> + <stroke> + <point x="325" y="263"/> + <point x="243" y="422"/> + </stroke> + <stroke> + <point x="308" y="336"/> + <point x="405" y="425"/> + </stroke> + <stroke> + <point x="143" y="170"/> + <point x="128" y="483"/> + <point x="468" y="472"/> + </stroke> + <stroke> + <point x="603" y="166"/> + <point x="605" y="246"/> + <point x="540" y="302"/> + </stroke> + <stroke> + <point x="608" y="162"/> + <point x="750" y="162"/> + <point x="758" y="274"/> + <point x="868" y="282"/> + <point x="868" y="226"/> + </stroke> + <stroke> + <point x="570" y="330"/> + <point x="793" y="319"/> + <point x="688" y="448"/> + <point x="523" y="487"/> + </stroke> + <stroke> + <point x="600" y="366"/> + <point x="760" y="442"/> + <point x="888" y="483"/> + </stroke> + <stroke> + <point x="175" y="539"/> + <point x="793" y="543"/> + </stroke> + <stroke> + <point x="188" y="614"/> + <point x="183" y="856"/> + </stroke> + <stroke> + <point x="188" y="631"/> + <point x="810" y="619"/> + <point x="800" y="853"/> + </stroke> + <stroke> + <point x="418" y="550"/> + <point x="400" y="655"/> + <point x="310" y="709"/> + </stroke> + <stroke> + <point x="565" y="547"/> + <point x="580" y="679"/> + <point x="730" y="679"/> + </stroke> + <stroke> + <point x="203" y="752"/> + <point x="788" y="752"/> + </stroke> + <stroke> + <point x="193" y="836"/> + <point x="798" y="845"/> + </stroke> </strokes> </character> <character> <utf8>醯</utf8> <strokes> + <stroke> + <point x="83" y="205"/> + <point x="400" y="196"/> + </stroke> + <stroke> + <point x="90" y="341"/> + <point x="103" y="795"/> + </stroke> + <stroke> + <point x="98" y="341"/> + <point x="400" y="338"/> + <point x="360" y="791"/> + </stroke> + <stroke> + <point x="210" y="203"/> + <point x="198" y="444"/> + <point x="145" y="565"/> + </stroke> + <stroke> + <point x="280" y="211"/> + <point x="268" y="506"/> + <point x="365" y="509"/> + </stroke> + <stroke> + <point x="120" y="664"/> + <point x="375" y="655"/> + </stroke> + <stroke> + <point x="98" y="780"/> + <point x="358" y="776"/> + </stroke> + <stroke> + <point x="690" y="127"/> + <point x="688" y="233"/> + </stroke> + <stroke> + <point x="475" y="235"/> + <point x="900" y="239"/> + </stroke> + <stroke> + <point x="665" y="250"/> + <point x="563" y="362"/> + <point x="800" y="332"/> + </stroke> + <stroke> + <point x="783" y="289"/> + <point x="845" y="384"/> + </stroke> + <stroke> + <point x="550" y="414"/> + <point x="553" y="519"/> + <point x="480" y="584"/> + </stroke> + <stroke> + <point x="665" y="420"/> + <point x="660" y="575"/> + </stroke> + <stroke> + <point x="790" y="401"/> + <point x="798" y="556"/> + <point x="913" y="554"/> + <point x="905" y="487"/> + </stroke> + <stroke> + <point x="545" y="642"/> + <point x="545" y="810"/> + </stroke> + <stroke> + <point x="538" y="647"/> + <point x="840" y="649"/> + <point x="828" y="806"/> + </stroke> + <stroke> + <point x="633" y="651"/> + <point x="638" y="806"/> + </stroke> + <stroke> + <point x="740" y="647"/> + <point x="738" y="802"/> + </stroke> + <stroke> + <point x="433" y="797"/> + <point x="923" y="802"/> + </stroke> </strokes> </character> <character> <utf8>醪</utf8> <strokes> + <stroke> + <point x="85" y="209"/> + <point x="363" y="209"/> + </stroke> + <stroke> + <point x="110" y="336"/> + <point x="125" y="804"/> + </stroke> + <stroke> + <point x="105" y="341"/> + <point x="370" y="345"/> + <point x="343" y="800"/> + </stroke> + <stroke> + <point x="190" y="224"/> + <point x="198" y="420"/> + <point x="145" y="575"/> + </stroke> + <stroke> + <point x="273" y="218"/> + <point x="273" y="532"/> + <point x="343" y="534"/> + </stroke> + <stroke> + <point x="110" y="659"/> + <point x="345" y="662"/> + </stroke> + <stroke> + <point x="130" y="784"/> + <point x="348" y="784"/> + </stroke> + <stroke> + <point x="433" y="190"/> + <point x="628" y="190"/> + <point x="625" y="403"/> + </stroke> + <stroke> + <point x="570" y="231"/> + <point x="463" y="304"/> + </stroke> + <stroke> + <point x="590" y="345"/> + <point x="473" y="435"/> + </stroke> + <stroke> + <point x="653" y="190"/> + <point x="878" y="190"/> + <point x="875" y="425"/> + </stroke> + <stroke> + <point x="805" y="228"/> + <point x="678" y="313"/> + </stroke> + <stroke> + <point x="830" y="323"/> + <point x="735" y="405"/> + </stroke> + <stroke> + <point x="673" y="427"/> + <point x="463" y="582"/> + </stroke> + <stroke> + <point x="663" y="438"/> + <point x="903" y="565"/> + </stroke> + <stroke> + <point x="705" y="547"/> + <point x="538" y="642"/> + </stroke> + <stroke> + <point x="750" y="636"/> + <point x="575" y="737"/> + </stroke> + <stroke> + <point x="785" y="709"/> + <point x="573" y="834"/> + </stroke> </strokes> </character> <character> <utf8>醵</utf8> <strokes> + <stroke> + <point x="90" y="200"/> + <point x="388" y="198"/> + </stroke> + <stroke> + <point x="113" y="334"/> + <point x="128" y="793"/> + </stroke> + <stroke> + <point x="118" y="351"/> + <point x="380" y="349"/> + <point x="350" y="782"/> + </stroke> + <stroke> + <point x="200" y="213"/> + <point x="203" y="397"/> + <point x="135" y="575"/> + </stroke> + <stroke> + <point x="280" y="216"/> + <point x="275" y="517"/> + <point x="343" y="526"/> + </stroke> + <stroke> + <point x="130" y="668"/> + <point x="355" y="670"/> + </stroke> + <stroke> + <point x="128" y="784"/> + <point x="348" y="784"/> + </stroke> + <stroke> + <point x="690" y="213"/> + <point x="860" y="211"/> + </stroke> + <stroke> + <point x="688" y="136"/> + <point x="685" y="280"/> + </stroke> + <stroke> + <point x="508" y="287"/> + <point x="910" y="274"/> + <point x="848" y="334"/> + </stroke> + <stroke> + <point x="515" y="278"/> + <point x="505" y="591"/> + <point x="440" y="828"/> + </stroke> + <stroke> + <point x="558" y="362"/> + <point x="813" y="334"/> + </stroke> + <stroke> + <point x="670" y="282"/> + <point x="663" y="435"/> + <point x="875" y="440"/> + <point x="883" y="371"/> + </stroke> + <stroke> + <point x="535" y="506"/> + <point x="950" y="504"/> + </stroke> + <stroke> + <point x="748" y="506"/> + <point x="588" y="614"/> + </stroke> + <stroke> + <point x="683" y="556"/> + <point x="760" y="696"/> + <point x="745" y="808"/> + <point x="660" y="797"/> + </stroke> + <stroke> + <point x="698" y="623"/> + <point x="585" y="698"/> + </stroke> + <stroke> + <point x="740" y="679"/> + <point x="588" y="756"/> + </stroke> + <stroke> + <point x="933" y="565"/> + <point x="830" y="644"/> + </stroke> + <stroke> + <point x="748" y="530"/> + <point x="820" y="668"/> + <point x="950" y="761"/> + </stroke> </strokes> </character> <character> <utf8>醴</utf8> <strokes> + <stroke> + <point x="88" y="209"/> + <point x="360" y="209"/> + </stroke> + <stroke> + <point x="105" y="338"/> + <point x="123" y="808"/> + </stroke> + <stroke> + <point x="95" y="349"/> + <point x="353" y="343"/> + <point x="343" y="808"/> + </stroke> + <stroke> + <point x="183" y="205"/> + <point x="180" y="422"/> + <point x="158" y="552"/> + </stroke> + <stroke> + <point x="268" y="220"/> + <point x="263" y="526"/> + <point x="343" y="543"/> + </stroke> + <stroke> + <point x="125" y="664"/> + <point x="345" y="666"/> + </stroke> + <stroke> + <point x="133" y="802"/> + <point x="363" y="791"/> + </stroke> + <stroke> + <point x="508" y="211"/> + <point x="523" y="401"/> + </stroke> + <stroke> + <point x="515" y="231"/> + <point x="853" y="228"/> + <point x="813" y="403"/> + </stroke> + <stroke> + <point x="640" y="147"/> + <point x="640" y="386"/> + </stroke> + <stroke> + <point x="740" y="147"/> + <point x="740" y="394"/> + </stroke> + <stroke> + <point x="508" y="321"/> + <point x="830" y="313"/> + </stroke> + <stroke> + <point x="533" y="403"/> + <point x="845" y="397"/> + </stroke> + <stroke> + <point x="450" y="498"/> + <point x="918" y="485"/> + </stroke> + <stroke> + <point x="525" y="541"/> + <point x="550" y="659"/> + </stroke> + <stroke> + <point x="538" y="552"/> + <point x="833" y="537"/> + <point x="798" y="670"/> + </stroke> + <stroke> + <point x="548" y="668"/> + <point x="795" y="670"/> + </stroke> + <stroke> + <point x="588" y="700"/> + <point x="645" y="797"/> + </stroke> + <stroke> + <point x="800" y="696"/> + <point x="740" y="797"/> + </stroke> + <stroke> + <point x="463" y="810"/> + <point x="918" y="802"/> + </stroke> </strokes> </character> <character> <utf8>醺</utf8> <strokes> + <stroke> + <point x="88" y="203"/> + <point x="380" y="192"/> + </stroke> + <stroke> + <point x="93" y="334"/> + <point x="108" y="808"/> + </stroke> + <stroke> + <point x="100" y="345"/> + <point x="383" y="341"/> + <point x="363" y="830"/> + </stroke> + <stroke> + <point x="195" y="203"/> + <point x="198" y="416"/> + <point x="143" y="580"/> + </stroke> + <stroke> + <point x="275" y="209"/> + <point x="273" y="532"/> + <point x="358" y="537"/> + </stroke> + <stroke> + <point x="115" y="675"/> + <point x="358" y="670"/> + </stroke> + <stroke> + <point x="113" y="797"/> + <point x="370" y="797"/> + </stroke> + <stroke> + <point x="835" y="129"/> + <point x="525" y="218"/> + </stroke> + <stroke> + <point x="480" y="274"/> + <point x="895" y="259"/> + </stroke> + <stroke> + <point x="535" y="338"/> + <point x="543" y="526"/> + </stroke> + <stroke> + <point x="538" y="353"/> + <point x="860" y="345"/> + <point x="848" y="509"/> + </stroke> + <stroke> + <point x="600" y="394"/> + <point x="645" y="459"/> + </stroke> + <stroke> + <point x="803" y="397"/> + <point x="760" y="463"/> + </stroke> + <stroke> + <point x="553" y="511"/> + <point x="863" y="500"/> + </stroke> + <stroke> + <point x="695" y="170"/> + <point x="695" y="672"/> + </stroke> + <stroke> + <point x="535" y="584"/> + <point x="845" y="588"/> + </stroke> + <stroke> + <point x="473" y="664"/> + <point x="955" y="670"/> + </stroke> + <stroke> + <point x="525" y="733"/> + <point x="493" y="838"/> + </stroke> + <stroke> + <point x="615" y="741"/> + <point x="653" y="821"/> + </stroke> + <stroke> + <point x="733" y="739"/> + <point x="765" y="817"/> + </stroke> + <stroke> + <point x="860" y="731"/> + <point x="928" y="804"/> + </stroke> </strokes> </character> <character> <utf8>釀</utf8> <strokes> + <stroke> + <point x="88" y="200"/> + <point x="373" y="196"/> + </stroke> + <stroke> + <point x="105" y="345"/> + <point x="115" y="795"/> + </stroke> + <stroke> + <point x="113" y="358"/> + <point x="368" y="351"/> + <point x="365" y="782"/> + </stroke> + <stroke> + <point x="203" y="216"/> + <point x="203" y="412"/> + <point x="148" y="565"/> + </stroke> + <stroke> + <point x="265" y="213"/> + <point x="268" y="537"/> + <point x="345" y="539"/> + </stroke> + <stroke> + <point x="115" y="666"/> + <point x="360" y="666"/> + </stroke> + <stroke> + <point x="123" y="784"/> + <point x="368" y="778"/> + </stroke> + <stroke> + <point x="688" y="131"/> + <point x="693" y="228"/> + </stroke> + <stroke> + <point x="480" y="222"/> + <point x="898" y="222"/> + </stroke> + <stroke> + <point x="510" y="284"/> + <point x="525" y="381"/> + </stroke> + <stroke> + <point x="520" y="287"/> + <point x="635" y="284"/> + <point x="635" y="377"/> + </stroke> + <stroke> + <point x="538" y="379"/> + <point x="643" y="377"/> + </stroke> + <stroke> + <point x="743" y="291"/> + <point x="750" y="377"/> + </stroke> + <stroke> + <point x="738" y="289"/> + <point x="893" y="291"/> + <point x="875" y="366"/> + </stroke> + <stroke> + <point x="740" y="369"/> + <point x="858" y="369"/> + </stroke> + <stroke> + <point x="503" y="474"/> + <point x="865" y="472"/> + </stroke> + <stroke> + <point x="523" y="556"/> + <point x="865" y="552"/> + </stroke> + <stroke> + <point x="603" y="429"/> + <point x="608" y="608"/> + </stroke> + <stroke> + <point x="765" y="433"/> + <point x="765" y="612"/> + </stroke> + <stroke> + <point x="455" y="623"/> + <point x="915" y="612"/> + </stroke> + <stroke> + <point x="660" y="623"/> + <point x="480" y="731"/> + </stroke> + <stroke> + <point x="580" y="670"/> + <point x="580" y="808"/> + <point x="665" y="795"/> + </stroke> + <stroke> + <point x="873" y="672"/> + <point x="765" y="739"/> + </stroke> + <stroke> + <point x="685" y="625"/> + <point x="745" y="739"/> + <point x="930" y="819"/> + </stroke> </strokes> </character> <character> <utf8>釁</utf8> <strokes> + <stroke> + <point x="405" y="142"/> + <point x="403" y="347"/> + </stroke> + <stroke> + <point x="393" y="144"/> + <point x="608" y="140"/> + <point x="603" y="362"/> + </stroke> + <stroke> + <point x="415" y="203"/> + <point x="550" y="198"/> + </stroke> + <stroke> + <point x="423" y="256"/> + <point x="515" y="256"/> + <point x="515" y="310"/> + </stroke> + <stroke> + <point x="415" y="317"/> + <point x="523" y="315"/> + </stroke> + <stroke> + <point x="338" y="123"/> + <point x="195" y="190"/> + </stroke> + <stroke> + <point x="208" y="179"/> + <point x="208" y="345"/> + </stroke> + <stroke> + <point x="215" y="228"/> + <point x="328" y="226"/> + </stroke> + <stroke> + <point x="215" y="295"/> + <point x="323" y="293"/> + </stroke> + <stroke> + <point x="653" y="157"/> + <point x="798" y="155"/> + <point x="790" y="345"/> + </stroke> + <stroke> + <point x="665" y="228"/> + <point x="773" y="226"/> + </stroke> + <stroke> + <point x="675" y="306"/> + <point x="778" y="304"/> + </stroke> + <stroke> + <point x="120" y="356"/> + <point x="108" y="468"/> + </stroke> + <stroke> + <point x="125" y="360"/> + <point x="910" y="347"/> + <point x="848" y="440"/> + </stroke> + <stroke> + <point x="230" y="409"/> + <point x="748" y="405"/> + </stroke> + <stroke> + <point x="240" y="457"/> + <point x="233" y="616"/> + </stroke> + <stroke> + <point x="230" y="463"/> + <point x="753" y="459"/> + <point x="750" y="612"/> + </stroke> + <stroke> + <point x="428" y="414"/> + <point x="418" y="478"/> + <point x="323" y="526"/> + </stroke> + <stroke> + <point x="558" y="418"/> + <point x="565" y="517"/> + <point x="700" y="517"/> + <point x="715" y="483"/> + </stroke> + <stroke> + <point x="248" y="552"/> + <point x="745" y="550"/> + </stroke> + <stroke> + <point x="253" y="606"/> + <point x="743" y="608"/> + </stroke> + <stroke> + <point x="320" y="651"/> + <point x="195" y="776"/> + </stroke> + <stroke> + <point x="678" y="647"/> + <point x="788" y="746"/> + </stroke> + <stroke> + <point x="310" y="726"/> + <point x="705" y="731"/> + <point x="610" y="912"/> + <point x="490" y="888"/> + </stroke> + <stroke> + <point x="448" y="724"/> + <point x="395" y="834"/> + <point x="205" y="907"/> + </stroke> </strokes> </character> <character> <utf8>釉</utf8> <strokes> + <stroke> + <point x="388" y="157"/> + <point x="100" y="254"/> + </stroke> + <stroke> + <point x="128" y="319"/> + <point x="168" y="418"/> + </stroke> + <stroke> + <point x="408" y="282"/> + <point x="315" y="444"/> + </stroke> + <stroke> + <point x="88" y="485"/> + <point x="435" y="478"/> + </stroke> + <stroke> + <point x="248" y="211"/> + <point x="258" y="862"/> + </stroke> + <stroke> + <point x="260" y="506"/> + <point x="85" y="767"/> + </stroke> + <stroke> + <point x="250" y="524"/> + <point x="388" y="651"/> + </stroke> + <stroke> + <point x="503" y="328"/> + <point x="518" y="780"/> + </stroke> + <stroke> + <point x="498" y="341"/> + <point x="883" y="317"/> + <point x="860" y="795"/> + </stroke> + <stroke> + <point x="675" y="149"/> + <point x="695" y="772"/> + </stroke> + <stroke> + <point x="510" y="556"/> + <point x="865" y="558"/> + </stroke> + <stroke> + <point x="520" y="780"/> + <point x="843" y="774"/> + </stroke> </strokes> </character> <character> <utf8>釋</utf8> <strokes> + <stroke> + <point x="328" y="147"/> + <point x="108" y="237"/> + </stroke> + <stroke> + <point x="105" y="315"/> + <point x="163" y="422"/> + </stroke> + <stroke> + <point x="345" y="276"/> + <point x="278" y="416"/> + </stroke> + <stroke> + <point x="53" y="487"/> + <point x="383" y="474"/> + </stroke> + <stroke> + <point x="235" y="198"/> + <point x="225" y="841"/> + </stroke> + <stroke> + <point x="230" y="511"/> + <point x="80" y="733"/> + </stroke> + <stroke> + <point x="235" y="519"/> + <point x="355" y="657"/> + </stroke> + <stroke> + <point x="480" y="190"/> + <point x="480" y="317"/> + </stroke> + <stroke> + <point x="473" y="203"/> + <point x="855" y="190"/> + <point x="840" y="332"/> + </stroke> + <stroke> + <point x="590" y="192"/> + <point x="608" y="319"/> + </stroke> + <stroke> + <point x="735" y="198"/> + <point x="725" y="302"/> + </stroke> + <stroke> + <point x="485" y="319"/> + <point x="828" y="313"/> + </stroke> + <stroke> + <point x="490" y="397"/> + <point x="848" y="394"/> + </stroke> + <stroke> + <point x="660" y="317"/> + <point x="670" y="494"/> + </stroke> + <stroke> + <point x="413" y="502"/> + <point x="900" y="494"/> + </stroke> + <stroke> + <point x="563" y="504"/> + <point x="583" y="593"/> + </stroke> + <stroke> + <point x="743" y="511"/> + <point x="718" y="614"/> + </stroke> + <stroke> + <point x="440" y="621"/> + <point x="880" y="603"/> + </stroke> + <stroke> + <point x="463" y="722"/> + <point x="880" y="711"/> + </stroke> + <stroke> + <point x="660" y="612"/> + <point x="668" y="845"/> + </stroke> </strokes> </character> <character> <utf8>釐</utf8> <strokes> + <stroke> + <point x="125" y="213"/> + <point x="440" y="205"/> + </stroke> + <stroke> + <point x="98" y="297"/> + <point x="493" y="282"/> + </stroke> + <stroke> + <point x="285" y="116"/> + <point x="295" y="438"/> + </stroke> + <stroke> + <point x="273" y="310"/> + <point x="113" y="429"/> + </stroke> + <stroke> + <point x="305" y="310"/> + <point x="443" y="388"/> + </stroke> + <stroke> + <point x="630" y="147"/> + <point x="540" y="297"/> + </stroke> + <stroke> + <point x="580" y="233"/> + <point x="913" y="218"/> + </stroke> + <stroke> + <point x="815" y="231"/> + <point x="708" y="356"/> + <point x="545" y="444"/> + </stroke> + <stroke> + <point x="615" y="235"/> + <point x="708" y="341"/> + <point x="873" y="418"/> + </stroke> + <stroke> + <point x="233" y="478"/> + <point x="848" y="463"/> + </stroke> + <stroke> + <point x="210" y="470"/> + <point x="205" y="685"/> + <point x="95" y="858"/> + </stroke> + <stroke> + <point x="330" y="526"/> + <point x="343" y="700"/> + </stroke> + <stroke> + <point x="335" y="526"/> + <point x="753" y="528"/> + <point x="720" y="688"/> + </stroke> + <stroke> + <point x="315" y="610"/> + <point x="740" y="603"/> + </stroke> + <stroke> + <point x="340" y="688"/> + <point x="720" y="681"/> + </stroke> + <stroke> + <point x="535" y="532"/> + <point x="543" y="828"/> + </stroke> + <stroke> + <point x="323" y="756"/> + <point x="705" y="750"/> + </stroke> + <stroke> + <point x="248" y="849"/> + <point x="838" y="832"/> + </stroke> </strokes> </character> <character> <utf8>釖</utf8> <strokes> + <stroke> + <point x="275" y="166"/> + <point x="120" y="373"/> + </stroke> + <stroke> + <point x="275" y="170"/> + <point x="453" y="313"/> + </stroke> + <stroke> + <point x="163" y="364"/> + <point x="400" y="362"/> + </stroke> + <stroke> + <point x="105" y="496"/> + <point x="425" y="491"/> + </stroke> + <stroke> + <point x="268" y="366"/> + <point x="270" y="718"/> + </stroke> + <stroke> + <point x="135" y="588"/> + <point x="195" y="698"/> + </stroke> + <stroke> + <point x="403" y="543"/> + <point x="315" y="690"/> + </stroke> + <stroke> + <point x="95" y="780"/> + <point x="418" y="709"/> + </stroke> + <stroke> + <point x="475" y="239"/> + <point x="883" y="233"/> + <point x="865" y="627"/> + <point x="783" y="834"/> + <point x="673" y="795"/> + </stroke> + <stroke> + <point x="638" y="259"/> + <point x="600" y="584"/> + <point x="458" y="806"/> + </stroke> </strokes> </character> <character> <utf8>釟</utf8> <strokes> + <stroke> + <point x="265" y="168"/> + <point x="65" y="409"/> + </stroke> + <stroke> + <point x="253" y="164"/> + <point x="453" y="336"/> + </stroke> + <stroke> + <point x="150" y="366"/> + <point x="363" y="360"/> + </stroke> + <stroke> + <point x="118" y="500"/> + <point x="385" y="489"/> + </stroke> + <stroke> + <point x="250" y="366"/> + <point x="270" y="750"/> + </stroke> + <stroke> + <point x="103" y="606"/> + <point x="150" y="690"/> + </stroke> + <stroke> + <point x="378" y="556"/> + <point x="308" y="677"/> + </stroke> + <stroke> + <point x="78" y="795"/> + <point x="390" y="703"/> + </stroke> + <stroke> + <point x="563" y="392"/> + <point x="408" y="793"/> + </stroke> + <stroke> + <point x="715" y="282"/> + <point x="900" y="789"/> + </stroke> </strokes> </character> <character> <utf8>釡</utf8> <strokes> + <stroke> + <point x="373" y="198"/> + <point x="195" y="341"/> + </stroke> + <stroke> + <point x="620" y="185"/> + <point x="785" y="274"/> + </stroke> + <stroke> + <point x="500" y="259"/> + <point x="125" y="545"/> + </stroke> + <stroke> + <point x="488" y="269"/> + <point x="863" y="506"/> + </stroke> + <stroke> + <point x="313" y="487"/> + <point x="615" y="487"/> + </stroke> + <stroke> + <point x="220" y="614"/> + <point x="750" y="610"/> + </stroke> + <stroke> + <point x="480" y="494"/> + <point x="490" y="810"/> + </stroke> + <stroke> + <point x="280" y="675"/> + <point x="358" y="765"/> + </stroke> + <stroke> + <point x="713" y="666"/> + <point x="593" y="787"/> + </stroke> + <stroke> + <point x="135" y="821"/> + <point x="813" y="810"/> + </stroke> </strokes> </character> <character> <utf8>釛</utf8> <strokes> + <stroke> + <point x="268" y="179"/> + <point x="95" y="384"/> + </stroke> + <stroke> + <point x="273" y="179"/> + <point x="453" y="321"/> + </stroke> + <stroke> + <point x="138" y="362"/> + <point x="388" y="356"/> + </stroke> + <stroke> + <point x="123" y="489"/> + <point x="415" y="481"/> + </stroke> + <stroke> + <point x="270" y="369"/> + <point x="280" y="739"/> + </stroke> + <stroke> + <point x="143" y="586"/> + <point x="215" y="709"/> + </stroke> + <stroke> + <point x="435" y="550"/> + <point x="333" y="688"/> + </stroke> + <stroke> + <point x="100" y="791"/> + <point x="483" y="711"/> + </stroke> + <stroke> + <point x="485" y="360"/> + <point x="868" y="360"/> + <point x="848" y="657"/> + <point x="790" y="836"/> + <point x="683" y="806"/> + </stroke> + <stroke> + <point x="660" y="196"/> + <point x="635" y="528"/> + <point x="463" y="800"/> + </stroke> </strokes> </character> <character> <utf8>釼</utf8> <strokes> + <stroke> + <point x="283" y="175"/> + <point x="65" y="414"/> + </stroke> + <stroke> + <point x="265" y="166"/> + <point x="450" y="317"/> + </stroke> + <stroke> + <point x="133" y="366"/> + <point x="343" y="356"/> + </stroke> + <stroke> + <point x="118" y="494"/> + <point x="398" y="474"/> + </stroke> + <stroke> + <point x="248" y="371"/> + <point x="248" y="739"/> + </stroke> + <stroke> + <point x="110" y="575"/> + <point x="160" y="692"/> + </stroke> + <stroke> + <point x="395" y="547"/> + <point x="320" y="694"/> + </stroke> + <stroke> + <point x="98" y="789"/> + <point x="413" y="728"/> + </stroke> + <stroke> + <point x="465" y="235"/> + <point x="840" y="241"/> + <point x="830" y="556"/> + <point x="760" y="815"/> + <point x="680" y="795"/> + </stroke> + <stroke> + <point x="638" y="248"/> + <point x="595" y="552"/> + <point x="453" y="791"/> + </stroke> + <stroke> + <point x="523" y="360"/> + <point x="668" y="543"/> + <point x="910" y="681"/> + </stroke> </strokes> </character> <character> <utf8>釵</utf8> <strokes> + <stroke> + <point x="268" y="183"/> + <point x="75" y="409"/> + </stroke> + <stroke> + <point x="258" y="183"/> + <point x="418" y="330"/> + </stroke> + <stroke> + <point x="143" y="373"/> + <point x="388" y="366"/> + </stroke> + <stroke> + <point x="100" y="494"/> + <point x="390" y="485"/> + </stroke> + <stroke> + <point x="245" y="381"/> + <point x="258" y="748"/> + </stroke> + <stroke> + <point x="125" y="563"/> + <point x="173" y="716"/> + </stroke> + <stroke> + <point x="388" y="552"/> + <point x="295" y="700"/> + </stroke> + <stroke> + <point x="103" y="797"/> + <point x="388" y="726"/> + </stroke> + <stroke> + <point x="485" y="241"/> + <point x="863" y="231"/> + <point x="778" y="545"/> + <point x="463" y="804"/> + </stroke> + <stroke> + <point x="533" y="263"/> + <point x="640" y="569"/> + <point x="920" y="800"/> + </stroke> + <stroke> + <point x="645" y="313"/> + <point x="720" y="448"/> + </stroke> </strokes> </character> <character> <utf8>釶</utf8> <strokes> + <stroke> + <point x="255" y="181"/> + <point x="53" y="405"/> + </stroke> + <stroke> + <point x="235" y="188"/> + <point x="423" y="360"/> + </stroke> + <stroke> + <point x="125" y="360"/> + <point x="325" y="362"/> + </stroke> + <stroke> + <point x="108" y="494"/> + <point x="348" y="489"/> + </stroke> + <stroke> + <point x="215" y="369"/> + <point x="225" y="765"/> + </stroke> + <stroke> + <point x="103" y="603"/> + <point x="145" y="705"/> + </stroke> + <stroke> + <point x="380" y="543"/> + <point x="315" y="670"/> + </stroke> + <stroke> + <point x="73" y="784"/> + <point x="415" y="735"/> + </stroke> + <stroke> + <point x="418" y="453"/> + <point x="858" y="356"/> + <point x="870" y="621"/> + <point x="778" y="599"/> + </stroke> + <stroke> + <point x="703" y="216"/> + <point x="693" y="584"/> + </stroke> + <stroke> + <point x="533" y="272"/> + <point x="530" y="791"/> + <point x="888" y="802"/> + <point x="885" y="700"/> + </stroke> </strokes> </character> <character> <utf8>鈞</utf8> <strokes> + <stroke> + <point x="260" y="179"/> + <point x="90" y="399"/> + </stroke> + <stroke> + <point x="250" y="175"/> + <point x="438" y="306"/> + </stroke> + <stroke> + <point x="145" y="356"/> + <point x="370" y="343"/> + </stroke> + <stroke> + <point x="115" y="494"/> + <point x="393" y="483"/> + </stroke> + <stroke> + <point x="260" y="356"/> + <point x="263" y="748"/> + </stroke> + <stroke> + <point x="128" y="588"/> + <point x="178" y="709"/> + </stroke> + <stroke> + <point x="395" y="558"/> + <point x="320" y="685"/> + </stroke> + <stroke> + <point x="93" y="787"/> + <point x="400" y="722"/> + </stroke> + <stroke> + <point x="608" y="188"/> + <point x="453" y="468"/> + </stroke> + <stroke> + <point x="525" y="325"/> + <point x="863" y="310"/> + <point x="875" y="649"/> + <point x="830" y="815"/> + <point x="713" y="791"/> + </stroke> + <stroke> + <point x="573" y="442"/> + <point x="685" y="476"/> + </stroke> + <stroke> + <point x="535" y="690"/> + <point x="785" y="573"/> + </stroke> </strokes> </character> <character> <utf8>釿</utf8> <strokes> + <stroke> + <point x="268" y="177"/> + <point x="80" y="399"/> + </stroke> + <stroke> + <point x="270" y="168"/> + <point x="420" y="330"/> + </stroke> + <stroke> + <point x="125" y="366"/> + <point x="355" y="360"/> + </stroke> + <stroke> + <point x="120" y="485"/> + <point x="378" y="483"/> + </stroke> + <stroke> + <point x="248" y="360"/> + <point x="260" y="748"/> + </stroke> + <stroke> + <point x="125" y="588"/> + <point x="173" y="700"/> + </stroke> + <stroke> + <point x="413" y="565"/> + <point x="325" y="700"/> + </stroke> + <stroke> + <point x="85" y="789"/> + <point x="423" y="713"/> + </stroke> + <stroke> + <point x="818" y="179"/> + <point x="530" y="282"/> + </stroke> + <stroke> + <point x="528" y="293"/> + <point x="533" y="524"/> + <point x="403" y="806"/> + </stroke> + <stroke> + <point x="543" y="420"/> + <point x="908" y="418"/> + </stroke> + <stroke> + <point x="738" y="420"/> + <point x="743" y="823"/> + </stroke> </strokes> </character> <character> <utf8>鈔</utf8> <strokes> + <stroke> + <point x="273" y="168"/> + <point x="70" y="409"/> + </stroke> + <stroke> + <point x="253" y="170"/> + <point x="455" y="332"/> + </stroke> + <stroke> + <point x="135" y="353"/> + <point x="348" y="353"/> + </stroke> + <stroke> + <point x="115" y="491"/> + <point x="390" y="491"/> + </stroke> + <stroke> + <point x="255" y="358"/> + <point x="270" y="741"/> + </stroke> + <stroke> + <point x="150" y="573"/> + <point x="193" y="707"/> + </stroke> + <stroke> + <point x="420" y="547"/> + <point x="335" y="692"/> + </stroke> + <stroke> + <point x="85" y="787"/> + <point x="428" y="705"/> + </stroke> + <stroke> + <point x="703" y="140"/> + <point x="688" y="610"/> + <point x="598" y="575"/> + </stroke> + <stroke> + <point x="563" y="306"/> + <point x="490" y="504"/> + </stroke> + <stroke> + <point x="820" y="310"/> + <point x="960" y="519"/> + </stroke> + <stroke> + <point x="903" y="455"/> + <point x="735" y="666"/> + <point x="463" y="813"/> + </stroke> </strokes> </character> <character> <utf8>鈬</utf8> <strokes> + <stroke> + <point x="285" y="194"/> + <point x="58" y="416"/> + </stroke> + <stroke> + <point x="280" y="190"/> + <point x="440" y="338"/> + </stroke> + <stroke> + <point x="148" y="356"/> + <point x="358" y="353"/> + </stroke> + <stroke> + <point x="125" y="487"/> + <point x="353" y="485"/> + </stroke> + <stroke> + <point x="250" y="369"/> + <point x="253" y="748"/> + </stroke> + <stroke> + <point x="113" y="593"/> + <point x="170" y="683"/> + </stroke> + <stroke> + <point x="388" y="565"/> + <point x="323" y="672"/> + </stroke> + <stroke> + <point x="93" y="769"/> + <point x="383" y="705"/> + </stroke> + <stroke> + <point x="513" y="228"/> + <point x="843" y="228"/> + <point x="830" y="461"/> + </stroke> + <stroke> + <point x="530" y="457"/> + <point x="820" y="453"/> + </stroke> + <stroke> + <point x="538" y="224"/> + <point x="538" y="524"/> + <point x="435" y="797"/> + </stroke> + <stroke> + <point x="673" y="459"/> + <point x="748" y="659"/> + <point x="913" y="782"/> + </stroke> </strokes> </character> <character> <utf8>鈕</utf8> <strokes> + <stroke> + <point x="290" y="190"/> + <point x="88" y="414"/> + </stroke> + <stroke> + <point x="275" y="188"/> + <point x="400" y="334"/> + </stroke> + <stroke> + <point x="150" y="353"/> + <point x="363" y="351"/> + </stroke> + <stroke> + <point x="123" y="489"/> + <point x="360" y="483"/> + </stroke> + <stroke> + <point x="253" y="371"/> + <point x="273" y="739"/> + </stroke> + <stroke> + <point x="155" y="601"/> + <point x="200" y="703"/> + </stroke> + <stroke> + <point x="393" y="563"/> + <point x="328" y="698"/> + </stroke> + <stroke> + <point x="88" y="791"/> + <point x="428" y="716"/> + </stroke> + <stroke> + <point x="435" y="211"/> + <point x="800" y="209"/> + <point x="768" y="795"/> + </stroke> + <stroke> + <point x="620" y="218"/> + <point x="543" y="800"/> + </stroke> + <stroke> + <point x="440" y="494"/> + <point x="910" y="496"/> + </stroke> + <stroke> + <point x="380" y="817"/> + <point x="908" y="800"/> + </stroke> </strokes> </character> <character> <utf8>鈑</utf8> <strokes> + <stroke> + <point x="270" y="181"/> + <point x="60" y="433"/> + </stroke> + <stroke> + <point x="255" y="181"/> + <point x="458" y="330"/> + </stroke> + <stroke> + <point x="155" y="356"/> + <point x="370" y="351"/> + </stroke> + <stroke> + <point x="113" y="491"/> + <point x="395" y="489"/> + </stroke> + <stroke> + <point x="248" y="362"/> + <point x="270" y="746"/> + ... [truncated message content] |
From: <ma...@us...> - 2007-06-08 15:13:16
|
Revision: 1349 http://tomoe.svn.sourceforge.net/tomoe/?rev=1349&view=rev Author: makeinu Date: 2007-06-08 08:08:27 -0700 (Fri, 08 Jun 2007) Log Message: ----------- 2900/3390 has benn finished. Modified Paths: -------------- tools/stroke-editor/data/ja/jis-x-0208-level2.xml Modified: tools/stroke-editor/data/ja/jis-x-0208-level2.xml =================================================================== --- tools/stroke-editor/data/ja/jis-x-0208-level2.xml 2007-06-08 12:52:05 UTC (rev 1348) +++ tools/stroke-editor/data/ja/jis-x-0208-level2.xml 2007-06-08 15:08:27 UTC (rev 1349) @@ -147605,251 +147605,3153 @@ <character> <utf8>蠖</utf8> <strokes> + <stroke> + <point x="98" y="319"/> + <point x="118" y="532"/> + </stroke> + <stroke> + <point x="105" y="319"/> + <point x="340" y="317"/> + <point x="298" y="530"/> + </stroke> + <stroke> + <point x="123" y="524"/> + <point x="310" y="519"/> + </stroke> + <stroke> + <point x="218" y="153"/> + <point x="215" y="739"/> + </stroke> + <stroke> + <point x="70" y="772"/> + <point x="338" y="726"/> + </stroke> + <stroke> + <point x="275" y="640"/> + <point x="368" y="780"/> + </stroke> + <stroke> + <point x="425" y="209"/> + <point x="918" y="216"/> + </stroke> + <stroke> + <point x="553" y="134"/> + <point x="573" y="265"/> + </stroke> + <stroke> + <point x="768" y="134"/> + <point x="740" y="259"/> + </stroke> + <stroke> + <point x="550" y="282"/> + <point x="410" y="438"/> + </stroke> + <stroke> + <point x="500" y="341"/> + <point x="493" y="578"/> + </stroke> + <stroke> + <point x="723" y="282"/> + <point x="675" y="349"/> + </stroke> + <stroke> + <point x="503" y="347"/> + <point x="890" y="334"/> + </stroke> + <stroke> + <point x="508" y="427"/> + <point x="838" y="414"/> + </stroke> + <stroke> + <point x="508" y="500"/> + <point x="843" y="496"/> + </stroke> + <stroke> + <point x="678" y="349"/> + <point x="683" y="578"/> + </stroke> + <stroke> + <point x="490" y="580"/> + <point x="905" y="569"/> + </stroke> + <stroke> + <point x="493" y="655"/> + <point x="818" y="642"/> + <point x="705" y="741"/> + <point x="498" y="847"/> + </stroke> + <stroke> + <point x="530" y="670"/> + <point x="708" y="784"/> + <point x="905" y="843"/> + </stroke> </strokes> </character> <character> <utf8>蠕</utf8> <strokes> + <stroke> + <point x="95" y="323"/> + <point x="115" y="541"/> + </stroke> + <stroke> + <point x="90" y="336"/> + <point x="348" y="332"/> + <point x="305" y="532"/> + </stroke> + <stroke> + <point x="110" y="530"/> + <point x="298" y="526"/> + </stroke> + <stroke> + <point x="210" y="170"/> + <point x="215" y="761"/> + </stroke> + <stroke> + <point x="73" y="787"/> + <point x="345" y="746"/> + </stroke> + <stroke> + <point x="305" y="655"/> + <point x="390" y="823"/> + </stroke> + <stroke> + <point x="505" y="196"/> + <point x="860" y="194"/> + </stroke> + <stroke> + <point x="468" y="276"/> + <point x="450" y="416"/> + </stroke> + <stroke> + <point x="465" y="295"/> + <point x="918" y="272"/> + <point x="878" y="416"/> + </stroke> + <stroke> + <point x="685" y="218"/> + <point x="678" y="425"/> + </stroke> + <stroke> + <point x="508" y="338"/> + <point x="600" y="360"/> + </stroke> + <stroke> + <point x="523" y="384"/> + <point x="580" y="399"/> + </stroke> + <stroke> + <point x="768" y="336"/> + <point x="835" y="362"/> + </stroke> + <stroke> + <point x="753" y="394"/> + <point x="823" y="409"/> + </stroke> + <stroke> + <point x="468" y="517"/> + <point x="873" y="506"/> + </stroke> + <stroke> + <point x="640" y="522"/> + <point x="610" y="608"/> + </stroke> + <stroke> + <point x="478" y="608"/> + <point x="495" y="841"/> + </stroke> + <stroke> + <point x="485" y="612"/> + <point x="890" y="599"/> + <point x="873" y="836"/> + <point x="800" y="804"/> + </stroke> + <stroke> + <point x="590" y="619"/> + <point x="608" y="828"/> + </stroke> + <stroke> + <point x="728" y="621"/> + <point x="743" y="813"/> + </stroke> </strokes> </character> <character> <utf8>蠢</utf8> <strokes> + <stroke> + <point x="198" y="198"/> + <point x="808" y="205"/> + </stroke> + <stroke> + <point x="280" y="265"/> + <point x="698" y="259"/> + </stroke> + <stroke> + <point x="175" y="325"/> + <point x="800" y="328"/> + </stroke> + <stroke> + <point x="485" y="127"/> + <point x="378" y="315"/> + <point x="120" y="470"/> + </stroke> + <stroke> + <point x="570" y="276"/> + <point x="720" y="381"/> + <point x="845" y="442"/> + </stroke> + <stroke> + <point x="320" y="377"/> + <point x="345" y="530"/> + </stroke> + <stroke> + <point x="340" y="388"/> + <point x="655" y="388"/> + <point x="630" y="515"/> + </stroke> + <stroke> + <point x="348" y="461"/> + <point x="633" y="466"/> + </stroke> + <stroke> + <point x="338" y="526"/> + <point x="668" y="532"/> + </stroke> + <stroke> + <point x="138" y="612"/> + <point x="148" y="709"/> + </stroke> + <stroke> + <point x="143" y="625"/> + <point x="418" y="629"/> + <point x="390" y="720"/> + </stroke> + <stroke> + <point x="155" y="720"/> + <point x="388" y="718"/> + </stroke> + <stroke> + <point x="275" y="573"/> + <point x="270" y="821"/> + </stroke> + <stroke> + <point x="88" y="851"/> + <point x="403" y="823"/> + </stroke> + <stroke> + <point x="383" y="765"/> + <point x="443" y="864"/> + </stroke> + <stroke> + <point x="558" y="625"/> + <point x="565" y="718"/> + </stroke> + <stroke> + <point x="560" y="623"/> + <point x="828" y="625"/> + <point x="825" y="705"/> + </stroke> + <stroke> + <point x="568" y="713"/> + <point x="825" y="707"/> + </stroke> + <stroke> + <point x="700" y="558"/> + <point x="710" y="828"/> + </stroke> + <stroke> + <point x="510" y="858"/> + <point x="888" y="834"/> + </stroke> + <stroke> + <point x="860" y="774"/> + <point x="918" y="884"/> + </stroke> </strokes> </character> <character> <utf8>蠡</utf8> <strokes> + <stroke> + <point x="385" y="91"/> + <point x="303" y="250"/> + <point x="615" y="250"/> + </stroke> + <stroke> + <point x="360" y="170"/> + <point x="640" y="175"/> + <point x="578" y="293"/> + </stroke> + <stroke> + <point x="150" y="300"/> + <point x="795" y="295"/> + </stroke> + <stroke> + <point x="478" y="304"/> + <point x="208" y="377"/> + </stroke> + <stroke> + <point x="415" y="330"/> + <point x="520" y="448"/> + <point x="515" y="552"/> + <point x="398" y="519"/> + </stroke> + <stroke> + <point x="433" y="362"/> + <point x="225" y="448"/> + </stroke> + <stroke> + <point x="473" y="407"/> + <point x="268" y="489"/> + </stroke> + <stroke> + <point x="745" y="338"/> + <point x="638" y="409"/> + </stroke> + <stroke> + <point x="500" y="323"/> + <point x="623" y="438"/> + <point x="795" y="476"/> + </stroke> + <stroke> + <point x="145" y="603"/> + <point x="158" y="722"/> + </stroke> + <stroke> + <point x="155" y="616"/> + <point x="428" y="603"/> + <point x="393" y="731"/> + </stroke> + <stroke> + <point x="153" y="728"/> + <point x="413" y="722"/> + </stroke> + <stroke> + <point x="265" y="539"/> + <point x="278" y="828"/> + </stroke> + <stroke> + <point x="83" y="845"/> + <point x="410" y="823"/> + </stroke> + <stroke> + <point x="403" y="767"/> + <point x="445" y="871"/> + </stroke> + <stroke> + <point x="570" y="603"/> + <point x="590" y="728"/> + </stroke> + <stroke> + <point x="573" y="612"/> + <point x="840" y="608"/> + <point x="818" y="709"/> + </stroke> + <stroke> + <point x="610" y="737"/> + <point x="835" y="718"/> + </stroke> + <stroke> + <point x="715" y="534"/> + <point x="720" y="832"/> + </stroke> + <stroke> + <point x="543" y="841"/> + <point x="833" y="810"/> + </stroke> + <stroke> + <point x="820" y="752"/> + <point x="888" y="858"/> + </stroke> </strokes> </character> <character> <utf8>蠱</utf8> <strokes> + <stroke> + <point x="265" y="192"/> + <point x="283" y="295"/> + </stroke> + <stroke> + <point x="270" y="207"/> + <point x="708" y="200"/> + <point x="695" y="300"/> + </stroke> + <stroke> + <point x="313" y="302"/> + <point x="698" y="297"/> + </stroke> + <stroke> + <point x="488" y="108"/> + <point x="495" y="397"/> + </stroke> + <stroke> + <point x="243" y="403"/> + <point x="658" y="386"/> + </stroke> + <stroke> + <point x="640" y="315"/> + <point x="673" y="412"/> + </stroke> + <stroke> + <point x="145" y="470"/> + <point x="148" y="560"/> + </stroke> + <stroke> + <point x="145" y="470"/> + <point x="420" y="470"/> + <point x="390" y="565"/> + </stroke> + <stroke> + <point x="163" y="569"/> + <point x="408" y="567"/> + </stroke> + <stroke> + <point x="265" y="429"/> + <point x="275" y="638"/> + </stroke> + <stroke> + <point x="110" y="666"/> + <point x="408" y="644"/> + </stroke> + <stroke> + <point x="393" y="591"/> + <point x="428" y="683"/> + </stroke> + <stroke> + <point x="548" y="463"/> + <point x="570" y="582"/> + </stroke> + <stroke> + <point x="550" y="468"/> + <point x="825" y="466"/> + <point x="780" y="565"/> + </stroke> + <stroke> + <point x="588" y="571"/> + <point x="775" y="573"/> + </stroke> + <stroke> + <point x="693" y="409"/> + <point x="705" y="642"/> + </stroke> + <stroke> + <point x="545" y="657"/> + <point x="813" y="621"/> + </stroke> + <stroke> + <point x="810" y="571"/> + <point x="843" y="672"/> + </stroke> + <stroke> + <point x="263" y="703"/> + <point x="280" y="856"/> + </stroke> + <stroke> + <point x="258" y="716"/> + <point x="725" y="711"/> + <point x="718" y="866"/> + </stroke> + <stroke> + <point x="393" y="722"/> + <point x="398" y="860"/> + </stroke> + <stroke> + <point x="585" y="722"/> + <point x="580" y="864"/> + </stroke> + <stroke> + <point x="125" y="869"/> + <point x="843" y="860"/> + </stroke> </strokes> </character> <character> <utf8>蠶</utf8> <strokes> + <stroke> + <point x="170" y="170"/> + <point x="433" y="168"/> + </stroke> + <stroke> + <point x="188" y="179"/> + <point x="150" y="272"/> + <point x="468" y="274"/> + </stroke> + <stroke> + <point x="323" y="192"/> + <point x="235" y="343"/> + <point x="33" y="427"/> + </stroke> + <stroke> + <point x="365" y="284"/> + <point x="365" y="390"/> + <point x="505" y="347"/> + </stroke> + <stroke> + <point x="585" y="172"/> + <point x="858" y="170"/> + </stroke> + <stroke> + <point x="598" y="188"/> + <point x="563" y="267"/> + <point x="893" y="267"/> + </stroke> + <stroke> + <point x="743" y="188"/> + <point x="678" y="297"/> + <point x="550" y="373"/> + </stroke> + <stroke> + <point x="773" y="272"/> + <point x="778" y="362"/> + <point x="905" y="364"/> + <point x="915" y="319"/> + </stroke> + <stroke> + <point x="268" y="418"/> + <point x="310" y="560"/> + </stroke> + <stroke> + <point x="280" y="425"/> + <point x="700" y="416"/> + <point x="658" y="567"/> + </stroke> + <stroke> + <point x="313" y="487"/> + <point x="678" y="483"/> + </stroke> + <stroke> + <point x="315" y="563"/> + <point x="653" y="554"/> + </stroke> + <stroke> + <point x="138" y="640"/> + <point x="158" y="748"/> + </stroke> + <stroke> + <point x="148" y="644"/> + <point x="423" y="640"/> + <point x="380" y="746"/> + </stroke> + <stroke> + <point x="165" y="744"/> + <point x="395" y="737"/> + </stroke> + <stroke> + <point x="280" y="586"/> + <point x="268" y="828"/> + </stroke> + <stroke> + <point x="75" y="858"/> + <point x="423" y="830"/> + </stroke> + <stroke> + <point x="403" y="767"/> + <point x="438" y="879"/> + </stroke> + <stroke> + <point x="558" y="638"/> + <point x="575" y="744"/> + </stroke> + <stroke> + <point x="565" y="644"/> + <point x="828" y="644"/> + <point x="820" y="720"/> + </stroke> + <stroke> + <point x="565" y="731"/> + <point x="828" y="731"/> + </stroke> + <stroke> + <point x="700" y="586"/> + <point x="698" y="830"/> + </stroke> + <stroke> + <point x="535" y="849"/> + <point x="843" y="823"/> + </stroke> + <stroke> + <point x="830" y="774"/> + <point x="870" y="864"/> + </stroke> </strokes> </character> <character> <utf8>蠹</utf8> <strokes> + <stroke> + <point x="183" y="203"/> + <point x="808" y="207"/> + </stroke> + <stroke> + <point x="245" y="259"/> + <point x="250" y="325"/> + </stroke> + <stroke> + <point x="253" y="256"/> + <point x="728" y="250"/> + <point x="698" y="332"/> + </stroke> + <stroke> + <point x="250" y="334"/> + <point x="698" y="332"/> + </stroke> + <stroke> + <point x="498" y="142"/> + <point x="498" y="375"/> + </stroke> + <stroke> + <point x="130" y="375"/> + <point x="135" y="453"/> + </stroke> + <stroke> + <point x="130" y="369"/> + <point x="858" y="364"/> + <point x="833" y="453"/> + </stroke> + <stroke> + <point x="270" y="431"/> + <point x="718" y="418"/> + </stroke> + <stroke> + <point x="390" y="438"/> + <point x="240" y="558"/> + </stroke> + <stroke> + <point x="355" y="476"/> + <point x="360" y="556"/> + </stroke> + <stroke> + <point x="345" y="476"/> + <point x="680" y="472"/> + <point x="653" y="569"/> + </stroke> + <stroke> + <point x="378" y="567"/> + <point x="650" y="567"/> + </stroke> + <stroke> + <point x="148" y="642"/> + <point x="155" y="763"/> + </stroke> + <stroke> + <point x="150" y="651"/> + <point x="400" y="649"/> + <point x="373" y="750"/> + </stroke> + <stroke> + <point x="165" y="759"/> + <point x="383" y="750"/> + </stroke> + <stroke> + <point x="275" y="591"/> + <point x="270" y="856"/> + </stroke> + <stroke> + <point x="120" y="862"/> + <point x="385" y="838"/> + </stroke> + <stroke> + <point x="375" y="780"/> + <point x="425" y="881"/> + </stroke> + <stroke> + <point x="558" y="642"/> + <point x="573" y="752"/> + </stroke> + <stroke> + <point x="540" y="647"/> + <point x="840" y="634"/> + <point x="798" y="741"/> + </stroke> + <stroke> + <point x="563" y="754"/> + <point x="810" y="752"/> + </stroke> + <stroke> + <point x="705" y="593"/> + <point x="710" y="838"/> + </stroke> + <stroke> + <point x="543" y="858"/> + <point x="835" y="834"/> + </stroke> + <stroke> + <point x="830" y="784"/> + <point x="885" y="894"/> + </stroke> </strokes> </character> <character> <utf8>蠧</utf8> <strokes> + <stroke> + <point x="170" y="200"/> + <point x="890" y="198"/> + </stroke> + <stroke> + <point x="503" y="112"/> + <point x="495" y="254"/> + </stroke> + <stroke> + <point x="298" y="267"/> + <point x="698" y="263"/> + </stroke> + <stroke> + <point x="163" y="319"/> + <point x="173" y="429"/> + </stroke> + <stroke> + <point x="168" y="330"/> + <point x="870" y="332"/> + <point x="778" y="440"/> + </stroke> + <stroke> + <point x="245" y="394"/> + <point x="748" y="388"/> + </stroke> + <stroke> + <point x="388" y="401"/> + <point x="335" y="470"/> + <point x="185" y="552"/> + </stroke> + <stroke> + <point x="350" y="466"/> + <point x="365" y="539"/> + </stroke> + <stroke> + <point x="350" y="457"/> + <point x="680" y="459"/> + <point x="660" y="545"/> + </stroke> + <stroke> + <point x="363" y="556"/> + <point x="665" y="543"/> + </stroke> + <stroke> + <point x="163" y="640"/> + <point x="175" y="752"/> + </stroke> + <stroke> + <point x="168" y="638"/> + <point x="430" y="636"/> + <point x="378" y="741"/> + </stroke> + <stroke> + <point x="173" y="750"/> + <point x="425" y="746"/> + </stroke> + <stroke> + <point x="290" y="569"/> + <point x="275" y="853"/> + </stroke> + <stroke> + <point x="125" y="879"/> + <point x="438" y="853"/> + </stroke> + <stroke> + <point x="425" y="793"/> + <point x="455" y="879"/> + </stroke> + <stroke> + <point x="588" y="629"/> + <point x="618" y="761"/> + </stroke> + <stroke> + <point x="608" y="638"/> + <point x="860" y="629"/> + <point x="823" y="744"/> + </stroke> + <stroke> + <point x="623" y="748"/> + <point x="825" y="748"/> + </stroke> + <stroke> + <point x="705" y="567"/> + <point x="713" y="843"/> + </stroke> + <stroke> + <point x="588" y="860"/> + <point x="840" y="847"/> + </stroke> + <stroke> + <point x="845" y="787"/> + <point x="865" y="881"/> + </stroke> </strokes> </character> <character> <utf8>蠻</utf8> <strokes> + <stroke> + <point x="450" y="121"/> + <point x="530" y="177"/> + </stroke> + <stroke> + <point x="393" y="211"/> + <point x="598" y="218"/> + </stroke> + <stroke> + <point x="415" y="265"/> + <point x="550" y="265"/> + </stroke> + <stroke> + <point x="425" y="321"/> + <point x="553" y="323"/> + </stroke> + <stroke> + <point x="398" y="384"/> + <point x="413" y="498"/> + </stroke> + <stroke> + <point x="408" y="394"/> + <point x="563" y="390"/> + <point x="558" y="491"/> + </stroke> + <stroke> + <point x="408" y="502"/> + <point x="560" y="498"/> + </stroke> + <stroke> + <point x="213" y="140"/> + <point x="115" y="218"/> + <point x="173" y="274"/> + </stroke> + <stroke> + <point x="275" y="190"/> + <point x="123" y="343"/> + <point x="278" y="338"/> + </stroke> + <stroke> + <point x="268" y="291"/> + <point x="305" y="364"/> + </stroke> + <stroke> + <point x="208" y="338"/> + <point x="218" y="524"/> + </stroke> + <stroke> + <point x="120" y="403"/> + <point x="80" y="502"/> + </stroke> + <stroke> + <point x="265" y="401"/> + <point x="323" y="498"/> + </stroke> + <stroke> + <point x="810" y="147"/> + <point x="703" y="237"/> + <point x="755" y="287"/> + </stroke> + <stroke> + <point x="883" y="207"/> + <point x="703" y="338"/> + <point x="870" y="330"/> + </stroke> + <stroke> + <point x="858" y="284"/> + <point x="893" y="349"/> + </stroke> + <stroke> + <point x="798" y="349"/> + <point x="803" y="513"/> + </stroke> + <stroke> + <point x="708" y="412"/> + <point x="678" y="500"/> + </stroke> + <stroke> + <point x="845" y="403"/> + <point x="903" y="478"/> + </stroke> + <stroke> + <point x="253" y="595"/> + <point x="280" y="741"/> + </stroke> + <stroke> + <point x="268" y="601"/> + <point x="728" y="586"/> + <point x="668" y="733"/> + </stroke> + <stroke> + <point x="318" y="746"/> + <point x="695" y="733"/> + </stroke> + <stroke> + <point x="493" y="537"/> + <point x="485" y="853"/> + </stroke> + <stroke> + <point x="190" y="866"/> + <point x="710" y="841"/> + </stroke> + <stroke> + <point x="710" y="776"/> + <point x="768" y="946"/> + </stroke> </strokes> </character> <character> <utf8>衄</utf8> <strokes> + <stroke> + <point x="305" y="129"/> + <point x="213" y="278"/> + </stroke> + <stroke> + <point x="115" y="287"/> + <point x="133" y="759"/> + </stroke> + <stroke> + <point x="115" y="304"/> + <point x="435" y="293"/> + <point x="408" y="700"/> + </stroke> + <stroke> + <point x="210" y="315"/> + <point x="215" y="726"/> + </stroke> + <stroke> + <point x="338" y="308"/> + <point x="333" y="716"/> + </stroke> + <stroke> + <point x="33" y="787"/> + <point x="495" y="692"/> + </stroke> + <stroke> + <point x="515" y="194"/> + <point x="853" y="192"/> + <point x="823" y="780"/> + </stroke> + <stroke> + <point x="650" y="192"/> + <point x="605" y="795"/> + </stroke> + <stroke> + <point x="493" y="489"/> + <point x="930" y="487"/> + </stroke> + <stroke> + <point x="435" y="791"/> + <point x="918" y="793"/> + </stroke> </strokes> </character> <character> <utf8>衂</utf8> <strokes> + <stroke> + <point x="310" y="153"/> + <point x="200" y="278"/> + </stroke> + <stroke> + <point x="105" y="269"/> + <point x="123" y="741"/> + </stroke> + <stroke> + <point x="118" y="289"/> + <point x="425" y="284"/> + <point x="405" y="683"/> + </stroke> + <stroke> + <point x="228" y="302"/> + <point x="223" y="722"/> + </stroke> + <stroke> + <point x="315" y="297"/> + <point x="323" y="703"/> + </stroke> + <stroke> + <point x="53" y="772"/> + <point x="493" y="659"/> + </stroke> + <stroke> + <point x="480" y="213"/> + <point x="850" y="205"/> + <point x="818" y="759"/> + <point x="750" y="877"/> + <point x="673" y="795"/> + </stroke> + <stroke> + <point x="665" y="235"/> + <point x="628" y="563"/> + <point x="448" y="836"/> + </stroke> + <stroke> + <point x="528" y="362"/> + <point x="718" y="569"/> + <point x="940" y="700"/> + </stroke> </strokes> </character> <character> <utf8>衒</utf8> <strokes> + <stroke> + <point x="265" y="170"/> + <point x="78" y="358"/> + </stroke> + <stroke> + <point x="258" y="345"/> + <point x="70" y="606"/> + </stroke> + <stroke> + <point x="188" y="474"/> + <point x="188" y="847"/> + </stroke> + <stroke> + <point x="490" y="138"/> + <point x="480" y="282"/> + </stroke> + <stroke> + <point x="288" y="300"/> + <point x="675" y="287"/> + </stroke> + <stroke> + <point x="490" y="315"/> + <point x="348" y="476"/> + <point x="453" y="575"/> + </stroke> + <stroke> + <point x="575" y="433"/> + <point x="320" y="789"/> + <point x="585" y="720"/> + </stroke> + <stroke> + <point x="580" y="634"/> + <point x="620" y="815"/> + </stroke> + <stroke> + <point x="685" y="218"/> + <point x="920" y="218"/> + </stroke> + <stroke> + <point x="655" y="420"/> + <point x="948" y="399"/> + </stroke> + <stroke> + <point x="828" y="405"/> + <point x="813" y="845"/> + <point x="718" y="806"/> + </stroke> </strokes> </character> <character> <utf8>衙</utf8> <strokes> + <stroke> + <point x="228" y="170"/> + <point x="85" y="338"/> + </stroke> + <stroke> + <point x="260" y="345"/> + <point x="55" y="610"/> + </stroke> + <stroke> + <point x="168" y="457"/> + <point x="160" y="860"/> + </stroke> + <stroke> + <point x="338" y="222"/> + <point x="603" y="220"/> + </stroke> + <stroke> + <point x="353" y="341"/> + <point x="580" y="341"/> + <point x="565" y="481"/> + </stroke> + <stroke> + <point x="448" y="226"/> + <point x="403" y="481"/> + </stroke> + <stroke> + <point x="295" y="498"/> + <point x="660" y="489"/> + </stroke> + <stroke> + <point x="360" y="593"/> + <point x="385" y="765"/> + </stroke> + <stroke> + <point x="370" y="595"/> + <point x="590" y="591"/> + <point x="558" y="769"/> + </stroke> + <stroke> + <point x="388" y="765"/> + <point x="570" y="765"/> + </stroke> + <stroke> + <point x="680" y="228"/> + <point x="890" y="233"/> + </stroke> + <stroke> + <point x="665" y="407"/> + <point x="928" y="405"/> + </stroke> + <stroke> + <point x="823" y="420"/> + <point x="815" y="828"/> + <point x="718" y="793"/> + </stroke> </strokes> </character> <character> <utf8>衞</utf8> <strokes> + <stroke> + <point x="243" y="183"/> + <point x="93" y="349"/> + </stroke> + <stroke> + <point x="245" y="369"/> + <point x="88" y="578"/> + </stroke> + <stroke> + <point x="183" y="463"/> + <point x="165" y="834"/> + </stroke> + <stroke> + <point x="373" y="220"/> + <point x="580" y="218"/> + <point x="560" y="306"/> + </stroke> + <stroke> + <point x="475" y="134"/> + <point x="425" y="293"/> + </stroke> + <stroke> + <point x="325" y="317"/> + <point x="648" y="313"/> + </stroke> + <stroke> + <point x="373" y="366"/> + <point x="395" y="463"/> + </stroke> + <stroke> + <point x="378" y="375"/> + <point x="580" y="366"/> + <point x="568" y="478"/> + </stroke> + <stroke> + <point x="388" y="474"/> + <point x="570" y="474"/> + </stroke> + <stroke> + <point x="308" y="545"/> + <point x="675" y="534"/> + </stroke> + <stroke> + <point x="363" y="625"/> + <point x="355" y="782"/> + </stroke> + <stroke> + <point x="373" y="627"/> + <point x="628" y="623"/> + <point x="623" y="782"/> + <point x="553" y="750"/> + </stroke> + <stroke> + <point x="470" y="545"/> + <point x="468" y="864"/> + </stroke> + <stroke> + <point x="703" y="220"/> + <point x="908" y="211"/> + </stroke> + <stroke> + <point x="685" y="405"/> + <point x="935" y="405"/> + </stroke> + <stroke> + <point x="840" y="412"/> + <point x="823" y="847"/> + <point x="703" y="802"/> + </stroke> </strokes> </character> <character> <utf8>衢</utf8> <strokes> + <stroke> + <point x="235" y="190"/> + <point x="93" y="351"/> + </stroke> + <stroke> + <point x="238" y="351"/> + <point x="88" y="567"/> + </stroke> + <stroke> + <point x="183" y="450"/> + <point x="180" y="841"/> + </stroke> + <stroke> + <point x="303" y="192"/> + <point x="313" y="409"/> + </stroke> + <stroke> + <point x="318" y="194"/> + <point x="463" y="190"/> + <point x="443" y="409"/> + </stroke> + <stroke> + <point x="318" y="252"/> + <point x="445" y="252"/> + </stroke> + <stroke> + <point x="323" y="328"/> + <point x="440" y="323"/> + </stroke> + <stroke> + <point x="325" y="401"/> + <point x="445" y="399"/> + </stroke> + <stroke> + <point x="550" y="194"/> + <point x="550" y="390"/> + </stroke> + <stroke> + <point x="538" y="203"/> + <point x="680" y="196"/> + <point x="678" y="401"/> + </stroke> + <stroke> + <point x="560" y="259"/> + <point x="688" y="256"/> + </stroke> + <stroke> + <point x="560" y="325"/> + <point x="675" y="319"/> + </stroke> + <stroke> + <point x="555" y="399"/> + <point x="670" y="394"/> + </stroke> + <stroke> + <point x="405" y="459"/> + <point x="270" y="638"/> + </stroke> + <stroke> + <point x="360" y="526"/> + <point x="358" y="800"/> + </stroke> + <stroke> + <point x="548" y="453"/> + <point x="508" y="534"/> + </stroke> + <stroke> + <point x="365" y="539"/> + <point x="635" y="534"/> + </stroke> + <stroke> + <point x="380" y="623"/> + <point x="660" y="614"/> + </stroke> + <stroke> + <point x="393" y="700"/> + <point x="668" y="698"/> + </stroke> + <stroke> + <point x="510" y="537"/> + <point x="515" y="769"/> + </stroke> + <stroke> + <point x="358" y="782"/> + <point x="653" y="780"/> + </stroke> + <stroke> + <point x="743" y="213"/> + <point x="900" y="216"/> + </stroke> + <stroke> + <point x="703" y="414"/> + <point x="935" y="401"/> + </stroke> + <stroke> + <point x="823" y="418"/> + <point x="815" y="845"/> + <point x="700" y="828"/> + </stroke> </strokes> </character> <character> <utf8>衫</utf8> <strokes> + <stroke> + <point x="253" y="159"/> + <point x="253" y="287"/> + </stroke> + <stroke> + <point x="95" y="297"/> + <point x="363" y="300"/> + <point x="255" y="461"/> + <point x="93" y="591"/> + </stroke> + <stroke> + <point x="250" y="478"/> + <point x="240" y="864"/> + </stroke> + <stroke> + <point x="440" y="442"/> + <point x="355" y="522"/> + </stroke> + <stroke> + <point x="268" y="470"/> + <point x="413" y="575"/> + </stroke> + <stroke> + <point x="820" y="224"/> + <point x="545" y="377"/> + </stroke> + <stroke> + <point x="848" y="379"/> + <point x="590" y="575"/> + </stroke> + <stroke> + <point x="893" y="569"/> + <point x="603" y="787"/> + </stroke> </strokes> </character> <character> <utf8>袁</utf8> <strokes> + <stroke> + <point x="213" y="233"/> + <point x="773" y="228"/> + </stroke> + <stroke> + <point x="513" y="123"/> + <point x="505" y="330"/> + </stroke> + <stroke> + <point x="138" y="336"/> + <point x="885" y="336"/> + </stroke> + <stroke> + <point x="278" y="409"/> + <point x="290" y="569"/> + </stroke> + <stroke> + <point x="273" y="407"/> + <point x="695" y="403"/> + <point x="670" y="565"/> + </stroke> + <stroke> + <point x="305" y="556"/> + <point x="668" y="554"/> + </stroke> + <stroke> + <point x="453" y="567"/> + <point x="138" y="700"/> + </stroke> + <stroke> + <point x="335" y="610"/> + <point x="315" y="825"/> + <point x="518" y="776"/> + </stroke> + <stroke> + <point x="825" y="619"/> + <point x="653" y="726"/> + </stroke> + <stroke> + <point x="503" y="571"/> + <point x="643" y="731"/> + <point x="915" y="832"/> + </stroke> </strokes> </character> <character> <utf8>衾</utf8> <strokes> + <stroke> + <point x="508" y="168"/> + <point x="158" y="371"/> + </stroke> + <stroke> + <point x="483" y="164"/> + <point x="883" y="377"/> + </stroke> + <stroke> + <point x="380" y="310"/> + <point x="605" y="308"/> + </stroke> + <stroke> + <point x="305" y="394"/> + <point x="670" y="392"/> + <point x="565" y="524"/> + </stroke> + <stroke> + <point x="500" y="444"/> + <point x="508" y="534"/> + </stroke> + <stroke> + <point x="173" y="556"/> + <point x="830" y="556"/> + </stroke> + <stroke> + <point x="470" y="558"/> + <point x="143" y="703"/> + </stroke> + <stroke> + <point x="323" y="619"/> + <point x="328" y="815"/> + <point x="475" y="784"/> + </stroke> + <stroke> + <point x="805" y="584"/> + <point x="623" y="707"/> + </stroke> + <stroke> + <point x="518" y="558"/> + <point x="680" y="733"/> + <point x="908" y="825"/> + </stroke> </strokes> </character> <character> <utf8>袞</utf8> <strokes> + <stroke> + <point x="490" y="121"/> + <point x="495" y="228"/> + </stroke> + <stroke> + <point x="130" y="237"/> + <point x="843" y="233"/> + </stroke> + <stroke> + <point x="300" y="338"/> + <point x="153" y="474"/> + </stroke> + <stroke> + <point x="650" y="317"/> + <point x="828" y="463"/> + </stroke> + <stroke> + <point x="275" y="418"/> + <point x="288" y="582"/> + </stroke> + <stroke> + <point x="290" y="422"/> + <point x="693" y="418"/> + <point x="648" y="578"/> + </stroke> + <stroke> + <point x="285" y="571"/> + <point x="640" y="567"/> + </stroke> + <stroke> + <point x="455" y="567"/> + <point x="85" y="728"/> + </stroke> + <stroke> + <point x="308" y="634"/> + <point x="310" y="821"/> + <point x="475" y="778"/> + </stroke> + <stroke> + <point x="823" y="603"/> + <point x="613" y="722"/> + </stroke> + <stroke> + <point x="513" y="567"/> + <point x="638" y="741"/> + <point x="895" y="828"/> + </stroke> </strokes> </character> <character> <utf8>衵</utf8> <strokes> + <stroke> + <point x="233" y="159"/> + <point x="230" y="291"/> + </stroke> + <stroke> + <point x="105" y="297"/> + <point x="348" y="293"/> + <point x="235" y="457"/> + <point x="60" y="623"/> + </stroke> + <stroke> + <point x="218" y="470"/> + <point x="220" y="841"/> + </stroke> + <stroke> + <point x="400" y="429"/> + <point x="315" y="528"/> + </stroke> + <stroke> + <point x="240" y="474"/> + <point x="390" y="608"/> + </stroke> + <stroke> + <point x="508" y="244"/> + <point x="523" y="756"/> + </stroke> + <stroke> + <point x="500" y="231"/> + <point x="850" y="241"/> + <point x="828" y="756"/> + </stroke> + <stroke> + <point x="533" y="485"/> + <point x="835" y="491"/> + </stroke> + <stroke> + <point x="528" y="754"/> + <point x="820" y="750"/> + </stroke> </strokes> </character> <character> <utf8>衽</utf8> <strokes> + <stroke> + <point x="225" y="147"/> + <point x="218" y="302"/> + </stroke> + <stroke> + <point x="70" y="295"/> + <point x="338" y="289"/> + <point x="253" y="450"/> + <point x="53" y="584"/> + </stroke> + <stroke> + <point x="230" y="461"/> + <point x="223" y="825"/> + </stroke> + <stroke> + <point x="403" y="446"/> + <point x="325" y="534"/> + </stroke> + <stroke> + <point x="235" y="470"/> + <point x="428" y="610"/> + </stroke> + <stroke> + <point x="835" y="164"/> + <point x="485" y="293"/> + </stroke> + <stroke> + <point x="445" y="506"/> + <point x="928" y="504"/> + </stroke> + <stroke> + <point x="663" y="237"/> + <point x="660" y="791"/> + </stroke> + <stroke> + <point x="470" y="808"/> + <point x="885" y="806"/> + </stroke> </strokes> </character> <character> <utf8>袵</utf8> <strokes> + <stroke> + <point x="208" y="170"/> + <point x="205" y="293"/> + </stroke> + <stroke> + <point x="65" y="297"/> + <point x="313" y="293"/> + <point x="185" y="485"/> + <point x="30" y="595"/> + </stroke> + <stroke> + <point x="208" y="450"/> + <point x="198" y="860"/> + </stroke> + <stroke> + <point x="368" y="444"/> + <point x="270" y="545"/> + </stroke> + <stroke> + <point x="220" y="470"/> + <point x="365" y="614"/> + </stroke> + <stroke> + <point x="545" y="179"/> + <point x="403" y="474"/> + </stroke> + <stroke> + <point x="485" y="321"/> + <point x="493" y="866"/> + </stroke> + <stroke> + <point x="863" y="192"/> + <point x="548" y="306"/> + </stroke> + <stroke> + <point x="555" y="496"/> + <point x="938" y="496"/> + </stroke> + <stroke> + <point x="735" y="261"/> + <point x="735" y="776"/> + </stroke> + <stroke> + <point x="613" y="793"/> + <point x="905" y="795"/> + </stroke> </strokes> </character> <character> <utf8>衲</utf8> <strokes> + <stroke> + <point x="210" y="144"/> + <point x="203" y="300"/> + </stroke> + <stroke> + <point x="80" y="297"/> + <point x="320" y="287"/> + <point x="78" y="603"/> + </stroke> + <stroke> + <point x="203" y="446"/> + <point x="190" y="877"/> + </stroke> + <stroke> + <point x="380" y="422"/> + <point x="300" y="504"/> + </stroke> + <stroke> + <point x="213" y="468"/> + <point x="370" y="599"/> + </stroke> + <stroke> + <point x="443" y="334"/> + <point x="450" y="841"/> + </stroke> + <stroke> + <point x="443" y="341"/> + <point x="878" y="330"/> + <point x="875" y="819"/> + <point x="760" y="804"/> + </stroke> + <stroke> + <point x="648" y="420"/> + <point x="533" y="651"/> + </stroke> + <stroke> + <point x="628" y="196"/> + <point x="680" y="435"/> + <point x="793" y="638"/> + </stroke> </strokes> </character> <character> <utf8>袂</utf8> <strokes> + <stroke> + <point x="218" y="142"/> + <point x="210" y="297"/> + </stroke> + <stroke> + <point x="88" y="293"/> + <point x="330" y="291"/> + <point x="63" y="597"/> + </stroke> + <stroke> + <point x="203" y="442"/> + <point x="203" y="864"/> + </stroke> + <stroke> + <point x="368" y="435"/> + <point x="308" y="530"/> + </stroke> + <stroke> + <point x="218" y="459"/> + <point x="388" y="610"/> + </stroke> + <stroke> + <point x="430" y="297"/> + <point x="798" y="297"/> + <point x="790" y="515"/> + </stroke> + <stroke> + <point x="380" y="528"/> + <point x="928" y="526"/> + </stroke> + <stroke> + <point x="623" y="162"/> + <point x="583" y="545"/> + <point x="503" y="726"/> + <point x="340" y="853"/> + </stroke> + <stroke> + <point x="583" y="532"/> + <point x="738" y="709"/> + <point x="948" y="815"/> + </stroke> </strokes> </character> <character> <utf8>袗</utf8> <strokes> + <stroke> + <point x="238" y="147"/> + <point x="233" y="300"/> + </stroke> + <stroke> + <point x="50" y="293"/> + <point x="340" y="287"/> + <point x="68" y="601"/> + </stroke> + <stroke> + <point x="218" y="431"/> + <point x="213" y="843"/> + </stroke> + <stroke> + <point x="388" y="435"/> + <point x="308" y="534"/> + </stroke> + <stroke> + <point x="240" y="455"/> + <point x="383" y="606"/> + </stroke> + <stroke> + <point x="633" y="179"/> + <point x="418" y="444"/> + </stroke> + <stroke> + <point x="638" y="183"/> + <point x="880" y="405"/> + </stroke> + <stroke> + <point x="690" y="371"/> + <point x="498" y="524"/> + </stroke> + <stroke> + <point x="763" y="489"/> + <point x="520" y="677"/> + </stroke> + <stroke> + <point x="853" y="582"/> + <point x="548" y="808"/> + </stroke> </strokes> </character> <character> <utf8>袒</utf8> <strokes> + <stroke> + <point x="203" y="153"/> + <point x="203" y="302"/> + </stroke> + <stroke> + <point x="53" y="297"/> + <point x="313" y="300"/> + <point x="50" y="621"/> + </stroke> + <stroke> + <point x="200" y="431"/> + <point x="200" y="836"/> + </stroke> + <stroke> + <point x="373" y="427"/> + <point x="300" y="519"/> + </stroke> + <stroke> + <point x="225" y="476"/> + <point x="353" y="610"/> + </stroke> + <stroke> + <point x="478" y="216"/> + <point x="490" y="649"/> + </stroke> + <stroke> + <point x="480" y="228"/> + <point x="825" y="216"/> + <point x="808" y="651"/> + </stroke> + <stroke> + <point x="485" y="433"/> + <point x="798" y="442"/> + </stroke> + <stroke> + <point x="493" y="647"/> + <point x="788" y="653"/> + </stroke> + <stroke> + <point x="350" y="828"/> + <point x="940" y="823"/> + </stroke> </strokes> </character> <character> <utf8>袮</utf8> <strokes> + <stroke> + <point x="218" y="151"/> + <point x="213" y="293"/> + </stroke> + <stroke> + <point x="80" y="297"/> + <point x="303" y="297"/> + <point x="70" y="612"/> + </stroke> + <stroke> + <point x="205" y="446"/> + <point x="208" y="847"/> + </stroke> + <stroke> + <point x="358" y="440"/> + <point x="310" y="526"/> + </stroke> + <stroke> + <point x="223" y="478"/> + <point x="375" y="603"/> + </stroke> + <stroke> + <point x="563" y="181"/> + <point x="435" y="420"/> + </stroke> + <stroke> + <point x="493" y="313"/> + <point x="915" y="300"/> + </stroke> + <stroke> + <point x="675" y="313"/> + <point x="675" y="834"/> + <point x="553" y="804"/> + </stroke> + <stroke> + <point x="525" y="489"/> + <point x="433" y="711"/> + </stroke> + <stroke> + <point x="815" y="466"/> + <point x="905" y="685"/> + </stroke> </strokes> </character> <character> <utf8>袙</utf8> <strokes> + <stroke> + <point x="218" y="144"/> + <point x="218" y="300"/> + </stroke> + <stroke> + <point x="65" y="302"/> + <point x="348" y="300"/> + <point x="75" y="610"/> + </stroke> + <stroke> + <point x="205" y="459"/> + <point x="220" y="866"/> + </stroke> + <stroke> + <point x="393" y="435"/> + <point x="303" y="539"/> + </stroke> + <stroke> + <point x="230" y="478"/> + <point x="428" y="621"/> + </stroke> + <stroke> + <point x="690" y="162"/> + <point x="608" y="321"/> + </stroke> + <stroke> + <point x="498" y="308"/> + <point x="500" y="804"/> + </stroke> + <stroke> + <point x="490" y="321"/> + <point x="873" y="321"/> + <point x="858" y="793"/> + </stroke> + <stroke> + <point x="500" y="550"/> + <point x="860" y="556"/> + </stroke> + <stroke> + <point x="498" y="795"/> + <point x="850" y="791"/> + </stroke> </strokes> </character> <character> <utf8>袢</utf8> <strokes> + <stroke> + <point x="210" y="147"/> + <point x="213" y="297"/> + </stroke> + <stroke> + <point x="48" y="297"/> + <point x="295" y="295"/> + <point x="70" y="608"/> + </stroke> + <stroke> + <point x="195" y="448"/> + <point x="190" y="851"/> + </stroke> + <stroke> + <point x="363" y="442"/> + <point x="298" y="522"/> + </stroke> + <stroke> + <point x="218" y="468"/> + <point x="358" y="616"/> + </stroke> + <stroke> + <point x="533" y="241"/> + <point x="428" y="381"/> + </stroke> + <stroke> + <point x="743" y="228"/> + <point x="898" y="384"/> + </stroke> + <stroke> + <point x="483" y="429"/> + <point x="818" y="425"/> + </stroke> + <stroke> + <point x="418" y="601"/> + <point x="918" y="597"/> + </stroke> + <stroke> + <point x="628" y="162"/> + <point x="645" y="860"/> + </stroke> </strokes> </character> <character> <utf8>袍</utf8> <strokes> + <stroke> + <point x="238" y="140"/> + <point x="230" y="300"/> + </stroke> + <stroke> + <point x="78" y="300"/> + <point x="358" y="293"/> + <point x="45" y="603"/> + </stroke> + <stroke> + <point x="215" y="442"/> + <point x="210" y="845"/> + </stroke> + <stroke> + <point x="368" y="435"/> + <point x="305" y="528"/> + </stroke> + <stroke> + <point x="223" y="453"/> + <point x="373" y="616"/> + </stroke> + <stroke> + <point x="578" y="166"/> + <point x="443" y="412"/> + </stroke> + <stroke> + <point x="520" y="267"/> + <point x="855" y="265"/> + <point x="855" y="597"/> + <point x="828" y="681"/> + <point x="728" y="657"/> + </stroke> + <stroke> + <point x="505" y="388"/> + <point x="708" y="379"/> + <point x="708" y="565"/> + </stroke> + <stroke> + <point x="518" y="552"/> + <point x="723" y="554"/> + </stroke> + <stroke> + <point x="518" y="377"/> + <point x="520" y="830"/> + <point x="915" y="830"/> + <point x="913" y="707"/> + </stroke> </strokes> </character> <character> <utf8>袤</utf8> <strokes> + <stroke> + <point x="505" y="108"/> + <point x="505" y="213"/> + </stroke> + <stroke> + <point x="110" y="216"/> + <point x="858" y="222"/> + </stroke> + <stroke> + <point x="330" y="276"/> + <point x="635" y="274"/> + <point x="493" y="358"/> + </stroke> + <stroke> + <point x="403" y="300"/> + <point x="528" y="409"/> + </stroke> + <stroke> + <point x="135" y="405"/> + <point x="760" y="407"/> + <point x="660" y="522"/> + </stroke> + <stroke> + <point x="508" y="420"/> + <point x="503" y="545"/> + <point x="440" y="517"/> + </stroke> + <stroke> + <point x="460" y="409"/> + <point x="315" y="494"/> + <point x="140" y="550"/> + </stroke> + <stroke> + <point x="505" y="580"/> + <point x="143" y="741"/> + </stroke> + <stroke> + <point x="340" y="662"/> + <point x="325" y="815"/> + <point x="478" y="780"/> + </stroke> + <stroke> + <point x="798" y="616"/> + <point x="655" y="707"/> + </stroke> + <stroke> + <point x="495" y="614"/> + <point x="630" y="731"/> + <point x="933" y="836"/> + </stroke> </strokes> </character> <character> <utf8>袰</utf8> <strokes> + <stroke> + <point x="293" y="185"/> + <point x="223" y="444"/> + <point x="828" y="440"/> + </stroke> + <stroke> + <point x="293" y="190"/> + <point x="738" y="190"/> + <point x="675" y="541"/> + <point x="613" y="500"/> + </stroke> + <stroke> + <point x="435" y="203"/> + <point x="550" y="280"/> + </stroke> + <stroke> + <point x="420" y="334"/> + <point x="535" y="397"/> + </stroke> + <stroke> + <point x="78" y="313"/> + <point x="870" y="310"/> + </stroke> + <stroke> + <point x="480" y="483"/> + <point x="493" y="580"/> + </stroke> + <stroke> + <point x="100" y="580"/> + <point x="875" y="573"/> + </stroke> + <stroke> + <point x="465" y="575"/> + <point x="128" y="718"/> + </stroke> + <stroke> + <point x="320" y="647"/> + <point x="320" y="804"/> + <point x="465" y="776"/> + </stroke> + <stroke> + <point x="790" y="625"/> + <point x="665" y="716"/> + </stroke> + <stroke> + <point x="523" y="575"/> + <point x="658" y="728"/> + <point x="878" y="832"/> + </stroke> </strokes> </character> <character> <utf8>袿</utf8> <strokes> + <stroke> + <point x="208" y="151"/> + <point x="198" y="304"/> + </stroke> + <stroke> + <point x="60" y="304"/> + <point x="310" y="287"/> + <point x="83" y="601"/> + </stroke> + <stroke> + <point x="190" y="453"/> + <point x="190" y="834"/> + </stroke> + <stroke> + <point x="353" y="448"/> + <point x="298" y="539"/> + </stroke> + <stroke> + <point x="198" y="481"/> + <point x="335" y="601"/> + </stroke> + <stroke> + <point x="483" y="293"/> + <point x="845" y="289"/> + </stroke> + <stroke> + <point x="645" y="142"/> + <point x="655" y="442"/> + </stroke> + <stroke> + <point x="415" y="459"/> + <point x="938" y="461"/> + </stroke> + <stroke> + <point x="463" y="625"/> + <point x="873" y="627"/> + </stroke> + <stroke> + <point x="655" y="500"/> + <point x="663" y="804"/> + </stroke> + <stroke> + <point x="383" y="813"/> + <point x="948" y="802"/> + </stroke> </strokes> </character> <character> <utf8>袱</utf8> <strokes> + <stroke> + <point x="203" y="159"/> + <point x="208" y="304"/> + </stroke> + <stroke> + <point x="73" y="304"/> + <point x="315" y="297"/> + <point x="60" y="593"/> + </stroke> + <stroke> + <point x="195" y="453"/> + <point x="198" y="830"/> + </stroke> + <stroke> + <point x="190" y="474"/> + <point x="315" y="619"/> + </stroke> + <stroke> + <point x="345" y="466"/> + <point x="270" y="522"/> + </stroke> + <stroke> + <point x="550" y="205"/> + <point x="398" y="528"/> + </stroke> + <stroke> + <point x="485" y="345"/> + <point x="490" y="858"/> + </stroke> + <stroke> + <point x="578" y="409"/> + <point x="980" y="399"/> + </stroke> + <stroke> + <point x="738" y="159"/> + <point x="708" y="545"/> + <point x="570" y="813"/> + </stroke> + <stroke> + <point x="723" y="470"/> + <point x="943" y="817"/> + </stroke> + <stroke> + <point x="823" y="241"/> + <point x="900" y="381"/> + </stroke> </strokes> </character> <character> <utf8>裃</utf8> <strokes> + <stroke> + <point x="228" y="136"/> + <point x="223" y="295"/> + </stroke> + <stroke> + <point x="80" y="297"/> + <point x="328" y="295"/> + <point x="18" y="642"/> + </stroke> + <stroke> + <point x="215" y="431"/> + <point x="215" y="838"/> + </stroke> + <stroke> + <point x="370" y="453"/> + <point x="313" y="539"/> + </stroke> + <stroke> + <point x="223" y="446"/> + <point x="358" y="616"/> + </stroke> + <stroke> + <point x="645" y="284"/> + <point x="855" y="274"/> + </stroke> + <stroke> + <point x="633" y="147"/> + <point x="643" y="405"/> + </stroke> + <stroke> + <point x="383" y="420"/> + <point x="928" y="420"/> + </stroke> + <stroke> + <point x="403" y="541"/> + <point x="915" y="534"/> + </stroke> + <stroke> + <point x="630" y="552"/> + <point x="638" y="873"/> + </stroke> + <stroke> + <point x="658" y="595"/> + <point x="868" y="718"/> + </stroke> </strokes> </character> <character> <utf8>裄</utf8> <strokes> + <stroke> + <point x="223" y="153"/> + <point x="215" y="302"/> + </stroke> + <stroke> + <point x="60" y="297"/> + <point x="340" y="297"/> + <point x="63" y="606"/> + </stroke> + <stroke> + <point x="203" y="461"/> + <point x="208" y="866"/> + </stroke> + <stroke> + <point x="380" y="431"/> + <point x="298" y="517"/> + </stroke> + <stroke> + <point x="213" y="461"/> + <point x="355" y="599"/> + </stroke> + <stroke> + <point x="560" y="177"/> + <point x="415" y="356"/> + </stroke> + <stroke> + <point x="603" y="338"/> + <point x="398" y="599"/> + </stroke> + <stroke> + <point x="505" y="481"/> + <point x="493" y="875"/> + </stroke> + <stroke> + <point x="653" y="248"/> + <point x="893" y="239"/> + </stroke> + <stroke> + <point x="588" y="455"/> + <point x="935" y="438"/> + </stroke> + <stroke> + <point x="803" y="442"/> + <point x="813" y="873"/> + <point x="703" y="815"/> + </stroke> </strokes> </character> <character> <utf8>裔</utf8> <strokes> + <stroke> + <point x="498" y="116"/> + <point x="500" y="224"/> + </stroke> + <stroke> + <point x="113" y="233"/> + <point x="863" y="237"/> + </stroke> + <stroke> + <point x="460" y="244"/> + <point x="120" y="351"/> + </stroke> + <stroke> + <point x="318" y="302"/> + <point x="318" y="433"/> + <point x="493" y="407"/> + </stroke> + <stroke> + <point x="818" y="276"/> + <point x="665" y="360"/> + </stroke> + <stroke> + <point x="523" y="239"/> + <point x="650" y="373"/> + <point x="923" y="463"/> + </stroke> + <stroke> + <point x="165" y="515"/> + <point x="178" y="858"/> + </stroke> + <stroke> + <point x="165" y="509"/> + <point x="838" y="500"/> + <point x="815" y="858"/> + <point x="715" y="817"/> + </stroke> + <stroke> + <point x="413" y="502"/> + <point x="350" y="595"/> + <point x="260" y="653"/> + </stroke> + <stroke> + <point x="553" y="509"/> + <point x="555" y="601"/> + <point x="750" y="603"/> + <point x="743" y="552"/> + </stroke> + <stroke> + <point x="378" y="659"/> + <point x="388" y="780"/> + </stroke> + <stroke> + <point x="373" y="668"/> + <point x="613" y="664"/> + <point x="588" y="778"/> + </stroke> + <stroke> + <point x="398" y="769"/> + <point x="590" y="772"/> + </stroke> </strokes> </character> <character> <utf8>裘</utf8> <strokes> + <stroke> + <point x="143" y="252"/> + <point x="805" y="252"/> + </stroke> + <stroke> + <point x="490" y="129"/> + <point x="495" y="481"/> + <point x="430" y="453"/> + </stroke> + <stroke> + <point x="230" y="295"/> + <point x="313" y="347"/> + </stroke> + <stroke> + <point x="150" y="444"/> + <point x="363" y="384"/> + </stroke> + <stroke> + <point x="768" y="293"/> + <point x="673" y="353"/> + </stroke> + <stroke> + <point x="520" y="338"/> + <point x="778" y="435"/> + </stroke> + <stroke> + <point x="653" y="181"/> + <point x="783" y="228"/> + </stroke> + <stroke> + <point x="500" y="489"/> + <point x="493" y="571"/> + </stroke> + <stroke... [truncated message content] |
From: <ik...@us...> - 2007-06-08 12:52:11
|
Revision: 1348 http://tomoe.svn.sourceforge.net/tomoe/?rev=1348&view=rev Author: ikezoe Date: 2007-06-08 05:52:05 -0700 (Fri, 08 Jun 2007) Log Message: ----------- append path for loading python binding module. Modified Paths: -------------- tomoe/trunk/test/python/test_dict.py Modified: tomoe/trunk/test/python/test_dict.py =================================================================== --- tomoe/trunk/test/python/test_dict.py 2007-06-08 11:04:56 UTC (rev 1347) +++ tomoe/trunk/test/python/test_dict.py 2007-06-08 12:52:05 UTC (rev 1348) @@ -1,5 +1,8 @@ # -*- coding: UTF=8 -*- +import os +import sys import unittest +sys.path.append('../../bindings/python/.libs') import tomoe class TomoeDictTest(unittest.TestCase): @@ -175,6 +178,8 @@ self.assertEqual(candidates[0].get_char().get_utf8(), char_code) if __name__ == '__main__': - unittest.main() + suite = unittest.makeSuite(TomoeDictTest) + unittest.TextTestRunner(verbosity=2).run(suite) + #unittest.main() # vi:ts=4:nowrap:ai:expandtab This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ik...@us...> - 2007-06-08 11:04:55
|
Revision: 1347 http://tomoe.svn.sourceforge.net/tomoe/?rev=1347&view=rev Author: ikezoe Date: 2007-06-08 04:04:56 -0700 (Fri, 08 Jun 2007) Log Message: ----------- removed. Removed Paths: ------------- tomoe/trunk/test/test.py Deleted: tomoe/trunk/test/test.py =================================================================== --- tomoe/trunk/test/test.py 2007-06-08 10:58:12 UTC (rev 1346) +++ tomoe/trunk/test/test.py 2007-06-08 11:04:56 UTC (rev 1347) @@ -1,13 +0,0 @@ -#!/usr/bin/env python -# coding: UTF=8 -import tomoe - -c = tomoe.Context() -c.load_config() - -q = tomoe.Query() -q.set_utf8("池") - -l = c.search(q) - -print l[0].get_char().get_utf8() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ik...@us...> - 2007-06-08 10:58:10
|
Revision: 1346 http://tomoe.svn.sourceforge.net/tomoe/?rev=1346&view=rev Author: ikezoe Date: 2007-06-08 03:58:12 -0700 (Fri, 08 Jun 2007) Log Message: ----------- fix for python2.4. I guess this change causes a problem on 64-bit environment. Modified Paths: -------------- tomoe/trunk/bindings/python/tomoe-dict.override tomoe/trunk/bindings/python/tomoe-recognizer.override Modified: tomoe/trunk/bindings/python/tomoe-dict.override =================================================================== --- tomoe/trunk/bindings/python/tomoe-dict.override 2007-06-08 10:56:53 UTC (rev 1345) +++ tomoe/trunk/bindings/python/tomoe-dict.override 2007-06-08 10:58:12 UTC (rev 1346) @@ -52,7 +52,7 @@ class = g_type_class_ref(obj_type); if (kwargs) { - Py_ssize_t pos = 0; + int pos = 0; PyObject *key; PyObject *value; Modified: tomoe/trunk/bindings/python/tomoe-recognizer.override =================================================================== --- tomoe/trunk/bindings/python/tomoe-recognizer.override 2007-06-08 10:56:53 UTC (rev 1345) +++ tomoe/trunk/bindings/python/tomoe-recognizer.override 2007-06-08 10:58:12 UTC (rev 1346) @@ -51,7 +51,7 @@ class = g_type_class_ref(obj_type); if (kwargs) { - Py_ssize_t pos = 0; + int pos = 0; PyObject *key; PyObject *value; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ik...@us...> - 2007-06-08 10:56:53
|
Revision: 1345 http://tomoe.svn.sourceforge.net/tomoe/?rev=1345&view=rev Author: ikezoe Date: 2007-06-08 03:56:53 -0700 (Fri, 08 Jun 2007) Log Message: ----------- * module/dict/tomoe-dict-ptr-array.c: Use tomoe_reading_compare for searching. Modified Paths: -------------- tomoe/trunk/ChangeLog tomoe/trunk/lib/tomoe-reading.c tomoe/trunk/lib/tomoe-reading.h tomoe/trunk/module/dict/tomoe-dict-ptr-array.c Modified: tomoe/trunk/ChangeLog =================================================================== --- tomoe/trunk/ChangeLog 2007-06-08 10:53:58 UTC (rev 1344) +++ tomoe/trunk/ChangeLog 2007-06-08 10:56:53 UTC (rev 1345) @@ -19,6 +19,9 @@ * test/python/*: Add a test program. * bindings/python/tomoe-dict.override, bindings/python/tomoe-recognizer.override: Support keyword argument. + * lib/tomoe-reading.[ch]: Add tomoe_reading_compare function. + * module/dict/tomoe-dict-ptr-array.c: Use tomoe_reading_compare for + searching. 2007-06-07 Kouhei Sutou <ko...@co...> Modified: tomoe/trunk/lib/tomoe-reading.c =================================================================== --- tomoe/trunk/lib/tomoe-reading.c 2007-06-08 10:53:58 UTC (rev 1344) +++ tomoe/trunk/lib/tomoe-reading.c 2007-06-08 10:56:53 UTC (rev 1345) @@ -231,6 +231,37 @@ return g_markup_printf_escaped (format, priv->reading); } +/** + * tomoe_reading_compare: + * @a: a TomoeReading object. + * @b: a TomoeReading object to compare with. + * + * Compare to TomoeReading objects with its own utf8 character. + * + * Return value: -1 a != b, 0 a= b, + */ +gint +tomoe_reading_compare (const TomoeReading *a, const TomoeReading *b) +{ + TomoeReadingPrivate *priv_a, *priv_b; + + if (!a || !b) return 0; + + priv_a = TOMOE_READING_GET_PRIVATE (a); + priv_b = TOMOE_READING_GET_PRIVATE (b); + if (!priv_a || !priv_b) return 0; + + if (!priv_a->reading || !priv_b->reading) return 0; + + if (priv_a->type != priv_b->type && + (priv_a->type != TOMOE_READING_UNKNOWN && + priv_b->type != TOMOE_READING_UNKNOWN)) { + return -1; + } + + return strcmp (priv_a->reading, priv_b->reading); +} + /* vi:ts=4:nowrap:ai:expandtab */ Modified: tomoe/trunk/lib/tomoe-reading.h =================================================================== --- tomoe/trunk/lib/tomoe-reading.h 2007-06-08 10:53:58 UTC (rev 1344) +++ tomoe/trunk/lib/tomoe-reading.h 2007-06-08 10:56:53 UTC (rev 1345) @@ -64,6 +64,9 @@ gchar *tomoe_reading_to_xml (TomoeReading *reading); +gint tomoe_reading_compare (const TomoeReading *a, + const TomoeReading *b); + G_END_DECLS #endif /* __TOMOE_READING_H__ */ Modified: tomoe/trunk/module/dict/tomoe-dict-ptr-array.c =================================================================== --- tomoe/trunk/module/dict/tomoe-dict-ptr-array.c 2007-06-08 10:53:58 UTC (rev 1344) +++ tomoe/trunk/module/dict/tomoe-dict-ptr-array.c 2007-06-08 10:56:53 UTC (rev 1345) @@ -147,14 +147,9 @@ } static gint -compare_reading (gconstpointer a, gconstpointer b) +reading_compare_func (gconstpointer a, gconstpointer b) { - TomoeReading *reading, *searched_reading; - - reading = TOMOE_READING(a); - searched_reading = TOMOE_READING(b); - return strcmp(tomoe_reading_get_reading(reading), - tomoe_reading_get_reading(searched_reading)); + return tomoe_reading_compare (TOMOE_READING (a), TOMOE_READING (b)); } static gboolean @@ -164,7 +159,7 @@ return TRUE; if (g_list_find_custom ((GList *)tomoe_char_get_readings (chr), - reading, compare_reading)) + reading, reading_compare_func)) return TRUE; else return FALSE; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ik...@us...> - 2007-06-08 10:53:56
|
Revision: 1344 http://tomoe.svn.sourceforge.net/tomoe/?rev=1344&view=rev Author: ikezoe Date: 2007-06-08 03:53:58 -0700 (Fri, 08 Jun 2007) Log Message: ----------- update ignore property. Property Changed: ---------------- tomoe/trunk/data/ Property changes on: tomoe/trunk/data ___________________________________________________________________ Name: svn:ignore - Makefile Makefile.in kanjidic2.xml + Makefile Makefile.in kanjidic2.xml kanjidic2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ik...@us...> - 2007-06-08 06:40:32
|
Revision: 1343 http://tomoe.svn.sourceforge.net/tomoe/?rev=1343&view=rev Author: ikezoe Date: 2007-06-07 23:40:32 -0700 (Thu, 07 Jun 2007) Log Message: ----------- minor fix. Modified Paths: -------------- tomoe/trunk/bindings/python/tomoe-recognizer.override Modified: tomoe/trunk/bindings/python/tomoe-recognizer.override =================================================================== --- tomoe/trunk/bindings/python/tomoe-recognizer.override 2007-06-08 05:08:16 UTC (rev 1342) +++ tomoe/trunk/bindings/python/tomoe-recognizer.override 2007-06-08 06:40:32 UTC (rev 1343) @@ -41,11 +41,8 @@ obj_type = g_type_from_name(type_name); if (!obj_type) { - gchar buf[512]; - g_snprintf(buf, sizeof(buf), - "%s does not exist", - type_name); - PyErr_SetString(PyExc_TypeError, buf); + PyErr_Format(PyExc_TypeError, + "object of type `%s' doesn't exist", type_name); g_free(type_name); return -1; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ik...@us...> - 2007-06-08 05:08:14
|
Revision: 1342 http://tomoe.svn.sourceforge.net/tomoe/?rev=1342&view=rev Author: ikezoe Date: 2007-06-07 22:08:16 -0700 (Thu, 07 Jun 2007) Log Message: ----------- * bindings/python/tomoe-dict.override, bindings/python/tomoe-recognizer.override: Support keyword argument. Modified Paths: -------------- tomoe/trunk/ChangeLog tomoe/trunk/bindings/python/tomoe-dict.override tomoe/trunk/bindings/python/tomoe-recognizer.override tomoe/trunk/test/python/test_dict.py Modified: tomoe/trunk/ChangeLog =================================================================== --- tomoe/trunk/ChangeLog 2007-06-08 04:47:26 UTC (rev 1341) +++ tomoe/trunk/ChangeLog 2007-06-08 05:08:16 UTC (rev 1342) @@ -17,6 +17,8 @@ * bindings/python/tomoe-module.c: Call pytomoe_add_constants(). * test/python/*: Add a test program. + * bindings/python/tomoe-dict.override, + bindings/python/tomoe-recognizer.override: Support keyword argument. 2007-06-07 Kouhei Sutou <ko...@co...> Modified: tomoe/trunk/bindings/python/tomoe-dict.override =================================================================== --- tomoe/trunk/bindings/python/tomoe-dict.override 2007-06-08 04:47:26 UTC (rev 1341) +++ tomoe/trunk/bindings/python/tomoe-dict.override 2007-06-08 05:08:16 UTC (rev 1342) @@ -11,20 +11,19 @@ tomoe_dict_get_registered_types tomoe_dict_get_log_domains %% -override tomoe_dict_new +override tomoe_dict_new kwargs static int -_wrap_tomoe_dict_new(PyGObject *self, PyObject *args) +_wrap_tomoe_dict_new(PyGObject *self, PyObject *args, PyObject *kwargs) { PyObject *first_arg; TomoeModule *module; gchar *dict_name, *type_name; GObjectClass *class; GType obj_type; - GParameter *params; - guint i, len, n; - int ret = 0; + GParameter *params = NULL; + guint n = 0; - if ((len = PyTuple_Size(args)) < 1) { + if (PyTuple_Size(args) < 1) { PyErr_SetString(PyExc_TypeError, "requires at least one argument"); return -1; } @@ -43,66 +42,61 @@ obj_type = g_type_from_name(type_name); if (!obj_type) { - gchar buf[512]; - g_snprintf(buf, sizeof(buf), - "%s does not exist", - type_name); - PyErr_SetString(PyExc_TypeError, buf); + PyErr_Format(PyExc_TypeError, + "object of type `%s' doesn't exist", type_name); g_free(type_name); return -1; } g_free(type_name); - params = g_new0(GParameter, len / 2); - class = g_type_class_ref(obj_type); - for (i = 1, n = 0; i < len; i+=2, n++) { - PyObject *py_property = PyTuple_GetItem(args, i); - PyObject *py_value = PyTuple_GetItem(args, i + 1); - gchar *property_name; - GParamSpec *pspec; - if (!PyString_Check(py_property)) { - PyErr_SetString(PyExc_TypeError, - "Expected string argument for property."); - ret = -1; - goto END; - } + if (kwargs) { + Py_ssize_t pos = 0; + PyObject *key; + PyObject *value; - property_name = PyString_AsString(py_property); + params = g_new0(GParameter, PyDict_Size(kwargs)); + while (PyDict_Next (kwargs, &pos, &key, &value)) { + GParamSpec *pspec; + gchar *key_str = PyString_AsString(key); - pspec = g_object_class_find_property(class, property_name); - if (!pspec) { - gchar buf[512]; - g_snprintf(buf, sizeof(buf), - "%s does not support property `%s'", - g_type_name(obj_type), - property_name); - PyErr_SetString(PyExc_TypeError, buf); - ret = -1; - goto END; + pspec = g_object_class_find_property(class, key_str); + if (!pspec) { + PyErr_Format(PyExc_TypeError, + "object of type `%s' doesn't support property `%s'", + g_type_name(obj_type), key_str); + goto END; + } + g_value_init(¶ms[n].value, + G_PARAM_SPEC_VALUE_TYPE(pspec)); + if (pyg_value_from_pyobject(¶ms[n].value, value)) { + PyErr_Format(PyExc_TypeError, + "could not convert value for property `%s'", + key_str); + goto END; + } + params[n].name = g_strdup(key_str); + n++; } - - params[n].name = property_name; - params[n].value.g_type = 0; - g_value_init(¶ms[n].value, G_PARAM_SPEC_VALUE_TYPE(pspec)); - pyg_value_from_pyobject(¶ms[n].value, (PyObject*)py_value); } if (self->obj == NULL) { GObject *obj; obj = g_object_newv(obj_type, n, params); - self->obj = obj; + self->obj = obj; pygobject_register_wrapper((PyObject *) self); } END: - while (n--) + while (n--) { + g_free((gchar *) params[n].name); g_value_unset(¶ms[n].value); + } g_free(params); g_type_class_unref(class); - return ret; + return self->obj ? 0 : -1; } %% override tomoe_dict_search kwargs Modified: tomoe/trunk/bindings/python/tomoe-recognizer.override =================================================================== --- tomoe/trunk/bindings/python/tomoe-recognizer.override 2007-06-08 04:47:26 UTC (rev 1341) +++ tomoe/trunk/bindings/python/tomoe-recognizer.override 2007-06-08 05:08:16 UTC (rev 1342) @@ -10,20 +10,19 @@ tomoe_recognizer_get_registered_types tomoe_recognizer_get_log_domains %% -override tomoe_recognizer_new +override tomoe_recognizer_new kwargs static int -_wrap_tomoe_recognizer_new(PyGObject *self, PyObject *args) +_wrap_tomoe_recognizer_new(PyGObject *self, PyObject *args, PyObject *kwargs) { PyObject *first_arg; TomoeModule *module; gchar *recognizer_name, *type_name; GObjectClass *class; GType obj_type; - GParameter *params; - guint i, len, n; - int ret = 0; + GParameter *params = NULL; + guint n = 0; - if ((len = PyTuple_Size(args)) < 1) { + if (PyTuple_Size(args) < 1) { PyErr_SetString(PyExc_TypeError, "requires at least one argument"); return -1; } @@ -52,39 +51,36 @@ } g_free(type_name); - params = g_new0(GParameter, len / 2); - class = g_type_class_ref(obj_type); - for (i = 1, n = 0; i < len; i+=2, n++) { - PyObject *py_property = PyTuple_GetItem(args, i); - PyObject *py_value = PyTuple_GetItem(args, i + 1); - gchar *property_name; - GParamSpec *pspec; + + if (kwargs) { + Py_ssize_t pos = 0; + PyObject *key; + PyObject *value; - if (!PyString_Check(py_property)) { - PyErr_SetString(PyExc_TypeError, - "Expected string argument for property."); - goto END; - } + params = g_new0(GParameter, PyDict_Size(kwargs)); + while (PyDict_Next (kwargs, &pos, &key, &value)) { + GParamSpec *pspec; + gchar *key_str = PyString_AsString(key); - property_name = PyString_AsString(py_property); - - pspec = g_object_class_find_property(class, property_name); - if (!pspec) { - gchar buf[512]; - g_snprintf(buf, sizeof(buf), - "%s does not support property `%s'", - g_type_name(obj_type), - property_name); - PyErr_SetString(PyExc_TypeError, buf); - - goto END; + pspec = g_object_class_find_property(class, key_str); + if (!pspec) { + PyErr_Format(PyExc_TypeError, + "object of type `%s' doesn't support property `%s'", + g_type_name(obj_type), key_str); + goto END; + } + g_value_init(¶ms[n].value, + G_PARAM_SPEC_VALUE_TYPE(pspec)); + if (pyg_value_from_pyobject(¶ms[n].value, value)) { + PyErr_Format(PyExc_TypeError, + "could not convert value for property `%s'", + key_str); + goto END; + } + params[n].name = g_strdup(key_str); + n++; } - - params[n].name = property_name; - params[n].value.g_type = 0; - g_value_init(¶ms[n].value, G_PARAM_SPEC_VALUE_TYPE(pspec)); - pyg_value_from_pyobject(¶ms[n].value, (PyObject*)py_value); } if (self->obj == NULL) { @@ -95,12 +91,14 @@ } END: - while (n--) + while (n--) { + g_free((gchar *) params[n].name); g_value_unset(¶ms[n].value); + } g_free(params); g_type_class_unref(class); - return ret; + return self->obj ? 0 : -1; } %% override tomoe_recognizer_search kwargs Modified: tomoe/trunk/test/python/test_dict.py =================================================================== --- tomoe/trunk/test/python/test_dict.py 2007-06-08 04:47:26 UTC (rev 1341) +++ tomoe/trunk/test/python/test_dict.py 2007-06-08 05:08:16 UTC (rev 1342) @@ -11,7 +11,7 @@ dict_file.write(dict_contents) dict_file.close() - return tomoe.Dict("XML", "filename", dict_name, "editable", True) + return tomoe.Dict("XML", filename = dict_name, editable = True) def testRegisterChar(self): dict_contents = """ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kt...@us...> - 2007-06-08 04:47:24
|
Revision: 1341 http://tomoe.svn.sourceforge.net/tomoe/?rev=1341&view=rev Author: ktou Date: 2007-06-07 21:47:26 -0700 (Thu, 07 Jun 2007) Log Message: ----------- * test/tomoe-test-utils.rb: fixed dynamic dictionary search method. Modified Paths: -------------- tomoe/trunk/ChangeLog tomoe/trunk/test/tomoe-test-utils.rb Modified: tomoe/trunk/ChangeLog =================================================================== --- tomoe/trunk/ChangeLog 2007-06-08 04:41:09 UTC (rev 1340) +++ tomoe/trunk/ChangeLog 2007-06-08 04:47:26 UTC (rev 1341) @@ -1,5 +1,7 @@ 2007-06-08 Kouhei Sutou <ko...@co...> + * test/tomoe-test-utils.rb: fixed dynamic dictionary search method. + * test/test_dict.rb: ignore tests for Unihan. * bindings/ruby/tomoe.rb: ensure initialize @missing. Modified: tomoe/trunk/test/tomoe-test-utils.rb =================================================================== --- tomoe/trunk/test/tomoe-test-utils.rb 2007-06-08 04:41:09 UTC (rev 1340) +++ tomoe/trunk/test/tomoe-test-utils.rb 2007-06-08 04:47:26 UTC (rev 1341) @@ -251,7 +251,9 @@ end def check_dict_module_availability(type) - unless Tomoe.const_defined?("Dict#{type}") + begin + Tomoe.const_get("Dict#{type}") + rescue NameError raise "Tomoe doesn't support the dictionary type: #{type}" end end This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kt...@us...> - 2007-06-08 04:41:15
|
Revision: 1340 http://tomoe.svn.sourceforge.net/tomoe/?rev=1340&view=rev Author: ktou Date: 2007-06-07 21:41:09 -0700 (Thu, 07 Jun 2007) Log Message: ----------- * test/test_dict.rb: ignore tests for Unihan. Modified Paths: -------------- tomoe/trunk/ChangeLog tomoe/trunk/test/test_dict.rb Modified: tomoe/trunk/ChangeLog =================================================================== --- tomoe/trunk/ChangeLog 2007-06-08 04:33:08 UTC (rev 1339) +++ tomoe/trunk/ChangeLog 2007-06-08 04:41:09 UTC (rev 1340) @@ -1,5 +1,7 @@ 2007-06-08 Kouhei Sutou <ko...@co...> + * test/test_dict.rb: ignore tests for Unihan. + * bindings/ruby/tomoe.rb: ensure initialize @missing. * test/test_*.rb: used Test::Unit instead of RSpec. Modified: tomoe/trunk/test/test_dict.rb =================================================================== --- tomoe/trunk/test/test_dict.rb 2007-06-08 04:33:08 UTC (rev 1339) +++ tomoe/trunk/test/test_dict.rb 2007-06-08 04:41:09 UTC (rev 1340) @@ -4,317 +4,315 @@ read_only_dictionaries = %w(unihan) if read_only_dictionaries.include?(dict_module_type) puts "#{dict_module_type} is read-only dictionary. skip tests." - return -end +else + class TestDict < Test::Unit::TestCase + include TomoeTestUtils -class TestDict < Test::Unit::TestCase - include TomoeTestUtils + def setup + super + setup_dict_file + @original = Tomoe::DictXML.new("filename" => @dict_file.path) + end - def setup - super - setup_dict_file - @original = Tomoe::DictXML.new("filename" => @dict_file.path) - end - - def test_load - make_temporary_dict(@original) do |dict| - a = dict[@utf8] - assert_not_nil(a) - assert_equal(@utf8, a.utf8) - if dict_module_type == "mysql" - puts "MySQL backend doesn't support writing" - else - assert_equal(@strokes, a.writing.strokes) + def test_load + make_temporary_dict(@original) do |dict| + a = dict[@utf8] + assert_not_nil(a) + assert_equal(@utf8, a.utf8) + if dict_module_type == "mysql" + puts "MySQL backend doesn't support writing" + else + assert_equal(@strokes, a.writing.strokes) + end end end - end - def test_register_and_unregister - make_temporary_dict(@original) do |dict| - prev = dict.search(Tomoe::Query.new).collect do |cand| - cand.char.utf8 - end + def test_register_and_unregister + make_temporary_dict(@original) do |dict| + prev = dict.search(Tomoe::Query.new).collect do |cand| + cand.char.utf8 + end - char = Tomoe::Char.new - char.utf8 = "か" - assert_true(dict.register(char)) - assert_equal(char, dict["か"]) - assert_equal(["か", *prev].sort, - dict.search(Tomoe::Query.new).collect do |cand| - cand.char.utf8 - end.sort) - assert_true(dict.unregister("か")) - assert_nil(dict["か"]) + char = Tomoe::Char.new + char.utf8 = "か" + assert_true(dict.register(char)) + assert_equal(char, dict["か"]) + assert_equal(["か", *prev].sort, + dict.search(Tomoe::Query.new).collect do |cand| + cand.char.utf8 + end.sort) + assert_true(dict.unregister("か")) + assert_nil(dict["か"]) - assert_equal(prev, - dict.search(Tomoe::Query.new).collect do |cand| - cand.char.utf8 - end) + assert_equal(prev, + dict.search(Tomoe::Query.new).collect do |cand| + cand.char.utf8 + end) + end end - end - def assert_override - make_temporary_dict(@original) do |dict| - prev = dict.search(Tomoe::Query.new).collect do |cand| - cand.char.utf8 - end + def assert_override + make_temporary_dict(@original) do |dict| + prev = dict.search(Tomoe::Query.new).collect do |cand| + cand.char.utf8 + end - utf8 = "か" - first_n_strokes = 8 - second_n_strokes = 10 + utf8 = "か" + first_n_strokes = 8 + second_n_strokes = 10 - first_char = Tomoe::Char.new - first_char.utf8 = utf8 - first_char.n_strokes = first_n_strokes - assert_true(dict.register(first_char)) - assert_equal(first_n_strokes, dict[utf8].n_strokes) - assert_equal([utf8, *prev].sort, - dict.search(Tomoe::Query.new).collect do |cand| - cand.char.utf8 - end.sort) + first_char = Tomoe::Char.new + first_char.utf8 = utf8 + first_char.n_strokes = first_n_strokes + assert_true(dict.register(first_char)) + assert_equal(first_n_strokes, dict[utf8].n_strokes) + assert_equal([utf8, *prev].sort, + dict.search(Tomoe::Query.new).collect do |cand| + cand.char.utf8 + end.sort) - second_char = Tomoe::Char.new - second_char.utf8 = utf8 - second_char.n_strokes = second_n_strokes - assert_true(dict.register(second_char)) - assert_not_equal(first_n_strokes, dict[utf8].n_strokes) - assert_equal(second_n_strokes, dict[utf8].n_strokes) - assert_equal([utf8, *prev].sort, - dict.search(Tomoe::Query.new).collect do |cand| - cand.char.utf8 - end.sort) + second_char = Tomoe::Char.new + second_char.utf8 = utf8 + second_char.n_strokes = second_n_strokes + assert_true(dict.register(second_char)) + assert_not_equal(first_n_strokes, dict[utf8].n_strokes) + assert_equal(second_n_strokes, dict[utf8].n_strokes) + assert_equal([utf8, *prev].sort, + dict.search(Tomoe::Query.new).collect do |cand| + cand.char.utf8 + end.sort) + end end - end - def test_pua_character_register_and_unregister - make_temporary_dict(@original) do |dict| - pua_start = Tomoe::Char::PRIVATE_USE_AREA_START + def test_pua_character_register_and_unregister + make_temporary_dict(@original) do |dict| + pua_start = Tomoe::Char::PRIVATE_USE_AREA_START - assert_equal(pua_start, utf8_to_ucs4(dict.available_private_utf8)) + assert_equal(pua_start, utf8_to_ucs4(dict.available_private_utf8)) - char1 = Tomoe::Char.new - assert_true(dict.register(char1)) - assert_equal(ucs4_to_utf8(pua_start), char1.utf8) - assert_equal(pua_start + 1, utf8_to_ucs4(dict.available_private_utf8)) + char1 = Tomoe::Char.new + assert_true(dict.register(char1)) + assert_equal(ucs4_to_utf8(pua_start), char1.utf8) + assert_equal(pua_start + 1, utf8_to_ucs4(dict.available_private_utf8)) - char2 = Tomoe::Char.new - assert_true(dict.register(char2)) - assert_equal(ucs4_to_utf8(pua_start + 1), char2.utf8) - assert_equal(pua_start + 2, utf8_to_ucs4(dict.available_private_utf8)) + char2 = Tomoe::Char.new + assert_true(dict.register(char2)) + assert_equal(ucs4_to_utf8(pua_start + 1), char2.utf8) + assert_equal(pua_start + 2, utf8_to_ucs4(dict.available_private_utf8)) - assert_equal(char1, dict[ucs4_to_utf8(pua_start)]) - assert_equal(char2, dict[ucs4_to_utf8(pua_start + 1)]) - assert_true(dict.unregister(char1.utf8)) - assert_nil(dict[ucs4_to_utf8(pua_start)]) - assert_equal(char2, dict[ucs4_to_utf8(pua_start + 1)]) + assert_equal(char1, dict[ucs4_to_utf8(pua_start)]) + assert_equal(char2, dict[ucs4_to_utf8(pua_start + 1)]) + assert_true(dict.unregister(char1.utf8)) + assert_nil(dict[ucs4_to_utf8(pua_start)]) + assert_equal(char2, dict[ucs4_to_utf8(pua_start + 1)]) - char3 = Tomoe::Char.new - assert_true(dict.register(char3)) - assert_equal(ucs4_to_utf8(pua_start + 2), char3.utf8) - assert_equal(pua_start + 3, utf8_to_ucs4(dict.available_private_utf8)) + char3 = Tomoe::Char.new + assert_true(dict.register(char3)) + assert_equal(ucs4_to_utf8(pua_start + 2), char3.utf8) + assert_equal(pua_start + 3, utf8_to_ucs4(dict.available_private_utf8)) + end end - end - def test_pua_is_full - make_temporary_dict(@original) do |dict| - pua_start = Tomoe::Char::PRIVATE_USE_AREA_START - pua_end = Tomoe::Char::PRIVATE_USE_AREA_END + def test_pua_is_full + make_temporary_dict(@original) do |dict| + pua_start = Tomoe::Char::PRIVATE_USE_AREA_START + pua_end = Tomoe::Char::PRIVATE_USE_AREA_END - assert_equal(pua_start, utf8_to_ucs4(dict.available_private_utf8)) - pua_start.upto(pua_end - 1) do |i| + assert_equal(pua_start, utf8_to_ucs4(dict.available_private_utf8)) + pua_start.upto(pua_end - 1) do |i| + char = Tomoe::Char.new + char.utf8 = ucs4_to_utf8(i) + assert_true(dict.register(char)) + end + assert_equal(pua_end, utf8_to_ucs4(dict.available_private_utf8)) + char = Tomoe::Char.new - char.utf8 = ucs4_to_utf8(i) + char.utf8 = ucs4_to_utf8(pua_end) assert_true(dict.register(char)) - end - assert_equal(pua_end, utf8_to_ucs4(dict.available_private_utf8)) + assert_nil(dict.available_private_utf8) - char = Tomoe::Char.new - char.utf8 = ucs4_to_utf8(pua_end) - assert_true(dict.register(char)) - assert_nil(dict.available_private_utf8) - - char = Tomoe::Char.new - assert_false(dict.register(char)) + char = Tomoe::Char.new + assert_false(dict.register(char)) + end end - end - def test_meta_data - make_temporary_dict(@original) do |dict| - char = Tomoe::Char.new - char.utf8 = "か" - assert_false(char.has_meta_data?) + def test_meta_data + make_temporary_dict(@original) do |dict| + char = Tomoe::Char.new + char.utf8 = "か" + assert_false(char.has_meta_data?) - char["meta1"] = "value1" - char["meta2"] = "value2" + char["meta1"] = "value1" + char["meta2"] = "value2" - assert_true(dict.register(char)) + assert_true(dict.register(char)) - registered_char = dict["か"] - assert_true(char.has_meta_data?) - assert_equal("value1", registered_char["meta1"]) - assert_equal("value2", registered_char["meta2"]) + registered_char = dict["か"] + assert_true(char.has_meta_data?) + assert_equal("value1", registered_char["meta1"]) + assert_equal("value2", registered_char["meta2"]) + end end - end - def test_reading_search - make_temporary_dict(@original) do |dict| - char = Tomoe::Char.new - char.utf8 = "池" - char.add_reading(Tomoe::Reading.new(Tomoe::Reading::JA_KUN, "いけ")) + def test_reading_search + make_temporary_dict(@original) do |dict| + char = Tomoe::Char.new + char.utf8 = "池" + char.add_reading(Tomoe::Reading.new(Tomoe::Reading::JA_KUN, "いけ")) - assert_true(dict.register(char)) + assert_true(dict.register(char)) - query = Tomoe::Query.new - query.add_reading(Tomoe::Reading.new(Tomoe::Reading::JA_KUN, "いけ")) - assert_equal(["池"], - dict.search(query).collect do |cand| - cand.char.utf8 - end) + query = Tomoe::Query.new + query.add_reading(Tomoe::Reading.new(Tomoe::Reading::JA_KUN, "いけ")) + assert_equal(["池"], + dict.search(query).collect do |cand| + cand.char.utf8 + end) + end end - end - def test_n_strokes_search - make_temporary_dict(@original) do |dict| - char = Tomoe::Char.new - char.utf8 = "池" - char.n_strokes = 6 + def test_n_strokes_search + make_temporary_dict(@original) do |dict| + char = Tomoe::Char.new + char.utf8 = "池" + char.n_strokes = 6 - assert_true(dict.register(char)) + assert_true(dict.register(char)) - query = Tomoe::Query.new - query.min_n_strokes = 6 - query.max_n_strokes = 6 - assert_equal(["池"], - dict.search(query).collect do |cand| - cand.char.utf8 - end) + query = Tomoe::Query.new + query.min_n_strokes = 6 + query.max_n_strokes = 6 + assert_equal(["池"], + dict.search(query).collect do |cand| + cand.char.utf8 + end) - query = Tomoe::Query.new - query.min_n_strokes = 6 - query.max_n_strokes = 7 - assert_equal(["池"], - dict.search(query).collect do |cand| - cand.char.utf8 - end) + query = Tomoe::Query.new + query.min_n_strokes = 6 + query.max_n_strokes = 7 + assert_equal(["池"], + dict.search(query).collect do |cand| + cand.char.utf8 + end) - query = Tomoe::Query.new - query.min_n_strokes = 5 - query.max_n_strokes = 6 - assert_equal(["池"], - dict.search(query).collect do |cand| - cand.char.utf8 - end) + query = Tomoe::Query.new + query.min_n_strokes = 5 + query.max_n_strokes = 6 + assert_equal(["池"], + dict.search(query).collect do |cand| + cand.char.utf8 + end) - query = Tomoe::Query.new - query.min_n_strokes = 6 - assert_equal(["池"], - dict.search(query).collect do |cand| - cand.char.utf8 - end) + query = Tomoe::Query.new + query.min_n_strokes = 6 + assert_equal(["池"], + dict.search(query).collect do |cand| + cand.char.utf8 + end) - query = Tomoe::Query.new - query.max_n_strokes = 6 - assert_equal(["あ", "池"].sort, - dict.search(query).collect do |cand| - cand.char.utf8 - end.sort) + query = Tomoe::Query.new + query.max_n_strokes = 6 + assert_equal(["あ", "池"].sort, + dict.search(query).collect do |cand| + cand.char.utf8 + end.sort) + end end - end - def test_radical_search - make_temporary_dict(@original) do |dict| - sanzui = ucs4_to_utf8(27701) # さんずい - char = Tomoe::Char.new - char.utf8 = "池" - char.add_radical(sanzui) + def test_radical_search + make_temporary_dict(@original) do |dict| + sanzui = ucs4_to_utf8(27701) # さんずい + char = Tomoe::Char.new + char.utf8 = "池" + char.add_radical(sanzui) - assert_true(dict.register(char)) + assert_true(dict.register(char)) - query = Tomoe::Query.new - query.add_radical(sanzui) - assert_equal(["池"], - dict.search(query).collect do |cand| - cand.char.utf8 - end) + query = Tomoe::Query.new + query.add_radical(sanzui) + assert_equal(["池"], + dict.search(query).collect do |cand| + cand.char.utf8 + end) + end end - end - def test_variant_search - make_temporary_dict(@original) do |dict| - hashigo_daka = ucs4_to_utf8(39641) # はしご高 - char = Tomoe::Char.new - char.utf8 = "高" - char.variant = hashigo_daka + def test_variant_search + make_temporary_dict(@original) do |dict| + hashigo_daka = ucs4_to_utf8(39641) # はしご高 + char = Tomoe::Char.new + char.utf8 = "高" + char.variant = hashigo_daka - assert_true(dict.register(char)) + assert_true(dict.register(char)) - query = Tomoe::Query.new - query.variant = hashigo_daka - assert_equal(["高"], - dict.search(query).collect do |cand| - cand.char.utf8 - end) + query = Tomoe::Query.new + query.variant = hashigo_daka + assert_equal(["高"], + dict.search(query).collect do |cand| + cand.char.utf8 + end) + end end - end - def test_utf8_search - make_temporary_dict(@original) do |dict| - char = Tomoe::Char.new - char.utf8 = "か" + def test_utf8_search + make_temporary_dict(@original) do |dict| + char = Tomoe::Char.new + char.utf8 = "か" - assert_true(dict.register(char)) + assert_true(dict.register(char)) - query = Tomoe::Query.new - query.utf8 = "か" - assert_equal(["か"], - dict.search(query).collect do |cand| - cand.char.utf8 - end) + query = Tomoe::Query.new + query.utf8 = "か" + assert_equal(["か"], + dict.search(query).collect do |cand| + cand.char.utf8 + end) + end end - end - private - def setup_strokes - @strokes = [ - [ - [18, 19], - [83, 22] - ], - [ - [49, 3], - [48, 67], - [60, 84], - ], - [ - [74, 34], - [49, 76], - [27, 80], - [17, 68], - [28, 49], - [60, 46], - [80, 57], - [82, 74], - [76, 83], - ], - ] - end + private + def setup_strokes + @strokes = [ + [ + [18, 19], + [83, 22] + ], + [ + [49, 3], + [48, 67], + [60, 84], + ], + [ + [74, 34], + [49, 76], + [27, 80], + [17, 68], + [28, 49], + [60, 46], + [80, 57], + [82, 74], + [76, 83], + ], + ] + end - def setup_dict_file - @dict_file = Tempfile.new("tomoe-dict-xml") - @utf8 = "あ" + def setup_dict_file + @dict_file = Tempfile.new("tomoe-dict-xml") + @utf8 = "あ" - setup_strokes - strokes_xml = " <strokes>\n" - @strokes.each do |stroke| - strokes_xml << " <stroke>\n" - stroke.each do |x, y| - strokes_xml << " <point x=\"#{x}\" y=\"#{y}\"/>\n" + setup_strokes + strokes_xml = " <strokes>\n" + @strokes.each do |stroke| + strokes_xml << " <stroke>\n" + stroke.each do |x, y| + strokes_xml << " <point x=\"#{x}\" y=\"#{y}\"/>\n" + end + strokes_xml << " </stroke>\n" end - strokes_xml << " </stroke>\n" - end - strokes_xml << " </strokes>" + strokes_xml << " </strokes>" - @character_xml = <<-EOC + @character_xml = <<-EOC <character> <utf8>#{@utf8}</utf8> <number-of-strokes>#{@strokes.size}</number-of-strokes> @@ -322,48 +320,49 @@ </character> EOC - @dict_content = <<-EOX + @dict_content = <<-EOX <?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE dictionary SYSTEM "tomoe-dict.dtd"> <dictionary> #{@character_xml} </dictionary> EOX - set_content(@dict_file, @dict_content) - end + set_content(@dict_file, @dict_content) + end - def setup_est_draft_file - @est_draft_file = Tempfile.new("tomoe-dict-est-draft") - @est_draft_content = <<-EOC + def setup_est_draft_file + @est_draft_file = Tempfile.new("tomoe-dict-est-draft") + @est_draft_content = <<-EOC @uri=font:#{@utf8} utf8=#{@utf8} n_strokes=#{@strokes.size} #{@character_xml.collect {|line| "\t#{line}"}} EOC - set_content(@est_draft_file, @est_draft_content) - end + set_content(@est_draft_file, @est_draft_content) + end - def set_content(file, content) - file.open - file.truncate(0) - file.rewind - file.print(content) - file.close + def set_content(file, content) + file.open + file.truncate(0) + file.rewind + file.print(content) + file.close - file.open - assert_equal(content, file.read) - file.close - end + file.open + assert_equal(content, file.read) + file.close + end - def truncate_content(file) - file.set_content("") - end + def truncate_content(file) + file.set_content("") + end - def content(file) - file.open - file.read - ensure - file.close + def content(file) + file.open + file.read + ensure + file.close + end end end This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kt...@us...> - 2007-06-08 04:33:25
|
Revision: 1339 http://tomoe.svn.sourceforge.net/tomoe/?rev=1339&view=rev Author: ktou Date: 2007-06-07 21:33:08 -0700 (Thu, 07 Jun 2007) Log Message: ----------- * bindings/ruby/tomoe.rb: ensure initialize @missing. * test/test_*.rb: used Test::Unit instead of RSpec. Modified Paths: -------------- tomoe/trunk/ChangeLog tomoe/trunk/bindings/ruby/tomoe.rb tomoe/trunk/test/run-test.rb tomoe/trunk/test/test_char.rb tomoe/trunk/test/test_config.rb tomoe/trunk/test/test_context.rb tomoe/trunk/test/test_dict.rb tomoe/trunk/test/test_writing.rb tomoe/trunk/test/tomoe-test-utils.rb Modified: tomoe/trunk/ChangeLog =================================================================== --- tomoe/trunk/ChangeLog 2007-06-08 04:08:06 UTC (rev 1338) +++ tomoe/trunk/ChangeLog 2007-06-08 04:33:08 UTC (rev 1339) @@ -1,5 +1,9 @@ 2007-06-08 Kouhei Sutou <ko...@co...> + * bindings/ruby/tomoe.rb: ensure initialize @missing. + + * test/test_*.rb: used Test::Unit instead of RSpec. + * test/Makefile.am, test/run-test.sh: cleanup. * test/: used Test::Unit instead of RSpec because RSpec API is Modified: tomoe/trunk/bindings/ruby/tomoe.rb =================================================================== --- tomoe/trunk/bindings/ruby/tomoe.rb 2007-06-08 04:08:06 UTC (rev 1338) +++ tomoe/trunk/bindings/ruby/tomoe.rb 2007-06-08 04:33:08 UTC (rev 1339) @@ -5,8 +5,8 @@ LOG_DOMAIN = "Tomoe" class << self - @missing = false def const_missing(name) + @missing ||= false super if @missing begin missing = @missing Modified: tomoe/trunk/test/run-test.rb =================================================================== --- tomoe/trunk/test/run-test.rb 2007-06-08 04:08:06 UTC (rev 1338) +++ tomoe/trunk/test/run-test.rb 2007-06-08 04:33:08 UTC (rev 1339) @@ -12,7 +12,7 @@ require 'tomoe-test-utils' -Dir.glob(File.join(test_dir, "test_char.rb")) do |file| +Dir.glob(File.join(test_dir, "test_*.rb")) do |file| require file.gsub(/\.rb/, "") end Modified: tomoe/trunk/test/test_char.rb =================================================================== --- tomoe/trunk/test/test_char.rb 2007-06-08 04:08:06 UTC (rev 1338) +++ tomoe/trunk/test/test_char.rb 2007-06-08 04:33:08 UTC (rev 1339) @@ -1,6 +1,6 @@ require 'tomoe-test-utils' -class TestContext < Test::Unit::TestCase +class TestChar < Test::Unit::TestCase include TomoeTestUtils def test_dump_without_data @@ -43,14 +43,14 @@ assert_equal(xml, char.to_xml) end - def test_load_from_dumped_XML + def test_load_from_dumped_xml char = Tomoe::Char.new char.utf8 = "あ" new_char = Tomoe::Char.new(char.to_xml) assert_equal(char.utf8, new_char.utf8) end - def test_load_from_dumped_XML_with_variant + def test_load_from_dumped_xml_with_variant hashigo_daka = ucs4_to_utf8(39641) # はしご高 char = Tomoe::Char.new char.utf8 = "高" @@ -61,7 +61,7 @@ assert_equal(hashigo_daka, new_char.variant) end - def test_load_from_dumped_XML_with_radicals + def test_load_from_dumped_xml_with_radicals sanzui = ucs4_to_utf8(27701) # さんずい char = Tomoe::Char.new char.utf8 = "池" @@ -72,7 +72,7 @@ assert_equal([sanzui], new_char.radicals) end - def test_load_from_dumped_XML_with_n_strokes + def test_load_from_dumped_xml_with_n_strokes utf8 = "a" n_strokes = 5 Modified: tomoe/trunk/test/test_config.rb =================================================================== --- tomoe/trunk/test/test_config.rb 2007-06-08 04:08:06 UTC (rev 1338) +++ tomoe/trunk/test/test_config.rb 2007-06-08 04:33:08 UTC (rev 1339) @@ -1,46 +1,49 @@ -require 'tomoe-spec-utils' +require 'tomoe-test-utils' -context "Tomoe::Config" do - def config_file(contents) - config_file = Tempfile.new("tomoe-context") - config_file.open - config_file.puts(contents) - config_file.close - config_file - end +class TestConfig < Test::Unit::TestCase + include TomoeTestUtils - specify "Get language" do + def test_get_language file = config_file(<<-EOC) [config] language = ja EOC config = Tomoe::Config.new(file.path) - config.languages.should == ['ja'] + assert_equal(["ja"], config.languages) end - specify "Get languages" do + def test_get_languages file = config_file(<<-EOC) [config] languages = ja EOC config = Tomoe::Config.new(file.path) - config.languages.should == ['ja'] + assert_equal(["ja"], config.languages) file = config_file(<<-EOC) [config] languages = ja;en;fr EOC config = Tomoe::Config.new(file.path) - config.languages.should == ['ja', 'en', 'fr'] + assert_equal(['ja', 'en', 'fr'], config.languages) end - specify "both language and languages are specified" do + def test_language_and_languages file = config_file(<<-EOC) [config] language = ja languages = en;ja;fr EOC config = Tomoe::Config.new(file.path) - config.languages.should == ['ja'] + assert_equal(["ja"], config.languages) end + + private + def config_file(contents) + config_file = Tempfile.new("tomoe-context") + config_file.open + config_file.puts(contents) + config_file.close + config_file + end end Modified: tomoe/trunk/test/test_context.rb =================================================================== --- tomoe/trunk/test/test_context.rb 2007-06-08 04:08:06 UTC (rev 1338) +++ tomoe/trunk/test/test_context.rb 2007-06-08 04:33:08 UTC (rev 1339) @@ -1,25 +1,10 @@ -require 'tomoe-spec-utils' +require 'tomoe-test-utils' -context "Tomoe::Context" do - @@context = nil - def context - return @@context if @@context - config = { - "filename" => File.join(data_dir, "handwriting.xml"), - "editable" => false, - } - dict = Tomoe::DictXML.new(config) - recognizer = Tomoe::RecognizerSimple.new("dictionary" => dict) - @@context = Tomoe::Context.new("recognizer" => recognizer) - @@context.load_config(@config_file.path) - @@context - end +class TestContext < Test::Unit::TestCase + include TomoeTestUtils - setup do - setup_user_dict - end - - def setup_user_dict + def setup + super @user_dict_file = Tempfile.new("tomoe-user-dict") @user_dict_file.open @user_dict_file.puts(<<-EOD) @@ -44,45 +29,46 @@ @user_dict_config_file.close end - TomoeSpecUtils::Path.test_data_files.each do |file| + TomoeTestUtils::Path.test_data_files.each do |file| base = File.basename(file) - specify "Search by strokes for #{base}" do - expected, writing = TomoeSpecUtils::TestData.parse(file) + define_method("test_search_by_strokes_for_#{base}") do + expected, writing = TomoeTestUtils::TestData.parse(file) query = Tomoe::Query.new query.writing = writing cands = context.search(query) actual = cands.collect {|cand| cand.char.utf8} - [base, actual].should == [base, expected] + assert_equal([base, expected], [base, actual]) end end - specify "Search by reading" do + def test_search_by_reading query = Tomoe::Query.new query.add_reading(Tomoe::Reading.new(Tomoe::Reading::JA_KUN, "せい")) cands = context.search(query) - cands.collect {|cand| cand.char.utf8}.sort.should == ["汐", "背", "脊"].sort + assert_equal(["汐", "背", "脊"].sort, + cands.collect {|cand| cand.char.utf8}.sort) end - specify "User dictionary" do + def test_user_dictionary context = Tomoe::Context.new() context.load_config(@user_dict_config_file.path) - context.search(Tomoe::Query.new).should_be_empty + assert_equal([], context.search(Tomoe::Query.new)) char = Tomoe::Char.new char.utf8 = "あ" - context.register(char).should == true - context.search(Tomoe::Query.new).collect do |cand| - cand.char.utf8 - end.should == [char.utf8] + assert_true(context.register(char)) + assert_equal([char.utf8], + context.search(Tomoe::Query.new).collect do |cand| + cand.char.utf8 + end) - context.unregister(char.utf8).should == true - context.search(Tomoe::Query.new).should_be_empty + assert_true(context.unregister(char.utf8)) + assert_equal([], context.search(Tomoe::Query.new)) end - specify "should assign available UTF8 encoded code point " \ - "when a character is registered without UTF8 value" do + def test_auto_assign_available_utf8_encoded_code_point context = Tomoe::Context.new() context.load_config(@user_dict_config_file.path) @@ -91,40 +77,60 @@ query.min_n_strokes = n_strokes query.max_n_strokes = n_strokes - context.search(query).should_be_empty + assert_equal([], context.search(query)) char = Tomoe::Char.new char.n_strokes = n_strokes - context.register(char).should == true - char.utf8.should == ucs4_to_utf8(Tomoe::Char::PRIVATE_USE_AREA_START) + assert_true(context.register(char)) + assert_equal(ucs4_to_utf8(Tomoe::Char::PRIVATE_USE_AREA_START), + char.utf8) - context.search(query).collect do |cand| - cand.char.utf8 - end.should == [char.utf8] + assert_equal([char.utf8], + context.search(query).collect do |cand| + cand.char.utf8 + end) char2 = Tomoe::Char.new char2.n_strokes = n_strokes - context.register(char2).should == true - char2.utf8.should == ucs4_to_utf8(Tomoe::Char::PRIVATE_USE_AREA_START + 1) + assert_true(context.register(char2)) + assert_equal(ucs4_to_utf8(Tomoe::Char::PRIVATE_USE_AREA_START + 1), + char2.utf8) - context.search(query).collect do |cand| - cand.char.utf8 - end.sort.should == [char.utf8, char2.utf8].sort + assert_equal([char.utf8, char2.utf8].sort, + context.search(query).collect do |cand| + cand.char.utf8 + end.sort) end - specify "should get character by UTF8" do + def test_get_character_by_utf8 context = Tomoe::Context.new() context.load_config(@user_dict_config_file.path) - context[ucs4_to_utf8(Tomoe::Char::PRIVATE_USE_AREA_START)].should_nil + assert_nil(context[ucs4_to_utf8(Tomoe::Char::PRIVATE_USE_AREA_START)]) char = Tomoe::Char.new char.n_strokes = 8 - context.register(char).should == true - char.utf8.should == ucs4_to_utf8(Tomoe::Char::PRIVATE_USE_AREA_START) + assert_true(context.register(char)) + assert_equal(ucs4_to_utf8(Tomoe::Char::PRIVATE_USE_AREA_START), + char.utf8) retrieved_char = context[ucs4_to_utf8(Tomoe::Char::PRIVATE_USE_AREA_START)] - retrieved_char.n_strokes.should == char.n_strokes + assert_equal(char.n_strokes, retrieved_char.n_strokes) end + + private + @@context = nil + def context + return @@context if @@context + config = { + "filename" => File.join(data_dir, "handwriting.xml"), + "editable" => false, + } + dict = Tomoe::DictXML.new(config) + recognizer = Tomoe::RecognizerSimple.new("dictionary" => dict) + @@context = Tomoe::Context.new("recognizer" => recognizer) + @@context.load_config(@config_file.path) + @@context + end end Modified: tomoe/trunk/test/test_dict.rb =================================================================== --- tomoe/trunk/test/test_dict.rb 2007-06-08 04:08:06 UTC (rev 1338) +++ tomoe/trunk/test/test_dict.rb 2007-06-08 04:33:08 UTC (rev 1339) @@ -1,32 +1,35 @@ -require 'tomoe-spec-utils' +require 'tomoe-test-utils' -dict_module_type = TomoeSpecUtils::Config.dict_module_type -context "Tomoe::Dict(#{dict_module_type})" do - read_only_dictionaries = %w(unihan) - if read_only_dictionaries.include?(dict_module_type) - puts "#{dict_module_type} is read-only dictionary. skip tests." - break - end +dict_module_type = TomoeTestUtils::Config.dict_module_type +read_only_dictionaries = %w(unihan) +if read_only_dictionaries.include?(dict_module_type) + puts "#{dict_module_type} is read-only dictionary. skip tests." + return +end - setup do +class TestDict < Test::Unit::TestCase + include TomoeTestUtils + + def setup + super setup_dict_file @original = Tomoe::DictXML.new("filename" => @dict_file.path) end - specify "should load successfully" do + def test_load make_temporary_dict(@original) do |dict| a = dict[@utf8] - a.should.not.nil - a.utf8.should == @utf8 + assert_not_nil(a) + assert_equal(@utf8, a.utf8) if dict_module_type == "mysql" puts "MySQL backend doesn't support writing" else - a.writing.strokes.should == @strokes + assert_equal(@strokes, a.writing.strokes) end end end - specify "should register/unregister" do + def test_register_and_unregister make_temporary_dict(@original) do |dict| prev = dict.search(Tomoe::Query.new).collect do |cand| cand.char.utf8 @@ -34,21 +37,23 @@ char = Tomoe::Char.new char.utf8 = "か" - dict.register(char).should == true - dict["か"].should == char - dict.search(Tomoe::Query.new).collect do |cand| - cand.char.utf8 - end.sort.should == ["か", *prev].sort - dict.unregister("か").should == true - dict["か"].should_nil + assert_true(dict.register(char)) + assert_equal(char, dict["か"]) + assert_equal(["か", *prev].sort, + dict.search(Tomoe::Query.new).collect do |cand| + cand.char.utf8 + end.sort) + assert_true(dict.unregister("か")) + assert_nil(dict["か"]) - dict.search(Tomoe::Query.new).collect do |cand| - cand.char.utf8 - end.should == prev + assert_equal(prev, + dict.search(Tomoe::Query.new).collect do |cand| + cand.char.utf8 + end) end end - specify "should override the first register by the second register" do + def assert_override make_temporary_dict(@original) do |dict| prev = dict.search(Tomoe::Query.new).collect do |cand| cand.char.utf8 @@ -61,202 +66,214 @@ first_char = Tomoe::Char.new first_char.utf8 = utf8 first_char.n_strokes = first_n_strokes - dict.register(first_char).should == true - dict[utf8].n_strokes.should == first_n_strokes - dict.search(Tomoe::Query.new).collect do |cand| - cand.char.utf8 - end.sort.should == [utf8, *prev].sort + assert_true(dict.register(first_char)) + assert_equal(first_n_strokes, dict[utf8].n_strokes) + assert_equal([utf8, *prev].sort, + dict.search(Tomoe::Query.new).collect do |cand| + cand.char.utf8 + end.sort) second_char = Tomoe::Char.new second_char.utf8 = utf8 second_char.n_strokes = second_n_strokes - dict.register(second_char).should == true - dict[utf8].n_strokes.should_not == first_n_strokes - dict[utf8].n_strokes.should == second_n_strokes - dict.search(Tomoe::Query.new).collect do |cand| - cand.char.utf8 - end.sort.should == [utf8, *prev].sort + assert_true(dict.register(second_char)) + assert_not_equal(first_n_strokes, dict[utf8].n_strokes) + assert_equal(second_n_strokes, dict[utf8].n_strokes) + assert_equal([utf8, *prev].sort, + dict.search(Tomoe::Query.new).collect do |cand| + cand.char.utf8 + end.sort) end end - specify "should register/unregister PUA character" do + def test_pua_character_register_and_unregister make_temporary_dict(@original) do |dict| pua_start = Tomoe::Char::PRIVATE_USE_AREA_START - utf8_to_ucs4(dict.available_private_utf8).should == pua_start + assert_equal(pua_start, utf8_to_ucs4(dict.available_private_utf8)) char1 = Tomoe::Char.new - dict.register(char1).should == true - char1.utf8.should == ucs4_to_utf8(pua_start) - utf8_to_ucs4(dict.available_private_utf8).should == pua_start + 1 + assert_true(dict.register(char1)) + assert_equal(ucs4_to_utf8(pua_start), char1.utf8) + assert_equal(pua_start + 1, utf8_to_ucs4(dict.available_private_utf8)) char2 = Tomoe::Char.new - dict.register(char2).should == true - char2.utf8.should == ucs4_to_utf8(pua_start + 1) - utf8_to_ucs4(dict.available_private_utf8).should == pua_start + 2 + assert_true(dict.register(char2)) + assert_equal(ucs4_to_utf8(pua_start + 1), char2.utf8) + assert_equal(pua_start + 2, utf8_to_ucs4(dict.available_private_utf8)) - dict[ucs4_to_utf8(pua_start)].should == char1 - dict[ucs4_to_utf8(pua_start + 1)].should == char2 - dict.unregister(char1.utf8).should == true - dict[ucs4_to_utf8(pua_start)].should_nil - dict[ucs4_to_utf8(pua_start + 1)].should == char2 + assert_equal(char1, dict[ucs4_to_utf8(pua_start)]) + assert_equal(char2, dict[ucs4_to_utf8(pua_start + 1)]) + assert_true(dict.unregister(char1.utf8)) + assert_nil(dict[ucs4_to_utf8(pua_start)]) + assert_equal(char2, dict[ucs4_to_utf8(pua_start + 1)]) char3 = Tomoe::Char.new - dict.register(char3).should == true - char3.utf8.should == ucs4_to_utf8(pua_start + 2) - utf8_to_ucs4(dict.available_private_utf8).should == pua_start + 3 + assert_true(dict.register(char3)) + assert_equal(ucs4_to_utf8(pua_start + 2), char3.utf8) + assert_equal(pua_start + 3, utf8_to_ucs4(dict.available_private_utf8)) end end - specify "should fail after PUA is full" do + def test_pua_is_full make_temporary_dict(@original) do |dict| pua_start = Tomoe::Char::PRIVATE_USE_AREA_START pua_end = Tomoe::Char::PRIVATE_USE_AREA_END - utf8_to_ucs4(dict.available_private_utf8).should == pua_start + assert_equal(pua_start, utf8_to_ucs4(dict.available_private_utf8)) pua_start.upto(pua_end - 1) do |i| char = Tomoe::Char.new char.utf8 = ucs4_to_utf8(i) - dict.register(char).should == true + assert_true(dict.register(char)) end - utf8_to_ucs4(dict.available_private_utf8).should == pua_end + assert_equal(pua_end, utf8_to_ucs4(dict.available_private_utf8)) char = Tomoe::Char.new char.utf8 = ucs4_to_utf8(pua_end) - dict.register(char).should == true - dict.available_private_utf8.should_nil + assert_true(dict.register(char)) + assert_nil(dict.available_private_utf8) char = Tomoe::Char.new - dict.register(char).should == false + assert_false(dict.register(char)) end end - specify "should save/restore meta data" do + def test_meta_data make_temporary_dict(@original) do |dict| char = Tomoe::Char.new char.utf8 = "か" - char.should.not.have_meta_data + assert_false(char.has_meta_data?) char["meta1"] = "value1" char["meta2"] = "value2" - dict.register(char).should == true + assert_true(dict.register(char)) registered_char = dict["か"] - char.should.have_meta_data - registered_char["meta1"].should == "value1" - registered_char["meta2"].should == "value2" + assert_true(char.has_meta_data?) + assert_equal("value1", registered_char["meta1"]) + assert_equal("value2", registered_char["meta2"]) end end - specify "should support reading search" do + def test_reading_search make_temporary_dict(@original) do |dict| char = Tomoe::Char.new char.utf8 = "池" char.add_reading(Tomoe::Reading.new(Tomoe::Reading::JA_KUN, "いけ")) - dict.register(char).should == true + assert_true(dict.register(char)) query = Tomoe::Query.new query.add_reading(Tomoe::Reading.new(Tomoe::Reading::JA_KUN, "いけ")) - dict.search(query).collect do |cand| - cand.char.utf8 - end.should == ["池"] + assert_equal(["池"], + dict.search(query).collect do |cand| + cand.char.utf8 + end) end end - specify "should support n_strokes search" do + def test_n_strokes_search make_temporary_dict(@original) do |dict| char = Tomoe::Char.new char.utf8 = "池" char.n_strokes = 6 - dict.register(char).should == true + assert_true(dict.register(char)) query = Tomoe::Query.new query.min_n_strokes = 6 query.max_n_strokes = 6 - dict.search(query).collect do |cand| - cand.char.utf8 - end.should == ["池"] + assert_equal(["池"], + dict.search(query).collect do |cand| + cand.char.utf8 + end) query = Tomoe::Query.new query.min_n_strokes = 6 query.max_n_strokes = 7 - dict.search(query).collect do |cand| - cand.char.utf8 - end.should == ["池"] + assert_equal(["池"], + dict.search(query).collect do |cand| + cand.char.utf8 + end) query = Tomoe::Query.new query.min_n_strokes = 5 query.max_n_strokes = 6 - dict.search(query).collect do |cand| - cand.char.utf8 - end.should == ["池"] + assert_equal(["池"], + dict.search(query).collect do |cand| + cand.char.utf8 + end) query = Tomoe::Query.new query.min_n_strokes = 6 - dict.search(query).collect do |cand| - cand.char.utf8 - end.should == ["池"] + assert_equal(["池"], + dict.search(query).collect do |cand| + cand.char.utf8 + end) query = Tomoe::Query.new query.max_n_strokes = 6 - dict.search(query).collect do |cand| - cand.char.utf8 - end.sort.should == ["あ", "池"].sort + assert_equal(["あ", "池"].sort, + dict.search(query).collect do |cand| + cand.char.utf8 + end.sort) end end - specify "should support radical search" do + def test_radical_search make_temporary_dict(@original) do |dict| sanzui = ucs4_to_utf8(27701) # さんずい char = Tomoe::Char.new char.utf8 = "池" char.add_radical(sanzui) - dict.register(char).should == true + assert_true(dict.register(char)) query = Tomoe::Query.new query.add_radical(sanzui) - dict.search(query).collect do |cand| - cand.char.utf8 - end.should == ["池"] + assert_equal(["池"], + dict.search(query).collect do |cand| + cand.char.utf8 + end) end end - specify "should support variant search" do + def test_variant_search make_temporary_dict(@original) do |dict| hashigo_daka = ucs4_to_utf8(39641) # はしご高 char = Tomoe::Char.new char.utf8 = "高" char.variant = hashigo_daka - dict.register(char).should == true + assert_true(dict.register(char)) query = Tomoe::Query.new query.variant = hashigo_daka - dict.search(query).collect do |cand| - cand.char.utf8 - end.should == ["高"] + assert_equal(["高"], + dict.search(query).collect do |cand| + cand.char.utf8 + end) end end - specify "should support UTF8 search" do + def test_utf8_search make_temporary_dict(@original) do |dict| char = Tomoe::Char.new char.utf8 = "か" - dict.register(char).should == true + assert_true(dict.register(char)) query = Tomoe::Query.new query.utf8 = "か" - dict.search(query).collect do |cand| - cand.char.utf8 - end.should == ["か"] + assert_equal(["か"], + dict.search(query).collect do |cand| + cand.char.utf8 + end) end end + private def setup_strokes @strokes = [ [ @@ -335,7 +352,7 @@ file.close file.open - file.read.should == content + assert_equal(content, file.read) file.close end Modified: tomoe/trunk/test/test_writing.rb =================================================================== --- tomoe/trunk/test/test_writing.rb 2007-06-08 04:08:06 UTC (rev 1338) +++ tomoe/trunk/test/test_writing.rb 2007-06-08 04:33:08 UTC (rev 1339) @@ -1,7 +1,10 @@ -require 'tomoe-spec-utils' +require 'tomoe-test-utils' -context "Tomoe::Writing" do - setup do +class TestWriting < Test::Unit::TestCase + include TomoeTestUtils + + def setup + super @writing = Tomoe::Writing.new @strokes = [ [[51, 29], [177, 41]], @@ -22,12 +25,12 @@ end end - specify "should each all strokes" do - @writing.strokes.should == @strokes - @writing.collect{|stroke| stroke}.should == @strokes + def test_each + assert_equal(@strokes, @writing.strokes) + assert_equal(@strokes, @writing.collect{|stroke| stroke}) end - specify "should dump XML" do + def test_dump_xml xml = "" xml << " <strokes>\n" @strokes.each do |stroke| @@ -38,6 +41,6 @@ xml << " </stroke>\n" end xml << " </strokes>\n" - @writing.to_xml.should == xml + assert_equal(xml, @writing.to_xml) end end Modified: tomoe/trunk/test/tomoe-test-utils.rb =================================================================== --- tomoe/trunk/test/tomoe-test-utils.rb 2007-06-08 04:08:06 UTC (rev 1338) +++ tomoe/trunk/test/tomoe-test-utils.rb 2007-06-08 04:33:08 UTC (rev 1339) @@ -13,6 +13,7 @@ include Config include Dictionary include Unicode + include Assertions end end @@ -315,6 +316,16 @@ Uconv.u8tou4(utf8).unpack("I*")[0] end end + + module Assertions + def assert_true(actual, *args) + assert_equal(true, actual, *args) + end + + def assert_false(actual, *args) + assert_equal(false, actual, *args) + end + end end require 'tomoe' This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kt...@us...> - 2007-06-08 04:08:06
|
Revision: 1338 http://tomoe.svn.sourceforge.net/tomoe/?rev=1338&view=rev Author: ktou Date: 2007-06-07 21:08:06 -0700 (Thu, 07 Jun 2007) Log Message: ----------- * test/Makefile.am, test/run-test.sh: cleanup. Modified Paths: -------------- tomoe/trunk/ChangeLog tomoe/trunk/test/Makefile.am Removed Paths: ------------- tomoe/trunk/test/run-test.sh Modified: tomoe/trunk/ChangeLog =================================================================== --- tomoe/trunk/ChangeLog 2007-06-08 04:06:08 UTC (rev 1337) +++ tomoe/trunk/ChangeLog 2007-06-08 04:08:06 UTC (rev 1338) @@ -1,3 +1,10 @@ +2007-06-08 Kouhei Sutou <ko...@co...> + + * test/Makefile.am, test/run-test.sh: cleanup. + + * test/: used Test::Unit instead of RSpec because RSpec API is + changed! We will not use RSpec anymore. + 2007-06-08 Hiroyuki Ikezoe <poi...@ik...> * bindings/python/tomoe-module.c: Call pytomoe_add_constants(). Modified: tomoe/trunk/test/Makefile.am =================================================================== --- tomoe/trunk/test/Makefile.am 2007-06-08 04:06:08 UTC (rev 1337) +++ tomoe/trunk/test/Makefile.am 2007-06-08 04:08:06 UTC (rev 1338) @@ -23,9 +23,8 @@ SUBDIRS = data EXTRA_DIST = \ - run-spec.rb \ - run-specs.sh \ - run-test.sh \ + run-test.rb \ + run-tests.sh \ tomoe-spec-utils.rb \ char_spec.rb \ context_spec.rb \ Deleted: tomoe/trunk/test/run-test.sh =================================================================== --- tomoe/trunk/test/run-test.sh 2007-06-08 04:06:08 UTC (rev 1337) +++ tomoe/trunk/test/run-test.sh 2007-06-08 04:08:06 UTC (rev 1338) @@ -1,10 +0,0 @@ -#!/bin/sh - -base=`dirname $0` -make -C $base/.. > /dev/null || exit 1 - -RUBY=`(cd $base && make output_RUBY)` -for dict_module in `(cd $base && make output_dict_modules)`; do - echo "tests for $dict_module" - TOMOE_DICT_MODULE="$dict_module" $RUBY $base/run-spec.rb -done This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |