X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fruby%2Fgfx.c;h=641388fcb59f7abd7a473dd5ade15b6e990dc9b7;hb=c10fb05b68fa1c717ef7d62d84bfb29008d41c33;hp=958ce405e21dddea5a2b64f6b0c2ec523cf97834;hpb=8e7a42a2c252dcad56aa9e05bd4025c16c558e2c;p=swftools.git diff --git a/lib/ruby/gfx.c b/lib/ruby/gfx.c index 958ce40..641388f 100644 --- a/lib/ruby/gfx.c +++ b/lib/ruby/gfx.c @@ -215,6 +215,9 @@ static VALUE image_rescale(VALUE cls, VALUE _width, VALUE _height) Get_Image(image2,v_image2) image2->doc = image->doc; image2->image = gfximage_rescale(image->image, width, height); + if(!image2->image) { + rb_raise(rb_eArgError, "Can't rescale to size %dx%d", width, height); + } return v_image2; } static VALUE image_save_jpeg(VALUE cls, VALUE _filename, VALUE quality) @@ -347,6 +350,23 @@ static VALUE font_glyphs(VALUE cls) return font->glyph_array; } +static VALUE font_kerning(VALUE cls) +{ + Get_Font(font,cls); + gfxkerning_t*kerning = font->font->kerning; + int kerning_size = font->font->kerning_size; + volatile VALUE a = rb_ary_new2(kerning_size); + int t; + for(t=0;t