summaryrefslogtreecommitdiff
path: root/src/lib/evas/include
diff options
context:
space:
mode:
authorYoungbok Shin <youngb.shin@samsung.com>2017-09-25 18:34:22 +0900
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>2017-09-26 11:31:31 +0900
commit17504106501cec1a0a85eb380c5dea7e0ca3729c (patch)
tree942944734aa98b84c791206bdc6c5db1e084c3ae /src/lib/evas/include
parentbb887f9869c3dd9eca72c8e65f335d148f9dbdd3 (diff)
evas: Add scale feature for embedded bitmap fonts.
Summary: When evas selects a strike of embedded bitmap font, calculate ratio and use it for scaling embedded bitmap. @feature Reviewers: jpeg, tasn, woohyun, raster, herdsman Reviewed By: raster Subscribers: charlesmilette, Francesco149, cedric Differential Revision: https://phab.enlightenment.org/D2713
Diffstat (limited to '')
-rw-r--r--src/lib/evas/include/evas_common_private.h5
-rw-r--r--src/lib/evas/include/evas_private.h10
2 files changed, 9 insertions, 6 deletions
diff --git a/src/lib/evas/include/evas_common_private.h b/src/lib/evas/include/evas_common_private.h
index a4b3ae3623..12cda89d02 100644
--- a/src/lib/evas/include/evas_common_private.h
+++ b/src/lib/evas/include/evas_common_private.h
@@ -749,7 +749,7 @@ struct _RGBA_Draw_Context
749 struct { 749 struct {
750 void *(*gl_new) (void *data, RGBA_Font_Glyph *fg); 750 void *(*gl_new) (void *data, RGBA_Font_Glyph *fg);
751 void (*gl_free) (void *ext_dat); 751 void (*gl_free) (void *ext_dat);
752 void (*gl_draw) (void *data, void *dest, void *context, RGBA_Font_Glyph *fg, int x, int y); 752 void (*gl_draw) (void *data, void *dest, void *context, RGBA_Font_Glyph *fg, int x, int y, int w, int h);
753 void *(*gl_image_new) (void *gc, RGBA_Font_Glyph *fg, int alpha, Evas_Colorspace cspace); 753 void *(*gl_image_new) (void *gc, RGBA_Font_Glyph *fg, int alpha, Evas_Colorspace cspace);
754 void (*gl_image_free) (void *image); 754 void (*gl_image_free) (void *image);
755 void (*gl_image_draw) (void *gc, void *im, int dx, int dy, int dw, int dh, int smooth); 755 void (*gl_image_draw) (void *gc, void *im, int dx, int dy, int dw, int dh, int smooth);
@@ -1010,6 +1010,7 @@ struct _RGBA_Font_Int
1010 Eina_Hash *kerning; 1010 Eina_Hash *kerning;
1011 Fash_Glyph *fash; 1011 Fash_Glyph *fash;
1012 unsigned int size; 1012 unsigned int size;
1013 float scale_factor;
1013 int real_size; 1014 int real_size;
1014 int max_h; 1015 int max_h;
1015 int references; 1016 int references;
@@ -1033,6 +1034,8 @@ struct _RGBA_Font_Int
1033 1034
1034 int generation; 1035 int generation;
1035 1036
1037 Efl_Text_Font_Bitmap_Scalable bitmap_scalable;
1038
1036 unsigned char sizeok : 1; 1039 unsigned char sizeok : 1;
1037 unsigned char inuse : 1; 1040 unsigned char inuse : 1;
1038}; 1041};
diff --git a/src/lib/evas/include/evas_private.h b/src/lib/evas/include/evas_private.h
index 12419998de..02c93c54a8 100644
--- a/src/lib/evas/include/evas_private.h
+++ b/src/lib/evas/include/evas_private.h
@@ -1501,10 +1501,10 @@ struct _Evas_Func
1501 void *(*image_plane_assign) (void *data, void *image, int x, int y); 1501 void *(*image_plane_assign) (void *data, void *image, int x, int y);
1502 void (*image_plane_release) (void *data, void *image, void *plane); 1502 void (*image_plane_release) (void *data, void *image, void *plane);
1503 1503
1504 Evas_Font_Set *(*font_load) (void *engine, const char *name, int size, Font_Rend_Flags wanted_rend); 1504 Evas_Font_Set *(*font_load) (void *engine, const char *name, int size, Font_Rend_Flags wanted_rend, Efl_Text_Font_Bitmap_Scalable bitmap_scalable);
1505 Evas_Font_Set *(*font_memory_load) (void *engine, const char *source, const char *name, int size, const void *fdata, int fdata_size, Font_Rend_Flags wanted_rend); 1505 Evas_Font_Set *(*font_memory_load) (void *engine, const char *source, const char *name, int size, const void *fdata, int fdata_size, Font_Rend_Flags wanted_rend, Efl_Text_Font_Bitmap_Scalable bitmap_scalable);
1506 Evas_Font_Set *(*font_add) (void *engine, Evas_Font_Set *font, const char *name, int size, Font_Rend_Flags wanted_rend); 1506 Evas_Font_Set *(*font_add) (void *engine, Evas_Font_Set *font, const char *name, int size, Font_Rend_Flags wanted_rend, Efl_Text_Font_Bitmap_Scalable bitmap_scalable);
1507 Evas_Font_Set *(*font_memory_add) (void *engine, Evas_Font_Set *font, const char *source, const char *name, int size, const void *fdata, int fdata_size, Font_Rend_Flags wanted_rend); 1507 Evas_Font_Set *(*font_memory_add) (void *engine, Evas_Font_Set *font, const char *source, const char *name, int size, const void *fdata, int fdata_size, Font_Rend_Flags wanted_rend, Efl_Text_Font_Bitmap_Scalable bitmap_scalable);
1508 void (*font_free) (void *engine, Evas_Font_Set *font); 1508 void (*font_free) (void *engine, Evas_Font_Set *font);
1509 int (*font_ascent_get) (void *engine, Evas_Font_Set *font); 1509 int (*font_ascent_get) (void *engine, Evas_Font_Set *font);
1510 int (*font_descent_get) (void *engine, Evas_Font_Set *font); 1510 int (*font_descent_get) (void *engine, Evas_Font_Set *font);
@@ -1774,7 +1774,7 @@ void evas_font_desc_unref(Evas_Font_Description *fdesc);
1774int evas_font_desc_cmp(const Evas_Font_Description *a, const Evas_Font_Description *b); 1774int evas_font_desc_cmp(const Evas_Font_Description *a, const Evas_Font_Description *b);
1775Evas_Font_Description *evas_font_desc_ref(Evas_Font_Description *fdesc); 1775Evas_Font_Description *evas_font_desc_ref(Evas_Font_Description *fdesc);
1776const char *evas_font_lang_normalize(const char *lang); 1776const char *evas_font_lang_normalize(const char *lang);
1777void * evas_font_load(Evas *evas, Evas_Font_Description *fdesc, const char *source, Evas_Font_Size size); 1777void * evas_font_load(Evas *evas, Evas_Font_Description *fdesc, const char *source, Evas_Font_Size size, Efl_Text_Font_Bitmap_Scalable bitmap_scalable);
1778void evas_font_load_hinting_set(Evas *evas, void *font, int hinting); 1778void evas_font_load_hinting_set(Evas *evas, void *font, int hinting);
1779void evas_object_smart_member_cache_invalidate(Evas_Object *obj, Eina_Bool pass_events, Eina_Bool freeze_events, Eina_Bool sourve_invisible); 1779void evas_object_smart_member_cache_invalidate(Evas_Object *obj, Eina_Bool pass_events, Eina_Bool freeze_events, Eina_Bool sourve_invisible);
1780void evas_text_style_pad_get(Evas_Text_Style_Type style, int *l, int *r, int *t, int *b); 1780void evas_text_style_pad_get(Evas_Text_Style_Type style, int *l, int *r, int *t, int *b);