Hidetaka Iwai
tyuyu****@debia*****
2005年 5月 4日 (水) 00:47:01 JST
岩井です。 KANOU Hiroki <kanou****@khdd*****> wrote: Message-ID: <20050****@lists*****> > ・エラーチェック > 3/3 CLWFK を呼ぶときに、ストロークの点の個数を確認 > kozato に点が 3 つしかないとか。 とりあえず、これだけ実装しました。といっても単に stderr にエラーメッセー ジを吐いて戻るだけです(^^; 足りない点を自動的に補ってくれると理想的な んですが... > ・バグ (snip) > 1/3 プリミティブ「象」が正しく読み込めない prim-sample.l の「象」は一応書かれている通りに読み込まれているように見 えますが、正しく読み込めない、というのはどのような状況でしょうか? regards, -- Hidetaka Iwai tyuyu****@debia***** -------------- next part -------------- diff -urN fontforge-20050310.orig/fontforge/cvexport.c fontforge-20050310/fontforge/cvexport.c --- fontforge-20050310.orig/fontforge/cvexport.c 2005-05-04 00:13:24.000000000 +0900 +++ fontforge-20050310/fontforge/cvexport.c 2005-05-04 00:13:47.000000000 +0900 @@ -111,7 +111,7 @@ fprintf(skel, "%s", " ("); for ( spl=sc->layers[ly_fore].splines; spl!=NULL; spl=spl->next ) { - int nJoints=0; + int nJoints=0, nPoints = 0; if ( spl->stroketype>=sk_kamae ) continue; fprintf(skel, "%s(%s (", spl==sc->layers[ly_fore].splines?"":" ", @@ -122,11 +122,20 @@ joints[nJoints++] = BPIndex(me,points,numPoints); } else { fprintf(skel, "%d", BPIndex(me,points,numPoints)); + nPoints++; if ( sp->next!=NULL && sp->next->to!=spl->first ) fputc(' ', skel); } } fprintf(skel, ")"); + + if(nPoints < num_points_in_strokes[spl->stroketype]) { + fprintf(stderr, "Failed to export skeleton, because %s needs %d points but there are %d points\n", + stroketypes[spl->stroketype], + num_points_in_strokes[spl->stroketype], + nPoints); + return(0); + } if (nJoints > 0) { fprintf(skel, " (link "); for ( i=0; i<nJoints; i++ ) {