bitmap_t* bm; // the actual bitmaps
bitmap_t* bm_o;
bitmap_t* bm_s;
- FT_BBox bbox_scaled; // bbox after scaling, but before rotation
- FT_Vector advance; // 26.6, advance distance to the next bitmap in line
} bitmap_hash_val_t;
void ass_bitmap_cache_init(void);
if (text_info->glyphs[i].hash_key.frx == 0 &&
text_info->glyphs[i].hash_key.fry == 0 &&
text_info->glyphs[i].hash_key.frz == 0) {
- hash_val.bbox_scaled = text_info->glyphs[i].bbox;
hash_val.bm_o = text_info->glyphs[i].bm_o;
hash_val.bm = text_info->glyphs[i].bm;
hash_val.bm_s = text_info->glyphs[i].bm_s;
- hash_val.advance.x = text_info->glyphs[i].advance.x;
- hash_val.advance.y = text_info->glyphs[i].advance.y;
cache_add_bitmap(&(text_info->glyphs[i].hash_key), &hash_val);
}
info->bm = val->bm;
info->bm_o = val->bm_o;
info->bm_s = val->bm_s;
- info->bbox = val->bbox_scaled;
- info->advance.x = val->advance.x;
- info->advance.y = val->advance.y;
} else
info->bm = info->bm_o = info->bm_s = 0;
}