X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fruby%2Fgfx.c;h=3a5f60c03bd145c16134c799ce4b10dbce4d877a;hb=a755742b7593e496f3e415ef2caa4321a4150b1e;hp=ce11f02983bdba7fcdae11b219027cde59af8811;hpb=a725c3e28bafaf52cc45bdacf730b80edd83756d;p=swftools.git diff --git a/lib/ruby/gfx.c b/lib/ruby/gfx.c index ce11f02..3a5f60c 100644 --- a/lib/ruby/gfx.c +++ b/lib/ruby/gfx.c @@ -234,7 +234,7 @@ static VALUE image_has_alpha(VALUE cls) gfxcolor_t*data = image->image->data; int t; for(t=0;ta!=255) + if(data[t].a!=255) return Qtrue; } return Qfalse; @@ -378,6 +378,15 @@ static VALUE font_save_ttf(VALUE cls, VALUE _filename) return Qnil; } +static VALUE font_save_eot(VALUE cls, VALUE _filename) +{ + Get_Font(font,cls); + Check_Type(_filename, T_STRING); + const char*filename = StringValuePtr(_filename); + gfxfont_save_eot(font->font, filename); + return Qnil; +} + static VALUE font_kerning(VALUE cls) { Get_Font(font,cls); @@ -616,7 +625,8 @@ void rb_drawlink(gfxdevice_t*dev, gfxline_t*line, const char*action) HEAD volatile VALUE v_line = convert_line(line); volatile VALUE v_action = rb_tainted_str_new2(action); - forward(v, id_drawlink, v_line, v_action); + + forward(v, id_drawlink, 2, v_line, v_action); } void rb_endpage(gfxdevice_t*dev) { @@ -757,6 +767,7 @@ void Init_gfx() imagedriver = gfxsource_image_create(); GFX = rb_define_module("GFX"); + rb_define_const(GFX, "VERSION", INT2FIX(20100309)); rb_define_module_function(GFX, "setparameter", gfx_setparameter, 2); @@ -795,6 +806,7 @@ void Init_gfx() rb_define_method(Font, "kerning", font_kerning, 0); rb_define_method(Font, "get_kerning_table", font_kerning, 0); rb_define_method(Font, "save_ttf", font_save_ttf, 1); + rb_define_method(Font, "save_eot", font_save_eot, 1); Device = rb_define_class_under(GFX, "Device", rb_cObject); rb_define_method(Device, "startpage", noop, -1);