phantom_svg 1.1.6 → 1.1.8

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0ed311e5c5b6787b8984e939a0cd48a2ec06671e
4
- data.tar.gz: fe58f330e16bc38f061a3465a35ba2ce889398b7
3
+ metadata.gz: 97969b47cb157d5b24f02e6ab5b73e700c65d7b2
4
+ data.tar.gz: 423b45aae2ca09f9d59525231392f6766ab6680d
5
5
  SHA512:
6
- metadata.gz: c0701c8cb58da9f3a988d8f85d4bcf84fac1819ce9a44c7c10de085b69d23c81c0f652416b4b24e28cf45bd2a73e54a174837ae1c66026eb0c5f5ab8f788a7d1
7
- data.tar.gz: a151651bbb47d559781c53e3d1b6fc9e00bdb3acb448650cb224374f0fd6575369c722356240664dda2b1cd27bbdf65cfb4d44ddc4a45d2783100ec8f4e2168f
6
+ metadata.gz: 49cd0d871b7e396bb231a6c9fa694153b2c2b56c0f6a6b96f1fc91adba3bb08a0966303e78c9369d31abb9791d79177a9ff6ceed552e3b3e7c26e4fa3e464af6
7
+ data.tar.gz: 4ca05283e96a19e3bde8443df8d15689e4e32e9ea6be21133e243032349079c18cf634b1f95878bf8a182d017a299fe073193ed7ed314cadefadf80b2c809c19
@@ -43,7 +43,14 @@ module Phantom
43
43
  def create_temporary_file(path, frame, width, height)
44
44
  Parser::SVGWriter.new.write("#{path}.svg", frame)
45
45
 
46
- handle = RSVG::Handle.new_from_file("#{path}.svg")
46
+ handle = RSVG::Handle.new
47
+ File.open("#{path}.svg", "rb") do |file|
48
+ buffer = ""
49
+ while file.read(8192, buffer)
50
+ handle.write(buffer)
51
+ end
52
+ end
53
+ handle.close
47
54
  Cairo::ImageSurface.new(Cairo::FORMAT_ARGB32, width, height) do |surface|
48
55
  Cairo::Context.new(surface) do |context|
