svgen 0.0.3 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: bdc86f02b34189d954cf476880fa22bd083a2f1f
4
- data.tar.gz: 2ec47b8e97adbe5447d5e41dbde7533385598c96
3
+ metadata.gz: 0ff43c6abf3919a0d17b695e8daf85635b2e2341
4
+ data.tar.gz: b3a7613e18481300ab6c5e32d283e2570d0f9f8f
5
5
  SHA512:
6
- metadata.gz: f15074003e07481a35e56d687d9dd7c719d9a7279c18dfec46d0388af358ae21ff527ffd70a6d12c0cee375ecede891e176bc9074dbcf5bed34d6d3360db6f4d
7
- data.tar.gz: cdd5ebada7f0a4977d474ebf474f9ec9316e8b7b9b0cfc6fc585e897bd2bfa6501a69a6f60324db3846a31d8d2cc33528806566f43a2db3adda72395f14a1236
6
+ metadata.gz: c61625b585cb5885677783f0d8ea62f54e6383a532ea68398ef31017b69ea825a468a84431a6eb4d5c4978b71eb3d01d9dc437b864682f3585c84ab136b587fa
7
+ data.tar.gz: c6f93e62a47476fec3cf7e6ff8d6f3427cb667061d3f859c95c98baf2f5f9463bbcc0fe5dcf6da28746a24e98bf206f789e95106620429894ba3902d512ed28d
@@ -0,0 +1,13 @@
1
+ module SVGen
2
+ module Element
3
+ class Path
4
+ def initialize(attrs = {})
5
+ @attrs = attrs
6
+ end
7
+
8
+ def generate(svg)
9
+ svg.path(@attrs)
10
+ end
11
+ end
12
+ end
13
+ end
@@ -16,6 +16,10 @@ module SVGen
16
16
  @children << Element::Line.new(attrs)
17
17
  end
18
18
 
19
+ def path(attrs = {})
20
+ @children << Element::Path.new(attrs)
21
+ end
22
+
19
23
  def group(attrs = {}, &block)
20
24
  @children << Element::Group.new(attrs, &block)
21
25
  end
data/lib/svgen.rb CHANGED
@@ -1,7 +1,8 @@
1
1
  require "svgen/nestable"
2
2
  require "svgen/svg"
3
+ require "svgen/element/group"
3
4
  require "svgen/element/rect"
4
5
  require "svgen/element/circle"
5
6
  require "svgen/element/text"
6
7
  require "svgen/element/line"
7
- require "svgen/element/group"
8
+ require "svgen/element/path"
@@ -0,0 +1,3 @@
1
+ <svg width="600" height="300" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M 10 80 Q 95 10 180 80" stroke="black" fill="none"/>
3
+ </svg>
@@ -3,6 +3,7 @@ require "spec_helper"
3
3
  describe SVGen::SVG do
4
4
  describe "#generate" do
5
5
  let(:fixtures_path) { Pathname.new("spec/fixtures") }
6
+
6
7
  after do
7
8
  data = @svg.generate
8
9
  expect(data).to eq @sample.read
@@ -41,6 +42,13 @@ describe SVGen::SVG do
41
42
  end
42
43
  end
43
44
 
45
+ it "returns SVG data with path" do
46
+ @sample = fixtures_path.join("path.svg")
47
+ @svg = SVGen::SVG.new(width: 600, height: 300) do |svg|
48
+ svg.path(d: "M 10 80 Q 95 10 180 80", stroke: "black", fill: "none")
49
+ end
50
+ end
51
+
44
52
  it "returns SVG data with group" do
45
53
  @sample = fixtures_path.join("group.svg")
46
54
  @svg = SVGen::SVG.new(width: 600, height: 300) do |svg|
data/svgen.gemspec CHANGED
@@ -3,7 +3,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
3
 
4
4
  Gem::Specification.new do |spec|
5
5
  spec.name = "svgen"
6
- spec.version = "0.0.3"
6
+ spec.version = "0.1.0"
7
7
  spec.authors = ["Naoto Kaneko"]
8
8
  spec.email = ["naoty.k@gmail.com"]
9
9
  spec.summary = %q{SVG generator}
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: svgen
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Naoto Kaneko
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-01-28 00:00:00.000000000 Z
11
+ date: 2014-02-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: builder
@@ -82,6 +82,7 @@ files:
82
82
  - lib/svgen/element/circle.rb
83
83
  - lib/svgen/element/group.rb
84
84
  - lib/svgen/element/line.rb
85
+ - lib/svgen/element/path.rb
85
86
  - lib/svgen/element/rect.rb
86
87
  - lib/svgen/element/text.rb
87
88
  - lib/svgen/nestable.rb
@@ -90,6 +91,7 @@ files:
90
91
  - spec/fixtures/circle.svg
91
92
  - spec/fixtures/group.svg
92
93
  - spec/fixtures/line.svg
94
+ - spec/fixtures/path.svg
93
95
  - spec/fixtures/rect.svg
94
96
  - spec/fixtures/sample.svg
95
97
  - spec/fixtures/text.svg
@@ -124,6 +126,7 @@ test_files:
124
126
  - spec/fixtures/circle.svg
125
127
  - spec/fixtures/group.svg
126
128
  - spec/fixtures/line.svg
129
+ - spec/fixtures/path.svg
127
130
  - spec/fixtures/rect.svg
128
131
  - spec/fixtures/sample.svg
129
132
  - spec/fixtures/text.svg