cairo 1.10.2 → 1.12.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of cairo might be problematic. Click here for more details.
- data/AUTHORS +4 -1
- data/Gemfile +1 -11
- data/NEWS +28 -0
- data/README.rdoc +3 -2
- data/Rakefile +5 -46
- data/ext/cairo/cairo.def +9 -0
- data/ext/cairo/rb_cairo.h +7 -2
- data/ext/cairo/rb_cairo_constants.c +43 -7
- data/ext/cairo/rb_cairo_context.c +1 -1
- data/ext/cairo/rb_cairo_device.c +31 -5
- data/ext/cairo/rb_cairo_exception.c +21 -1
- data/ext/cairo/rb_cairo_pattern.c +579 -1
- data/ext/cairo/rb_cairo_surface.c +159 -7
- data/test/test_raster_source_pattern.rb +148 -0
- data/test/test_recording_surface.rb +2 -4
- data/test/test_xml_surface.rb +2 -1
- metadata +64 -106
@@ -5,7 +5,7 @@
|
|
5
5
|
* $Author: kou $
|
6
6
|
* $Date: 2008-11-01 14:23:14 $
|
7
7
|
*
|
8
|
-
* Copyright 2005-
|
8
|
+
* Copyright 2005-2012 Kouhei Sutou <kou@cozmixng.org>
|
9
9
|
* Copyright 2005 Øyvind Kolås <pippin@freedesktop.org>
|
10
10
|
* Copyright 2004-2005 MenTaLguY <mental@rydia.com>
|
11
11
|
*
|
@@ -54,7 +54,11 @@ enum ruby_value_type {
|
|
54
54
|
# include <cairo-tee.h>
|
55
55
|
#endif
|
56
56
|
|
57
|
-
#
|
57
|
+
#if defined(CAIRO_HAS_GL_SURFACE) || defined(CAIRO_HAS_GLESV2_SURFACE)
|
58
|
+
# define RB_CAIRO_HAS_GL_SURFACE
|
59
|
+
#endif
|
60
|
+
|
61
|
+
#ifdef RB_CAIRO_HAS_GL_SURFACE
|
58
62
|
# include <cairo-gl.h>
|
59
63
|
#endif
|
60
64
|
|
@@ -80,6 +84,7 @@ VALUE rb_cCairo_TeeSurface = Qnil;
|
|
80
84
|
VALUE rb_cCairo_XMLSurface = Qnil;
|
81
85
|
VALUE rb_cCairo_SkiaSurface = Qnil;
|
82
86
|
VALUE rb_cCairo_SubSurface = Qnil;
|
87
|
+
VALUE rb_cCairo_CoglSurface = Qnil;
|
83
88
|
|
84
89
|
static ID cr_id_parse;
|
85
90
|
static ID cr_id_size;
|
@@ -187,6 +192,11 @@ cr_surface_get_klass (cairo_surface_t *surface)
|
|
187
192
|
case CAIRO_SURFACE_TYPE_SUBSURFACE:
|
188
193
|
klass = rb_cCairo_SubSurface;
|
189
194
|
break;
|
195
|
+
#endif
|
196
|
+
#if CAIRO_CHECK_VERSION(1, 11, 4)
|
197
|
+
case CAIRO_SURFACE_TYPE_COGL:
|
198
|
+
klass = rb_cCairo_CoglSurface;
|
199
|
+
break;
|
190
200
|
#endif
|
191
201
|
default:
|
192
202
|
klass = rb_cCairo_Surface;
|
@@ -310,8 +320,12 @@ yield_and_finish (VALUE self)
|
|
310
320
|
rb_yield (self);
|
311
321
|
|
312
322
|
surface = _SELF;
|
313
|
-
if (
|
314
|
-
|
323
|
+
if (cairo_surface_status (surface) != CAIRO_STATUS_SUCCESS)
|
324
|
+
return;
|
325
|
+
if (cairo_surface_get_user_data (surface, &cr_finished_key))
|
326
|
+
return;
|
327
|
+
|
328
|
+
cr_surface_finish (self);
|
315
329
|
}
|
316
330
|
|
317
331
|
static VALUE
|
@@ -344,6 +358,94 @@ cr_surface_create_similar (int argc, VALUE *argv, VALUE self)
|
|
344
358
|
return CRSURFACE2RVAL_WITH_DESTROY (similar_surface);
|
345
359
|
}
|
346
360
|
|
361
|
+
#if CAIRO_CHECK_VERSION(1, 11, 4)
|
362
|
+
static VALUE
|
363
|
+
cr_surface_create_similar_image (int argc, VALUE *argv, VALUE self)
|
364
|
+
{
|
365
|
+
cairo_surface_t *surface, *similar_image;
|
366
|
+
cairo_format_t format;
|
367
|
+
int width, height;
|
368
|
+
VALUE arg1, arg2, arg3;
|
369
|
+
|
370
|
+
rb_scan_args (argc, argv, "21", &arg1, &arg2, &arg3);
|
371
|
+
|
372
|
+
surface = _SELF;
|
373
|
+
if (argc == 2)
|
374
|
+
{
|
375
|
+
if (cairo_surface_get_type (surface) == CAIRO_SURFACE_TYPE_IMAGE)
|
376
|
+
{
|
377
|
+
format = cairo_image_surface_get_format (surface);
|
378
|
+
}
|
379
|
+
else
|
380
|
+
{
|
381
|
+
format = CAIRO_FORMAT_ARGB32;
|
382
|
+
}
|
383
|
+
width = NUM2INT (arg1);
|
384
|
+
height = NUM2INT (arg2);
|
385
|
+
}
|
386
|
+
else
|
387
|
+
{
|
388
|
+
format = RVAL2CRFORMAT (arg1);
|
389
|
+
width = NUM2INT (arg2);
|
390
|
+
height = NUM2INT (arg3);
|
391
|
+
}
|
392
|
+
|
393
|
+
similar_image = cairo_surface_create_similar_image (surface, format,
|
394
|
+
width, height);
|
395
|
+
cr_surface_check_status (similar_image);
|
396
|
+
return CRSURFACE2RVAL_WITH_DESTROY (similar_image);
|
397
|
+
}
|
398
|
+
|
399
|
+
static VALUE
|
400
|
+
cr_surface_map_to_image (int argc, VALUE *argv, VALUE self)
|
401
|
+
{
|
402
|
+
cairo_surface_t *surface, *mapped_image;
|
403
|
+
cairo_rectangle_int_t extents_value;
|
404
|
+
cairo_rectangle_int_t *extents = NULL;
|
405
|
+
VALUE rb_extents;
|
406
|
+
|
407
|
+
rb_scan_args (argc, argv, "01", &rb_extents);
|
408
|
+
|
409
|
+
surface = _SELF;
|
410
|
+
if (!NIL_P (rb_extents))
|
411
|
+
{
|
412
|
+
extents = &extents_value;
|
413
|
+
if (rb_cairo__is_kind_of (rb_extents, rb_cCairo_Rectangle))
|
414
|
+
{
|
415
|
+
extents->x = NUM2INT (rb_iv_get (rb_extents, "@x"));
|
416
|
+
extents->y = NUM2INT (rb_iv_get (rb_extents, "@y"));
|
417
|
+
extents->width = NUM2INT (rb_iv_get (rb_extents, "@width"));
|
418
|
+
extents->height = NUM2INT (rb_iv_get (rb_extents, "@height"));
|
419
|
+
}
|
420
|
+
else
|
421
|
+
{
|
422
|
+
VALUE *values;
|
423
|
+
rb_extents = rb_convert_type (rb_extents, T_ARRAY, "Array", "to_ary");
|
424
|
+
values = RARRAY_PTR (rb_extents);
|
425
|
+
extents->x = NUM2INT (values[0]);
|
426
|
+
extents->y = NUM2INT (values[1]);
|
427
|
+
extents->height = NUM2INT (values[2]);
|
428
|
+
extents->width = NUM2INT (values[3]);
|
429
|
+
}
|
430
|
+
}
|
431
|
+
|
432
|
+
mapped_image = cairo_surface_map_to_image (surface, extents);
|
433
|
+
cr_surface_check_status (mapped_image);
|
434
|
+
return CRSURFACE2RVAL_WITH_DESTROY (mapped_image);
|
435
|
+
}
|
436
|
+
|
437
|
+
static VALUE
|
438
|
+
cr_surface_unmap_image (VALUE self, VALUE rb_mapped_image)
|
439
|
+
{
|
440
|
+
cairo_surface_t *surface, *mapped_image;
|
441
|
+
|
442
|
+
surface = _SELF;
|
443
|
+
mapped_image = RVAL2CRSURFACE (rb_mapped_image);
|
444
|
+
cairo_surface_unmap_image (surface, mapped_image);
|
445
|
+
return Qnil;
|
446
|
+
}
|
447
|
+
#endif
|
448
|
+
|
347
449
|
#if CAIRO_CHECK_VERSION(1, 10, 0)
|
348
450
|
static VALUE
|
349
451
|
cr_surface_destroy_with_destroy_check (VALUE self)
|
@@ -477,6 +579,21 @@ cr_surface_set_mime_data (VALUE self, VALUE rb_mime_type, VALUE rb_data)
|
|
477
579
|
}
|
478
580
|
#endif
|
479
581
|
|
582
|
+
#if CAIRO_CHECK_VERSION(1, 11, 4)
|
583
|
+
static VALUE
|
584
|
+
cr_surface_supported_mime_type_p (VALUE self, VALUE rb_mime_type)
|
585
|
+
{
|
586
|
+
cairo_surface_t *surface;
|
587
|
+
const char *mime_type;
|
588
|
+
cairo_bool_t supported_p;
|
589
|
+
|
590
|
+
surface = _SELF;
|
591
|
+
mime_type = StringValueCStr (rb_mime_type);
|
592
|
+
supported_p = cairo_surface_supports_mime_type (surface, mime_type);
|
593
|
+
return CBOOL2RVAL (supported_p);
|
594
|
+
}
|
595
|
+
#endif
|
596
|
+
|
480
597
|
static VALUE
|
481
598
|
cr_surface_get_font_options (VALUE self)
|
482
599
|
{
|
@@ -807,6 +924,24 @@ cr_recording_surface_get_ink_extents (VALUE self)
|
|
807
924
|
rb_float_new (x), rb_float_new (y),
|
808
925
|
rb_float_new (width), rb_float_new (height));
|
809
926
|
}
|
927
|
+
|
928
|
+
# if CAIRO_CHECK_VERSION(1, 11, 4)
|
929
|
+
static VALUE
|
930
|
+
cr_recording_surface_get_extents (VALUE self)
|
931
|
+
{
|
932
|
+
cairo_surface_t *surface;
|
933
|
+
cairo_rectangle_t extents;
|
934
|
+
|
935
|
+
surface = _SELF;
|
936
|
+
cairo_recording_surface_get_extents (surface, &extents);
|
937
|
+
cr_surface_check_status (surface);
|
938
|
+
return rb_ary_new3 (4,
|
939
|
+
rb_float_new (extents.x),
|
940
|
+
rb_float_new (extents.y),
|
941
|
+
rb_float_new (extents.width),
|
942
|
+
rb_float_new (extents.height));
|
943
|
+
}
|
944
|
+
# endif
|
810
945
|
#endif
|
811
946
|
|
812
947
|
/* Printing surfaces */
|
@@ -1457,14 +1592,14 @@ cr_tee_surface_array_reference (VALUE self, VALUE index)
|
|
1457
1592
|
|
1458
1593
|
surface = _SELF;
|
1459
1594
|
index = rb_Integer (index);
|
1460
|
-
target = cairo_tee_surface_index (surface,
|
1595
|
+
target = cairo_tee_surface_index (surface, NUM2UINT (index));
|
1461
1596
|
cr_surface_check_status (surface);
|
1462
1597
|
cr_surface_check_status (target);
|
1463
1598
|
return CRSURFACE2RVAL (target);
|
1464
1599
|
}
|
1465
1600
|
#endif
|
1466
1601
|
|
1467
|
-
#ifdef
|
1602
|
+
#ifdef RB_CAIRO_HAS_GL_SURFACE
|
1468
1603
|
static VALUE
|
1469
1604
|
cr_gl_surface_initialize (int argc, VALUE *argv, VALUE self)
|
1470
1605
|
{
|
@@ -1621,6 +1756,14 @@ Init_cairo_surface (void)
|
|
1621
1756
|
|
1622
1757
|
rb_define_method (rb_cCairo_Surface, "create_similar",
|
1623
1758
|
cr_surface_create_similar, -1);
|
1759
|
+
#if CAIRO_CHECK_VERSION(1, 11, 4)
|
1760
|
+
rb_define_method (rb_cCairo_Surface, "create_similar_image",
|
1761
|
+
cr_surface_create_similar_image, -1);
|
1762
|
+
rb_define_method (rb_cCairo_Surface, "map_to_image",
|
1763
|
+
cr_surface_map_to_image, -1);
|
1764
|
+
rb_define_method (rb_cCairo_Surface, "unmap_image",
|
1765
|
+
cr_surface_unmap_image, 1);
|
1766
|
+
#endif
|
1624
1767
|
#if CAIRO_CHECK_VERSION(1, 10, 0)
|
1625
1768
|
rb_define_method (rb_cCairo_Surface, "sub_rectangle_surface",
|
1626
1769
|
cr_surface_create_sub_rectangle_surface, 4);
|
@@ -1637,6 +1780,11 @@ Init_cairo_surface (void)
|
|
1637
1780
|
rb_define_method (rb_cCairo_Surface, "set_mime_data",
|
1638
1781
|
cr_surface_set_mime_data, 2);
|
1639
1782
|
#endif
|
1783
|
+
#if CAIRO_CHECK_VERSION(1, 11, 4)
|
1784
|
+
rb_define_method (rb_cCairo_Surface, "supported_mime_type?",
|
1785
|
+
cr_surface_supported_mime_type_p, 1);
|
1786
|
+
#endif
|
1787
|
+
|
1640
1788
|
|
1641
1789
|
rb_define_method (rb_cCairo_Surface, "font_options",
|
1642
1790
|
cr_surface_get_font_options, 0);
|
@@ -1699,6 +1847,10 @@ Init_cairo_surface (void)
|
|
1699
1847
|
|
1700
1848
|
rb_define_method (rb_cCairo_RecordingSurface, "ink_extents",
|
1701
1849
|
cr_recording_surface_get_ink_extents, 0);
|
1850
|
+
# if CAIRO_CHECK_VERSION(1, 11, 4)
|
1851
|
+
rb_define_method (rb_cCairo_RecordingSurface, "extents",
|
1852
|
+
cr_recording_surface_get_extents, 0);
|
1853
|
+
# endif
|
1702
1854
|
#endif
|
1703
1855
|
|
1704
1856
|
#define INIT_SURFACE(type, name) \
|
@@ -1857,7 +2009,7 @@ Init_cairo_surface (void)
|
|
1857
2009
|
RB_CAIRO_DEF_SETTERS (rb_cCairo_TeeSurface);
|
1858
2010
|
#endif
|
1859
2011
|
|
1860
|
-
#ifdef
|
2012
|
+
#ifdef RB_CAIRO_HAS_GL_SURFACE
|
1861
2013
|
rb_cCairo_GLSurface =
|
1862
2014
|
rb_define_class_under (rb_mCairo, "GLSurface", rb_cCairo_Surface);
|
1863
2015
|
|
@@ -0,0 +1,148 @@
|
|
1
|
+
require "cairo"
|
2
|
+
require "tempfile"
|
3
|
+
|
4
|
+
class RasterPatternSourceTest < Test::Unit::TestCase
|
5
|
+
include CairoTestUtils
|
6
|
+
|
7
|
+
def test_acquire_and_release
|
8
|
+
Cairo::ImageSurface.new(100, 100) do |surface|
|
9
|
+
Cairo::Context.new(surface) do |context|
|
10
|
+
context.set_source(1, 1, 1)
|
11
|
+
context.paint
|
12
|
+
|
13
|
+
called = []
|
14
|
+
red_pattern = Cairo::RasterSourcePattern.new(100, 100)
|
15
|
+
red_pattern.acquire do |pattern, target, extents|
|
16
|
+
called << :acquire
|
17
|
+
red_image = target.create_similar_image(extents.width, extents.height)
|
18
|
+
red_image.set_device_offset(extents.x, extents.y)
|
19
|
+
Cairo::Context.new(red_image) do |red_image_context|
|
20
|
+
red_image_context.set_source(1, 0, 0)
|
21
|
+
red_image_context.paint
|
22
|
+
end
|
23
|
+
red_image
|
24
|
+
end
|
25
|
+
red_pattern.release do |pattern, surface|
|
26
|
+
called << :release
|
27
|
+
surface.finish
|
28
|
+
end
|
29
|
+
context.set_source(red_pattern)
|
30
|
+
context.rectangle(40, 40, 20, 20)
|
31
|
+
context.fill
|
32
|
+
assert_equal([:acquire, :release], called)
|
33
|
+
end
|
34
|
+
show_result(surface)
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
class SnapshotTest < self
|
39
|
+
def test_success
|
40
|
+
Cairo::RecordingSurface.new(0, 0, 100, 100) do |surface|
|
41
|
+
Cairo::Context.new(surface) do |context|
|
42
|
+
called = []
|
43
|
+
raster_source = Cairo::RasterSourcePattern.new(100, 100)
|
44
|
+
raster_source.snapshot do |pattern|
|
45
|
+
called << :snapshot
|
46
|
+
end
|
47
|
+
context.set_source(raster_source)
|
48
|
+
context.rectangle(40, 40, 20, 20)
|
49
|
+
context.fill
|
50
|
+
assert_equal([:snapshot], called)
|
51
|
+
end
|
52
|
+
show_result(surface)
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
def test_error
|
57
|
+
Cairo::RecordingSurface.new(0, 0, 100, 100) do |surface|
|
58
|
+
Cairo::Context.new(surface) do |context|
|
59
|
+
called = []
|
60
|
+
raster_source = Cairo::RasterSourcePattern.new(100, 100)
|
61
|
+
raster_source.snapshot do |pattern|
|
62
|
+
called << :snapshot
|
63
|
+
raise NoMemoryError
|
64
|
+
end
|
65
|
+
context.set_source(raster_source)
|
66
|
+
context.rectangle(40, 40, 20, 20)
|
67
|
+
assert_raise(NoMemoryError) do
|
68
|
+
context.fill
|
69
|
+
end
|
70
|
+
assert_equal([:snapshot], called)
|
71
|
+
end
|
72
|
+
show_result(surface)
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
class CopyTest < self
|
78
|
+
def test_success
|
79
|
+
output = StringIO.new
|
80
|
+
device = Cairo::ScriptDevice.new(output)
|
81
|
+
Cairo::ScriptSurface.new(device, 100, 200) do |surface|
|
82
|
+
Cairo::Context.new(surface) do |context|
|
83
|
+
called = []
|
84
|
+
|
85
|
+
raster_source = Cairo::RasterSourcePattern.new(100, 100)
|
86
|
+
raster_source.acquire do |pattern, target, extents|
|
87
|
+
called << :acquire
|
88
|
+
red_image = target.create_similar_image(extents.width,
|
89
|
+
extents.height)
|
90
|
+
red_image.set_device_offset(extents.x, extents.y)
|
91
|
+
Cairo::Context.new(red_image) do |red_image_context|
|
92
|
+
red_image_context.set_source(1, 0, 0)
|
93
|
+
red_image_context.paint
|
94
|
+
end
|
95
|
+
red_image
|
96
|
+
end
|
97
|
+
raster_source.release do |pattern, surface|
|
98
|
+
called << :release
|
99
|
+
surface.finish
|
100
|
+
end
|
101
|
+
raster_source.copy do |pattern|
|
102
|
+
called << :copy
|
103
|
+
end
|
104
|
+
|
105
|
+
context.set_source(raster_source)
|
106
|
+
context.rectangle(40, 40, 20, 20)
|
107
|
+
context.fill
|
108
|
+
|
109
|
+
assert_equal([:copy, :acquire, :release], called)
|
110
|
+
end
|
111
|
+
show_result(surface)
|
112
|
+
end
|
113
|
+
end
|
114
|
+
|
115
|
+
def test_error
|
116
|
+
output = StringIO.new
|
117
|
+
device = Cairo::ScriptDevice.new(output)
|
118
|
+
Cairo::ScriptSurface.new(device, 100, 200) do |surface|
|
119
|
+
Cairo::Context.new(surface) do |context|
|
120
|
+
called = []
|
121
|
+
|
122
|
+
raster_source = Cairo::RasterSourcePattern.new(100, 100)
|
123
|
+
raster_source.copy do |pattern|
|
124
|
+
called << :copy
|
125
|
+
raise NoMemoryError
|
126
|
+
end
|
127
|
+
|
128
|
+
context.set_source(raster_source)
|
129
|
+
context.rectangle(40, 40, 20, 20)
|
130
|
+
assert_raise(NoMemoryError) do
|
131
|
+
context.fill
|
132
|
+
end
|
133
|
+
|
134
|
+
assert_equal([:copy], called)
|
135
|
+
end
|
136
|
+
show_result(surface)
|
137
|
+
end
|
138
|
+
end
|
139
|
+
end
|
140
|
+
|
141
|
+
private
|
142
|
+
def show_result(image_surface)
|
143
|
+
return if ENV["RCAIRO_TEST_SHOW_RESULT"] != "yes"
|
144
|
+
result = Tempfile.new("result")
|
145
|
+
image_surface.write_to_png(result.path)
|
146
|
+
system("display", result.path)
|
147
|
+
end
|
148
|
+
end
|
@@ -6,6 +6,7 @@ class RecordingSurfaceTest < Test::Unit::TestCase
|
|
6
6
|
end
|
7
7
|
|
8
8
|
def test_new
|
9
|
+
only_cairo_version(1, 12, 0)
|
9
10
|
surface = Cairo::RecordingSurface.new(10, 20, 300, 400)
|
10
11
|
assert_equal([0.0, 0.0, 0.0, 0.0], surface.ink_extents)
|
11
12
|
Cairo::Context.new(surface) do |context|
|
@@ -13,9 +14,6 @@ class RecordingSurfaceTest < Test::Unit::TestCase
|
|
13
14
|
context.line_to(80, 100)
|
14
15
|
context.stroke
|
15
16
|
end
|
16
|
-
|
17
|
-
# causes expected value change. It is introduced between
|
18
|
-
# cairo 1.10.0 and 1.10.2.
|
19
|
-
assert_equal([14.0, 29.0, 67.0, 72.0], surface.ink_extents)
|
17
|
+
assert_equal([10.0, 20.0, 61.0, 61.0], surface.ink_extents)
|
20
18
|
end
|
21
19
|
end
|
data/test/test_xml_surface.rb
CHANGED
@@ -6,6 +6,7 @@ class XMLSurfaceTest < Test::Unit::TestCase
|
|
6
6
|
end
|
7
7
|
|
8
8
|
def test_new
|
9
|
+
only_cairo_version(1, 12, 0)
|
9
10
|
output = StringIO.new
|
10
11
|
device = Cairo::XMLDevice.new(output)
|
11
12
|
surface = Cairo::XMLSurface.new(device, 100, 200)
|
@@ -26,7 +27,7 @@ class XMLSurfaceTest < Test::Unit::TestCase
|
|
26
27
|
</source-pattern>
|
27
28
|
<path> 15 30 m 80 100 l</path>
|
28
29
|
<tolerance>0.1</tolerance>
|
29
|
-
<antialias>
|
30
|
+
<antialias>DEFAULT</antialias>
|
30
31
|
</stroke>
|
31
32
|
EOX
|
32
33
|
end
|
metadata
CHANGED
@@ -1,27 +1,26 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cairo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 39
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 1
|
8
|
-
-
|
9
|
-
-
|
10
|
-
version: 1.
|
8
|
+
- 12
|
9
|
+
- 0
|
10
|
+
version: 1.12.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
|
-
- Evan Marin
|
14
|
-
- "\xC3\x98yvind Kol\xC3\xA5s"
|
15
|
-
- MenTaLguY
|
16
13
|
- Kouhei Sutou
|
17
14
|
autorequire:
|
18
15
|
bindir: bin
|
19
16
|
cert_chain: []
|
20
17
|
|
21
|
-
date:
|
18
|
+
date: 2012-03-25 00:00:00 Z
|
22
19
|
dependencies:
|
23
20
|
- !ruby/object:Gem::Dependency
|
24
|
-
|
21
|
+
name: pkg-config
|
22
|
+
prerelease: false
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
25
24
|
none: false
|
26
25
|
requirements:
|
27
26
|
- - ">="
|
@@ -30,12 +29,12 @@ dependencies:
|
|
30
29
|
segments:
|
31
30
|
- 0
|
32
31
|
version: "0"
|
33
|
-
name: pkg-config
|
34
|
-
prerelease: false
|
35
32
|
type: :runtime
|
36
|
-
|
33
|
+
version_requirements: *id001
|
37
34
|
- !ruby/object:Gem::Dependency
|
38
|
-
|
35
|
+
name: bundler
|
36
|
+
prerelease: false
|
37
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
39
38
|
none: false
|
40
39
|
requirements:
|
41
40
|
- - ">="
|
@@ -44,26 +43,12 @@ dependencies:
|
|
44
43
|
segments:
|
45
44
|
- 0
|
46
45
|
version: "0"
|
47
|
-
name: test-unit
|
48
|
-
prerelease: false
|
49
46
|
type: :development
|
50
|
-
|
47
|
+
version_requirements: *id002
|
51
48
|
- !ruby/object:Gem::Dependency
|
52
|
-
version_requirements: &id003 !ruby/object:Gem::Requirement
|
53
|
-
none: false
|
54
|
-
requirements:
|
55
|
-
- - ">="
|
56
|
-
- !ruby/object:Gem::Version
|
57
|
-
hash: 3
|
58
|
-
segments:
|
59
|
-
- 0
|
60
|
-
version: "0"
|
61
49
|
name: test-unit-notify
|
62
50
|
prerelease: false
|
63
|
-
|
64
|
-
requirement: *id003
|
65
|
-
- !ruby/object:Gem::Dependency
|
66
|
-
version_requirements: &id004 !ruby/object:Gem::Requirement
|
51
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
67
52
|
none: false
|
68
53
|
requirements:
|
69
54
|
- - ">="
|
@@ -72,26 +57,12 @@ dependencies:
|
|
72
57
|
segments:
|
73
58
|
- 0
|
74
59
|
version: "0"
|
75
|
-
name: rake
|
76
|
-
prerelease: false
|
77
60
|
type: :development
|
78
|
-
|
61
|
+
version_requirements: *id003
|
79
62
|
- !ruby/object:Gem::Dependency
|
80
|
-
version_requirements: &id005 !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
|
-
requirements:
|
83
|
-
- - ">="
|
84
|
-
- !ruby/object:Gem::Version
|
85
|
-
hash: 3
|
86
|
-
segments:
|
87
|
-
- 0
|
88
|
-
version: "0"
|
89
63
|
name: rake-compiler
|
90
64
|
prerelease: false
|
91
|
-
|
92
|
-
requirement: *id005
|
93
|
-
- !ruby/object:Gem::Dependency
|
94
|
-
version_requirements: &id006 !ruby/object:Gem::Requirement
|
65
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
95
66
|
none: false
|
96
67
|
requirements:
|
97
68
|
- - ">="
|
@@ -100,26 +71,12 @@ dependencies:
|
|
100
71
|
segments:
|
101
72
|
- 0
|
102
73
|
version: "0"
|
103
|
-
name: jeweler
|
104
|
-
prerelease: false
|
105
74
|
type: :development
|
106
|
-
|
75
|
+
version_requirements: *id004
|
107
76
|
- !ruby/object:Gem::Dependency
|
108
|
-
|
109
|
-
none: false
|
110
|
-
requirements:
|
111
|
-
- - ">="
|
112
|
-
- !ruby/object:Gem::Version
|
113
|
-
hash: 3
|
114
|
-
segments:
|
115
|
-
- 0
|
116
|
-
version: "0"
|
117
|
-
name: yard
|
77
|
+
name: packnga
|
118
78
|
prerelease: false
|
119
|
-
|
120
|
-
requirement: *id007
|
121
|
-
- !ruby/object:Gem::Dependency
|
122
|
-
version_requirements: &id008 !ruby/object:Gem::Requirement
|
79
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
123
80
|
none: false
|
124
81
|
requirements:
|
125
82
|
- - ">="
|
@@ -128,13 +85,11 @@ dependencies:
|
|
128
85
|
segments:
|
129
86
|
- 0
|
130
87
|
version: "0"
|
131
|
-
name: packnga
|
132
|
-
prerelease: false
|
133
88
|
type: :development
|
134
|
-
|
89
|
+
version_requirements: *id005
|
135
90
|
description: Ruby bindings for cairo
|
136
91
|
email:
|
137
|
-
-
|
92
|
+
- kou@cozmixng.org
|
138
93
|
executables: []
|
139
94
|
|
140
95
|
extensions:
|
@@ -148,56 +103,56 @@ files:
|
|
148
103
|
- Gemfile
|
149
104
|
- NEWS
|
150
105
|
- README.rdoc
|
151
|
-
- Rakefile
|
152
|
-
- ext/cairo/cairo.def
|
153
|
-
- ext/cairo/depend
|
154
106
|
- ext/cairo/extconf.rb
|
155
|
-
-
|
156
|
-
- ext/cairo/rb_cairo.h
|
157
|
-
- ext/cairo/rb_cairo_constants.c
|
158
|
-
- ext/cairo/rb_cairo_context.c
|
159
|
-
- ext/cairo/rb_cairo_device.c
|
160
|
-
- ext/cairo/rb_cairo_exception.c
|
161
|
-
- ext/cairo/rb_cairo_font_extents.c
|
162
|
-
- ext/cairo/rb_cairo_font_face.c
|
163
|
-
- ext/cairo/rb_cairo_font_options.c
|
164
|
-
- ext/cairo/rb_cairo_glyph.c
|
165
|
-
- ext/cairo/rb_cairo_io.c
|
166
|
-
- ext/cairo/rb_cairo_io.h
|
167
|
-
- ext/cairo/rb_cairo_matrix.c
|
168
|
-
- ext/cairo/rb_cairo_path.c
|
169
|
-
- ext/cairo/rb_cairo_pattern.c
|
170
|
-
- ext/cairo/rb_cairo_private.c
|
171
|
-
- ext/cairo/rb_cairo_private.h
|
172
|
-
- ext/cairo/rb_cairo_region.c
|
173
|
-
- ext/cairo/rb_cairo_scaled_font.c
|
174
|
-
- ext/cairo/rb_cairo_surface.c
|
175
|
-
- ext/cairo/rb_cairo_text_cluster.c
|
176
|
-
- ext/cairo/rb_cairo_text_extents.c
|
177
|
-
- lib/cairo.rb
|
107
|
+
- Rakefile
|
178
108
|
- lib/cairo/color.rb
|
179
|
-
- lib/cairo/
|
180
|
-
- lib/cairo/
|
109
|
+
- lib/cairo/papers.rb
|
110
|
+
- lib/cairo/point.rb
|
181
111
|
- lib/cairo/context.rb
|
182
|
-
- lib/cairo/
|
112
|
+
- lib/cairo/colors.rb
|
183
113
|
- lib/cairo/context/circle.rb
|
184
|
-
- lib/cairo/context/color.rb
|
185
|
-
- lib/cairo/context/path.rb
|
186
114
|
- lib/cairo/context/rectangle.rb
|
115
|
+
- lib/cairo/context/color.rb
|
116
|
+
- lib/cairo/context/blur.rb
|
187
117
|
- lib/cairo/context/triangle.rb
|
188
|
-
- lib/cairo/
|
189
|
-
- lib/cairo/papers.rb
|
118
|
+
- lib/cairo/context/path.rb
|
190
119
|
- lib/cairo/path.rb
|
191
|
-
- lib/cairo/
|
120
|
+
- lib/cairo/constants.rb
|
121
|
+
- lib/cairo/paper.rb
|
122
|
+
- lib/cairo.rb
|
123
|
+
- samples/pac-tee.rb
|
192
124
|
- samples/agg/aa_test.rb
|
193
|
-
- samples/blur.rb
|
194
125
|
- samples/pac-nomralize.rb
|
195
|
-
- samples/
|
196
|
-
- samples/pac.rb
|
197
|
-
- samples/png.rb
|
126
|
+
- samples/text2.rb
|
198
127
|
- samples/scalable.rb
|
128
|
+
- samples/blur.rb
|
129
|
+
- samples/png.rb
|
130
|
+
- samples/pac.rb
|
199
131
|
- samples/text-on-path.rb
|
200
|
-
-
|
132
|
+
- ext/cairo/cairo.def
|
133
|
+
- ext/cairo/depend
|
134
|
+
- ext/cairo/rb_cairo_io.c
|
135
|
+
- ext/cairo/rb_cairo_constants.c
|
136
|
+
- ext/cairo/rb_cairo_pattern.c
|
137
|
+
- ext/cairo/rb_cairo_exception.c
|
138
|
+
- ext/cairo/rb_cairo_font_options.c
|
139
|
+
- ext/cairo/rb_cairo_text_cluster.c
|
140
|
+
- ext/cairo/rb_cairo_text_extents.c
|
141
|
+
- ext/cairo/rb_cairo_device.c
|
142
|
+
- ext/cairo/rb_cairo_font_face.c
|
143
|
+
- ext/cairo/rb_cairo_scaled_font.c
|
144
|
+
- ext/cairo/rb_cairo_context.c
|
145
|
+
- ext/cairo/rb_cairo_glyph.c
|
146
|
+
- ext/cairo/rb_cairo_surface.c
|
147
|
+
- ext/cairo/rb_cairo_font_extents.c
|
148
|
+
- ext/cairo/rb_cairo_path.c
|
149
|
+
- ext/cairo/rb_cairo_private.c
|
150
|
+
- ext/cairo/rb_cairo_matrix.c
|
151
|
+
- ext/cairo/rb_cairo_region.c
|
152
|
+
- ext/cairo/rb_cairo.c
|
153
|
+
- ext/cairo/rb_cairo_io.h
|
154
|
+
- ext/cairo/rb_cairo.h
|
155
|
+
- ext/cairo/rb_cairo_private.h
|
201
156
|
- test/test_surface.rb
|
202
157
|
- test/test_scaled_font.rb
|
203
158
|
- test/test_recording_surface.rb
|
@@ -209,6 +164,7 @@ files:
|
|
209
164
|
- test/test_context.rb
|
210
165
|
- test/cairo-test-utils.rb
|
211
166
|
- test/test_xml_device.rb
|
167
|
+
- test/test_raster_source_pattern.rb
|
212
168
|
- test/run-test.rb
|
213
169
|
- test/test_script_surface.rb
|
214
170
|
- test/test_region.rb
|
@@ -249,7 +205,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
249
205
|
requirements: []
|
250
206
|
|
251
207
|
rubyforge_project: cairo
|
252
|
-
rubygems_version: 1.8.
|
208
|
+
rubygems_version: 1.8.15
|
253
209
|
signing_key:
|
254
210
|
specification_version: 3
|
255
211
|
summary: Ruby bindings for cairo
|
@@ -265,6 +221,7 @@ test_files:
|
|
265
221
|
- test/test_context.rb
|
266
222
|
- test/cairo-test-utils.rb
|
267
223
|
- test/test_xml_device.rb
|
224
|
+
- test/test_raster_source_pattern.rb
|
268
225
|
- test/run-test.rb
|
269
226
|
- test/test_script_surface.rb
|
270
227
|
- test/test_region.rb
|
@@ -276,3 +233,4 @@ test_files:
|
|
276
233
|
- test/test_color.rb
|
277
234
|
- test/test_font_options.rb
|
278
235
|
- test/test_constants.rb
|
236
|
+
has_rdoc:
|