49
56
  context.scale(width.to_f / handle.dimensions.width,
@@ -53,7 +60,6 @@ module Phantom
53
60
  surface.finish
54
61
  end
55
62
  end
56
- handle.close
57
63
  end
58
64
  end # class PNGWriter
59
65
  end # module Parser
@@ -1,7 +1,7 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.platform = Gem::Platform::RUBY
3
3
  s.name = 'phantom_svg'
4
- s.version = '1.1.6'
4
+ s.version = '1.1.8'
5
5
  s.license = 'LGPL-3'
6
6
  s.summary = 'Hight end SVG manipulation tools for Ruby'
7
7
  s.description = 'Hight end SVG manipulation tools for Ruby.\n' \
@@ -18,6 +18,6 @@ Gem::Specification.new do |s|
18
18
 
19
19
  s.add_dependency 'cairo', '~> 1.14', '~> 1.14.1'
20
20
  s.add_dependency 'rapngasm', '~> 3.1', '~> 3.1.6'
21
- s.add_dependency 'rsvg2', '~> 2.2', '~> 2.2.4'
22
- s.add_dependency 'rmagick', '~> 2.13', '~> 2.13.4'
21
+ s.add_dependency 'rsvg2', '~> 2.2', '~> 2.2.5'
22
+ s.add_dependency 'rmagick', '~> 2.15', '~> 2.15.0'
23
23
  end
@@ -601,48 +601,28 @@ describe Phantom::SVG::Base do
601
601
  end
602
602
  end
603
603
 
604
- # describe 'leak test' do
605
- # before(:all) do
606
- # @source_dir = SPEC_SOURCE_DIR
607
- # @destination_dir = SPEC_TEMP_DIR
608
- # end
609
-
610
- # it 'save_apng' do
611
- # source = "#{@source_dir}/gradation_test/animation.json"
612
- # destination = "#{@destination_dir}/leak_test.png"
613
-
614
- # loop_count = 300
615
- # print_interval = (loop_count / 100).to_i
616
- # cr_interval = (loop_count / 10).to_i
617
-
618
- # loader = Phantom::SVG::Base.new(source)
619
-
620
- # loop_count.times do |i|
621
- # loader.save_apng(destination)
622
-
623
- # GC.start
624
-
625
- # print '.' if ((i+1) % print_interval) == 0
626
- # print '|' if ((i+1) % cr_interval) == 0
627
- # end
628
- # end
629
-
630
- # # it 'simple test' do
631
- # # source = "#{@source_dir}/gradation_test/0.svg"
632
-
633
- # # loop_count = 5000
634
- # # print_interval = (loop_count / 100).to_i
635
- # # cr_interval = (loop_count / 10).to_i
636
-
637
- # # loop_count.times do |i|
638
- # # handle = RSVG::Handle.new_from_file(source)
639
- # # handle.close
640
-
641
- # # GC.start
642
-
643
- # # print '.' if ((i+1) % print_interval) == 0
644
- # # print '|' if ((i+1) % cr_interval) == 0
645
- # # end
646
- # # end
647
- # end
604
+ describe 'leak test' do
605
+ before(:all) do
606
+ @source_dir = SPEC_SOURCE_DIR
607
+ @destination_dir = SPEC_TEMP_DIR
608
+ end
609
+
610
+ xit 'consecutively save_apng' do
611
+ source = "#{@source_dir}/gradation_test/animation.json"
612
+ destination = "#{@destination_dir}/leak_test.png"
613
+
614
+ loop_count = 300
615
+ print_interval = (loop_count / 100).to_i
616
+ cr_interval = (loop_count / 10).to_i
617
+
618
+ loop_count.times do |i|
619
+ loader = Phantom::SVG::Base.new(source)
620
+ loader.save_apng(destination)
621
+ loader = nil
622
+
623
+ print '.' if ((i+1) % print_interval) == 0
624
+ print '|' if ((i+1) % cr_interval) == 0
625
+ end
626
+ end
627
+ end
648
628
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: phantom_svg
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.6
4
+ version: 1.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rika Yoshida
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2015-03-06 00:00:00.000000000 Z
13
+ date: 2015-05-18 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: cairo
@@ -61,7 +61,7 @@ dependencies:
61
61
  version: '2.2'
62
62
  - - "~>"
63
63
  - !ruby/object:Gem::Version
64
- version: 2.2.4
64
+ version: 2.2.5
65
65
  type: :runtime
66
66
  prerelease: false
67
67
  version_requirements: !ruby/object:Gem::Requirement
@@ -71,27 +71,27 @@ dependencies:
71
71
  version: '2.2'
72
72
  - - "~>"
73
73
  - !ruby/object:Gem::Version
74
- version: 2.2.4
74
+ version: 2.2.5
75
75
  - !ruby/object:Gem::Dependency
76
76
  name: rmagick
77
77
  requirement: !ruby/object:Gem::Requirement
78
78
  requirements:
79
79
  - - "~>"
80
80
  - !ruby/object:Gem::Version
81
- version: '2.13'
81
+ version: '2.15'
82
82
  - - "~>"
83
83
  - !ruby/object:Gem::Version
84
- version: 2.13.4
84
+ version: 2.15.0
85
85
  type: :runtime
86
86
  prerelease: false
87
87
  version_requirements: !ruby/object:Gem::Requirement
88
88
  requirements:
89
89
  - - "~>"
90
90
  - !ruby/object:Gem::Version
91
- version: '2.13'
91
+ version: '2.15'
92
92
  - - "~>"
93
93
  - !ruby/object:Gem::Version
94
- version: 2.13.4
94
+ version: 2.15.0
95
95
  description: Hight end SVG manipulation tools for Ruby.\nIncludes chained keyframe
96
96
  generation, (A)PNG conversion and more.
97
97
  email: info@genshin.org
@@ -215,7 +215,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
215
215
  requirements:
216
216
  - libapngasm
217
217
  rubyforge_project:
218
- rubygems_version: 2.4.5
218
+ rubygems_version: 2.4.6
219
219
  signing_key:
220
220
  specification_version: 4
221
221
  summary: Hight end SVG manipulation tools for Ruby