diff libvo/sub.c @ 726:2cbe922e2f3c

Deal with unicode subs (-unicode -nounicode).
author atmosfear
date Tue, 08 May 2001 19:40:10 +0000
parents 8a7666a78f83
children b25a887b6054
line wrap: on
line diff
--- a/libvo/sub.c	Tue May 08 19:39:21 2001 +0000
+++ b/libvo/sub.c	Tue May 08 19:40:10 2001 +0000
@@ -89,6 +89,7 @@
 }
 
 subtitle* vo_sub=NULL;
+int sub_unicode=0;
 
 void vo_draw_text_sub(int dxs,int dys,void (*draw_alpha)(int x0,int y0, int w,int h, unsigned char* src, unsigned char *srca, int stride)){
     int i;
@@ -105,7 +106,7 @@
 
         for(j=0;j<len;j++){
           int c=text[j];
-          int w = vo_font->width[(c<0x80)?c:(c<<8)+text[++j]];
+          int w = vo_font->width[sub_unicode?((c<0x80)?c:(c<<8)+text[++j]):c];
           if(w>100) printf("gazvan: %d (%d=%c)\n",w,c,c);
           xsize+=w+vo_font->charspace;
         }
@@ -118,7 +119,7 @@
         for(j=0;j<len;j++){
           int c=text[j];
           int font;
-          if (c>=0x80) c=(c<<8)+text[++j];
+          if (sub_unicode && (c>=0x80)) c=(c<<8)+text[++j];
           font = vo_font->font[c];
           if(x>=0 && x+vo_font->width[c]<dxs)
           if(font>=0)