dyi 1.2.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/CHANGES CHANGED
@@ -1,5 +1,11 @@
1
1
  = DYI Changelog
2
2
 
3
+ == Version 1.2.1 / 2012-05-01
4
+ * Bug Fixes
5
+ * A name of marker-option of LineChart is wrong.
6
+ * A create option name of Text is wrong.
7
+ * An operation of the link element.
8
+
3
9
  == Version 1.2.0 / 2012-04-02
4
10
  * Minor Enhancement
5
11
  * Marker support.
data/lib/dyi.rb CHANGED
@@ -24,7 +24,7 @@
24
24
  module DYI
25
25
 
26
26
  # DYI program version
27
- VERSION = '1.2.0'
27
+ VERSION = '1.2.1'
28
28
 
29
29
  # URL of DYI Project
30
30
  # @since 0.0.2
@@ -31,7 +31,7 @@ module DYI
31
31
  CHART_TYPES = [:line, :area, :bar, :stackedbar]
32
32
 
33
33
  # @since 1.2.0
34
- DEFAULT_MARKERS = [:circle, :square, :traiangle, :pentagon, :rhombus, :inverted_triangle]
34
+ DEFAULT_MARKERS = [:circle, :square, :triangle, :pentagon, :rhombus, :inverted_triangle]
35
35
 
36
36
  attr_reader :axis_back_canvas, :chart_back_canvas, :scale_canvas, :chart_front_canvas, :axis_front_canvas, :legend_canvas
37
37
  # @since 1.2.0
@@ -469,7 +469,7 @@ module DYI
469
469
  # text relative to _point_ argument. specifies one of the following
470
470
  # vlaues: <tt>"start"</tt>, <tt>"middle"</tt>, <tt>"end"</tt>
471
471
  # @option options [Length] :text_length the length of the displayed text
472
- # @option options [String] :text_adjust the way of adjustments to make the
472
+ # @option options [String] :length_adjust the way of adjustments to make the
473
473
  # rendered length of the text match _text_length_ option. specifies one
474
474
  # of the following vlaues: <tt>"spacing"</tt>, <tt>"spacingAndGlyphs"</tt>
475
475
  # @option options [String] :text_decoration the decorations that are
@@ -484,6 +484,10 @@ module DYI
484
484
  # @option options [Length] :border_rx the x-axis radius of the ellipse
485
485
  # used to round off the corners of the rectangle when the rounded border
486
486
  # is shown
487
+ # @option options [Length] :vertical_padding the interval of vertical
488
+ # border line and text area
489
+ # @option options [Length] :horizontal_padding the interval of horizontal
490
+ # border line and text area
487
491
  # @option options [Length] :border_ry the y-axis radius of the ellipse
488
492
  # used to round off the corners of the rectangle when the rounded border
489
493
  # is shown
@@ -244,6 +244,7 @@ module DYI
244
244
 
245
245
  def write_text(shape, io)
246
246
  attrs = common_attributes(shape)
247
+ txt_attrs = {}
247
248
  if shape.attributes[:text_decoration]
248
249
  attrs[:"text-decoration"] = shape.attributes[:text_decoration]
249
250
  end
@@ -253,11 +254,11 @@ module DYI
253
254
  if shape.attributes[:writing_mode]
254
255
  attrs[:"writing-mode"] = shape.attributes[:writing_mode]
255
256
  end
256
- if shape.attributes[:textLength]
257
- attrs[:textLength] = shape.attributes[:textLength]
257
+ if shape.attributes[:text_length]
258
+ txt_attrs[:textLength] = shape.attributes[:text_length]
258
259
  end
259
- if shape.attributes[:lengthAdjust]
260
- attrs[:lengthAdjust] = shape.attributes[:lengthAdjust]
260
+ if shape.attributes[:length_adjust]
261
+ txt_attrs[:lengthAdjust] = shape.attributes[:length_adjust]
261
262
  end
262
263
 
263
264
  text = shape.formated_text
@@ -267,7 +268,7 @@ module DYI
267
268
  create_node(io, tag_name, attrs) {
268
269
  create_border_node(shape, io)
269
270
  line_number = 0
270
- txt_attrs = {:x => shape.point.x, :y => shape.point.y}
271
+ txt_attrs.merge!(:x => shape.point.x, :y => shape.point.y)
271
272
  # FIXME: Implementation of baseline attribute are not suitable
272
273
  case shape.attributes[:alignment_baseline]
273
274
  when 'top' then txt_attrs[:y] += shape.font_height * 0.85
@@ -289,6 +290,7 @@ module DYI
289
290
  if shape.anchor_href
290
291
  attrs[:'xlink:href'] = shape.anchor_href
291
292
  attrs[:target] = shape.anchor_target if shape.anchor_target
293
+ attrs[:'pointer-events'] = 'visiblePainted'
292
294
  create_text_group.call('a', attrs)
293
295
  else
294
296
  create_text_group.call('g', attrs)
@@ -302,11 +304,12 @@ module DYI
302
304
  when 'middle' then attrs[:y] += shape.font_height * 0.35
303
305
  when 'bottom' then attrs[:y] -= shape.font_height * 0.15
304
306
  end
305
- create_leaf_node(io, 'text', text, attrs)
307
+ create_leaf_node(io, 'text', text, attrs.merge(txt_attrs))
306
308
  }
