summaryrefslogtreecommitdiffstats
path: root/libvo/vo_aa.c
diff options
context:
space:
mode:
authorpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-08-29 17:35:21 +0000
committerpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-08-29 17:35:21 +0000
commit4d85b357f81cbe50138119298a6bf95eb7bd1a84 (patch)
tree7e410bd8d0472784fa377a04343adc64ac9dd6e2 /libvo/vo_aa.c
parent6247d6be7a2be84da65a311bd21a19fd84c25362 (diff)
downloadmpv-4d85b357f81cbe50138119298a6bf95eb7bd1a84.tar.bz2
mpv-4d85b357f81cbe50138119298a6bf95eb7bd1a84.tar.xz
add Jindrich Makovicka <makovick@KMLinux.fjfi.cvut.cz> freetype patch
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@7141 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libvo/vo_aa.c')
-rw-r--r--libvo/vo_aa.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/libvo/vo_aa.c b/libvo/vo_aa.c
index b14f0a9dfd..9c4d4d6b45 100644
--- a/libvo/vo_aa.c
+++ b/libvo/vo_aa.c
@@ -256,6 +256,10 @@ config(uint32_t width, uint32_t height, uint32_t d_width,
vo_font->pic_a[0]=malloc(sizeof(raw_file));
vo_font->pic_b[0]=malloc(sizeof(raw_file));
+#ifdef HAVE_FREETYPE
+ vo_font->dynamic = 0;
+#endif
+
vo_font->spacewidth=1;
vo_font->charspace=0;
vo_font->height=1;
@@ -530,10 +534,15 @@ uninit(void) {
#ifdef USE_OSD
static void draw_alpha(int x,int y, int w,int h, unsigned char* src, unsigned char *srca, int stride){
-
- c->textbuffer[x + y*aa_scrwidth(c)] = src[0];
- c->attrbuffer[x + y*aa_scrwidth(c)] = aaopt_subcolor;
-
+ int i,j;
+ for (i = 0; i < h; i++) {
+ for (j = 0; j < w; j++) {
+ if (src[i*stride+j] > 0) {
+ c->textbuffer[x + j + (y+i)*aa_scrwidth(c)] = src[i*stride+j];
+ c->attrbuffer[x + j + (y+i)*aa_scrwidth(c)] = aaopt_subcolor;
+ }
+ }
+ }
}
static void clear_alpha(int x0,int y0, int w,int h) {