# HG changeset patch # User arpi # Date 999366991 0 # Node ID 33035a1d897e71ae2c2f43ab3b3a9e562843d995 # Parent a6c67352ccacd211d48f6c95ebbd98f2af0c26ff small fixes, and Y check put back to avoid sig11 diff -r a6c67352ccac -r 33035a1d897e libvo/sub.c --- a/libvo/sub.c Sat Sep 01 17:53:07 2001 +0000 +++ b/libvo/sub.c Sat Sep 01 17:56:31 2001 +0000 @@ -162,7 +162,10 @@ while (l--){ t=vo_sub->text[i++]; len=strlen(t)-1; - + + printf("sub(%d) '%s'\n",len,t); +// if(len<0) memy -=h; // according to max of vo_font->pic_a[font]->h +// else for (j=0;j<=len;j++){ if ((c=t[j])>=0x80){ if (sub_unicode) @@ -184,11 +187,21 @@ lastk=k; lastStripPosition=j; lastxsize=xsize; - } else if ((font=vo_font->font[c])>=0){ + } +#if 1 + else if ((font=vo_font->font[c])>=0){ if (vo_font->pic_a[font]->h > h){ h=vo_font->pic_a[font]->h; } } +#endif +#if 0 + else if ((font=vo_font->font[c])>=0){ + if ((memy-h)+vo_font->pic_a[font]->h > dys){ + h=vo_font->pic_a[font]->h; + } + } +#endif xsize+=vo_font->width[c]+vo_font->charspace; if (dxs0){ @@ -216,21 +229,24 @@ lasth=h; h=vo_font->height; } + printf("h: %d -> %d \n",vo_font->height,h); memy -=h; // according to max of vo_font->pic_a[font]->h } } } y = memy; + +// printf("lines=%d y=%d\n",lines,y); i=j=0; l=lines; - while (l--){ + while (ifont[c])>=0) + if ((font=vo_font->font[c])>=0 && ywidth[c], - vo_font->pic_a[font]->h, + vo_font->pic_a[font]->h+ypic_a[font]->h : dys-y, vo_font->pic_b[font]->bmp+vo_font->start[c], vo_font->pic_a[font]->bmp+vo_font->start[c], vo_font->pic_a[font]->w);