307
309
  if shape.anchor_href
308
310
  link_attrs = {:'xlink:href' => shape.anchor_href}
309
311
  link_attrs[:target] = shape.anchor_target if shape.anchor_target
312
+ link_attrs[:'pointer-events'] = 'visiblePainted'
310
313
  create_node(io, 'a', link_attrs) {
311
314
  create_text_group.call
312
315
  }
@@ -451,6 +454,7 @@ module DYI
451
454
  if shape.anchor_href
452
455
  link_attrs = {:'xlink:href' => shape.anchor_href}
453
456
  link_attrs[:target] = shape.anchor_target if shape.anchor_target
457
+ link_attrs[:'pointer-events'] = 'visiblePainted'
454
458
  create_node(io, 'a', link_attrs) {
455
459
  write_shape_node(shape, io, attrs, tag_name, &create_child_node)
456
460
  }
@@ -336,7 +336,7 @@ module DYI
336
336
  def to_s(format=nil)
337
337
  fmts = (format || @@default_format).split('\\\\')
338
338
  fmts = fmts.map do |fmt|
339
- fmt.gsub(/(?!\\U)(.|\G)U/, '\\1' + @unit.to_s).gsub(/(?!\\u)(.|\G)u/, '\\1' + unit)
339
+ fmt.gsub(/(?!\\U)(.|\G)U/, '\\1' + (@unit == '%' ? '\\%' : @unit.to_s)).gsub(/(?!\\u)(.|\G)u/, '\\1' + (@unit == '%' ? '\\%' : unit))
340
340
  end
341
341
  @value.strfnum(fmts.join('\\\\'))
342
342
  end
metadata CHANGED
@@ -1,13 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dyi
3
3
  version: !ruby/object:Gem::Version
4
- hash: 31
5
- prerelease: false
6
- segments:
7
- - 1
8
- - 2
9
- - 0
10
- version: 1.2.0
4
+ prerelease:
5
+ version: 1.2.1
11
6
  platform: ruby
12
7
  authors:
13
8
  - Mamoru Yuo
@@ -15,8 +10,7 @@ autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
12
 
18
- date: 2012-04-03 00:00:00 +09:00
19
- default_executable:
13
+ date: 2012-05-01 00:00:00 Z
20
14
  dependencies: []
21
15
 
22
16
  description: " DYI is a 2D graphics library, very rich and expressive.\n DYI have been optimized for SVG format, but it is also possible\n to output other format; for example, EPS.\n"
@@ -28,70 +22,69 @@ extensions: []
28
22
  extra_rdoc_files: []
29
23
 
30
24
  files:
31
- - lib/ironruby.rb
25
+ - CHANGES
26
+ - COPYING
27
+ - examples/animation.rb
28
+ - examples/class_diagram.rb
29
+ - examples/css.rb
30
+ - examples/data/03311056.xlsx
31
+ - examples/data/currency.xlsx
32
+ - examples/data/money.csv
33
+ - examples/line_and_bar.rb
34
+ - examples/line_chart.rb
35
+ - examples/logo.rb
36
+ - examples/pie_chart.rb
37
+ - examples/simple_shapes.rb
38
+ - lib/dyi/animation.rb
32
39
  - lib/dyi/canvas.rb
40
+ - lib/dyi/chart/array_reader.rb
41
+ - lib/dyi/chart/axis_util.rb
42
+ - lib/dyi/chart/base.rb
43
+ - lib/dyi/chart/csv_reader.rb
44
+ - lib/dyi/chart/excel_reader.rb
45
+ - lib/dyi/chart/legend.rb
46
+ - lib/dyi/chart/line_chart.rb
47
+ - lib/dyi/chart/pie_chart.rb
48
+ - lib/dyi/chart/table.rb
33
49
  - lib/dyi/chart.rb
34
- - lib/dyi/stylesheet.rb
35
- - lib/dyi/event.rb
50
+ - lib/dyi/color.rb
51
+ - lib/dyi/coordinate.rb
36
52
  - lib/dyi/drawing/clipping.rb
