diff options
author | arpi_esp <arpi_esp@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2001-03-29 16:39:37 +0000 |
---|---|---|
committer | arpi_esp <arpi_esp@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2001-03-29 16:39:37 +0000 |
commit | dcb0840e674d5bcb768259f1c5af7e44761113aa (patch) | |
tree | 149169eafc3f07e8851c41e1f0de268e15029a35 /libvo | |
parent | 4eff90e3800079ebe14b125d518f6abd773d368f (diff) | |
download | mpv-dcb0840e674d5bcb768259f1c5af7e44761113aa.tar.bz2 mpv-dcb0840e674d5bcb768259f1c5af7e44761113aa.tar.xz |
optimized alpha resampling
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@251 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libvo')
-rw-r--r-- | libvo/font_load.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/libvo/font_load.c b/libvo/font_load.c index 184349000f..cbe44a5b77 100644 --- a/libvo/font_load.c +++ b/libvo/font_load.c @@ -210,21 +210,22 @@ for(i=0;i<=fontdb;i++){ int x=desc->pic_a[i]->bmp[j]; int y=desc->pic_b[i]->bmp[j]; - x=((x*f)>>8); // scale - if(x<0) x=0; else if(x>255) x=255; - x^=255; // invert - + x=255-((x*f)>>8); // scale + //if(x<0) x=0; else if(x>255) x=255; + //x^=255; // invert + if(x+y>255) x=255-y; // to avoid overflows //x=0; //x=((x*f*(255-y))>>16); //x=((x*f*(255-y))>>16)+y; //x=(x*f)>>8;if(x<y) x=y; - + if(x<1) x=1; else if(x>=252) x=0; - + desc->pic_a[i]->bmp[j]=x; +// desc->pic_b[i]->bmp[j]=0; // hack } printf("DONE!\n"); } |