37
- - lib/dyi/drawing/filter.rb
38
53
  - lib/dyi/drawing/color_effect.rb
39
- - lib/dyi/drawing/pen_3d.rb
54
+ - lib/dyi/drawing/filter.rb
40
55
  - lib/dyi/drawing/pen.rb
41
- - lib/dyi/script/simple_script.rb
42
- - lib/dyi/script/ecmascript.rb
43
- - lib/dyi/color.rb
56
+ - lib/dyi/drawing/pen_3d.rb
57
+ - lib/dyi/drawing.rb
44
58
  - lib/dyi/element.rb
45
- - lib/dyi/shape/base.rb
46
- - lib/dyi/shape/marker.rb
47
- - lib/dyi/shape/path.rb
59
+ - lib/dyi/event.rb
60
+ - lib/dyi/font.rb
61
+ - lib/dyi/formatter/base.rb
48
62
  - lib/dyi/formatter/emf_formatter.rb
63
+ - lib/dyi/formatter/eps_formatter.rb
64
+ - lib/dyi/formatter/svg_formatter.rb
49
65
  - lib/dyi/formatter/svg_reader.rb
50
66
  - lib/dyi/formatter/xaml_formatter.rb
51
- - lib/dyi/formatter/base.rb
52
- - lib/dyi/formatter/svg_formatter.rb
53
- - lib/dyi/formatter/eps_formatter.rb
54
- - lib/dyi/script.rb
55
- - lib/dyi/drawing.rb
56
- - lib/dyi/animation.rb
67
+ - lib/dyi/formatter.rb
68
+ - lib/dyi/length.rb
57
69
  - lib/dyi/matrix.rb
58
- - lib/dyi/coordinate.rb
59
- - lib/dyi/chart/array_reader.rb
60
- - lib/dyi/chart/csv_reader.rb
61
- - lib/dyi/chart/table.rb
62
- - lib/dyi/chart/line_chart.rb
63
- - lib/dyi/chart/pie_chart.rb
64
- - lib/dyi/chart/legend.rb
65
- - lib/dyi/chart/base.rb
66
- - lib/dyi/chart/axis_util.rb
67
- - lib/dyi/chart/excel_reader.rb
68
- - lib/dyi/shape.rb
69
- - lib/dyi/util.rb
70
70
  - lib/dyi/painting.rb
71
- - lib/dyi/type.rb
72
- - lib/dyi/length.rb
73
- - lib/dyi/font.rb
74
- - lib/dyi/formatter.rb
71
+ - lib/dyi/script/ecmascript.rb
72
+ - lib/dyi/script/simple_script.rb
73
+ - lib/dyi/script.rb
74
+ - lib/dyi/shape/base.rb
75
+ - lib/dyi/shape/marker.rb
76
+ - lib/dyi/shape/path.rb
77
+ - lib/dyi/shape.rb
78
+ - lib/dyi/stylesheet.rb
75
79
  - lib/dyi/svg_element.rb
80
+ - lib/dyi/type.rb
81
+ - lib/dyi/util.rb
76
82
  - lib/dyi.rb
83
+ - lib/ironruby.rb
77
84
  - lib/util.rb
78
- - CHANGES
85
+ - README
79
86
  - test/path_command_test.rb
80
87
  - test/test_length.rb
81
- - examples/class_diagram.rb
82
- - examples/line_and_bar.rb
83
- - examples/line_chart.rb
84
- - examples/data/money.csv
85
- - examples/data/currency.xlsx
86
- - examples/data/03311056.xlsx
87
- - examples/simple_shapes.rb
88
- - examples/pie_chart.rb
89
- - examples/animation.rb
90
- - examples/css.rb
91
- - examples/logo.rb
92
- - README
93
- - COPYING
94
- has_rdoc: true
95
88
  homepage: https://sourceforge.net/projects/dyi/
96
89
  licenses:
97
90
  - GPL-3
@@ -105,25 +98,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
105
98
  requirements:
106
99
  - - ">="
107
100
  - !ruby/object:Gem::Version
108
- hash: 57
109
- segments:
110
- - 1
111
- - 8
112
- - 7
113
101
  version: 1.8.7
114
102
  required_rubygems_version: !ruby/object:Gem::Requirement
115
103
  none: false
116
104
  requirements:
117
105
  - - ">="
118
106
  - !ruby/object:Gem::Version
119
- hash: 3
120
- segments:
121
- - 0
122
107
  version: "0"
123
108
  requirements: []
124
109
 
125
110
  rubyforge_project:
126
- rubygems_version: 1.3.7
111
+ rubygems_version: 1.8.10
127
112
  signing_key:
128
113
  specification_version: 3
129
114
  summary: 2D graphics library