image_resizer 0.2.0 → 0.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/VERSION +1 -1
- data/image_resizer.gemspec +2 -2
- data/lib/image_resizer/processor.rb +10 -7
- data/spec/image_resizer/processor_spec.rb +17 -1
- metadata +13 -13
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.2.
|
1
|
+
0.2.1
|
data/image_resizer.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "image_resizer"
|
8
|
-
s.version = "0.2.
|
8
|
+
s.version = "0.2.1"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Daniel Nelson"]
|
12
|
-
s.date = "2012-04-
|
12
|
+
s.date = "2012-04-28"
|
13
13
|
s.description = "Image resizing gem (requires ImageMagick)"
|
14
14
|
s.email = "daniel@populr.me"
|
15
15
|
s.extra_rdoc_files = [
|
@@ -216,14 +216,17 @@ module ImageResizer
|
|
216
216
|
format ? [super, {:format => format.to_sym}] : super
|
217
217
|
end
|
218
218
|
|
219
|
-
def generate_icon(temp_object)
|
219
|
+
def generate_icon(temp_object, options={})
|
220
220
|
two_fifty_six_png = convert(temp_object, '-resize 256x256! -transparent white', :png).first
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
221
|
+
formats = []
|
222
|
+
current = 16
|
223
|
+
max_resolution = options[:max_resolution] || 256
|
224
|
+
while current <= max_resolution && current < 256
|
225
|
+
formats << convert(two_fifty_six_png, "-resize #{current}x#{current}! -transparent white")
|
226
|
+
current *= 2
|
227
|
+
end
|
228
|
+
formats << two_fifty_six_png if max_resolution >= 256
|
229
|
+
convert(formats, '', :ico).first
|
227
230
|
end
|
228
231
|
end
|
229
232
|
end
|
@@ -601,7 +601,6 @@ describe ImageResizer::Processor do
|
|
601
601
|
end
|
602
602
|
end
|
603
603
|
|
604
|
-
|
605
604
|
describe "#generate_icon" do
|
606
605
|
it "it should create a multi-sized ico file from the source file" do
|
607
606
|
two_fifty_six_png = double('256')
|
@@ -614,10 +613,27 @@ describe ImageResizer::Processor do
|
|
614
613
|
@processor.should_receive(:convert).with(two_fifty_six_png, '-resize 64x64! -transparent white').and_return(sixty_four_png)
|
615
614
|
one_twenty_eight_png = double('128')
|
616
615
|
@processor.should_receive(:convert).with(two_fifty_six_png, '-resize 128x128! -transparent white').and_return(one_twenty_eight_png)
|
616
|
+
|
617
617
|
ico = double('ico')
|
618
618
|
@processor.should_receive(:convert).with([sixteen_png, thirty_two_png, sixty_four_png, one_twenty_eight_png, two_fifty_six_png],
|
619
619
|
'', :ico).and_return([ico, :format => :ico])
|
620
620
|
@processor.generate_icon(@image)
|
621
621
|
end
|
622
|
+
|
623
|
+
it "it should accept a :max_resolution option to limit the number of formats" do
|
624
|
+
two_fifty_six_png = double('256')
|
625
|
+
@processor.should_receive(:convert).with(@image, '-resize 256x256! -transparent white', :png).and_return([two_fifty_six_png, :format => :png])
|
626
|
+
sixteen_png = double('16')
|
627
|
+
@processor.should_receive(:convert).with(two_fifty_six_png, '-resize 16x16! -transparent white').and_return(sixteen_png)
|
628
|
+
thirty_two_png = double('32')
|
629
|
+
@processor.should_receive(:convert).with(two_fifty_six_png, '-resize 32x32! -transparent white').and_return(thirty_two_png)
|
630
|
+
|
631
|
+
@processor.should_not_receive(:convert).with(two_fifty_six_png, '-resize 64x64! -transparent white')
|
632
|
+
|
633
|
+
ico = double('ico')
|
634
|
+
@processor.should_receive(:convert).with([sixteen_png, thirty_two_png],
|
635
|
+
'', :ico).and_return([ico, :format => :ico])
|
636
|
+
@processor.generate_icon(@image, :max_resolution => 32)
|
637
|
+
end
|
622
638
|
end
|
623
639
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: image_resizer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-04-
|
12
|
+
date: 2012-04-28 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rspec
|
16
|
-
requirement: &
|
16
|
+
requirement: &2161681640 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *2161681640
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: jeweler
|
27
|
-
requirement: &
|
27
|
+
requirement: &2161680200 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *2161680200
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: pry
|
38
|
-
requirement: &
|
38
|
+
requirement: &2161706960 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *2161706960
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: pry-nav
|
49
|
-
requirement: &
|
49
|
+
requirement: &2161706340 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *2161706340
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: pry-stack_explorer
|
60
|
-
requirement: &
|
60
|
+
requirement: &2161705480 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,7 +65,7 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *2161705480
|
69
69
|
description: Image resizing gem (requires ImageMagick)
|
70
70
|
email: daniel@populr.me
|
71
71
|
executables: []
|
@@ -131,7 +131,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
131
131
|
version: '0'
|
132
132
|
segments:
|
133
133
|
- 0
|
134
|
-
hash:
|
134
|
+
hash: 3887465785139415928
|
135
135
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
136
136
|
none: false
|
137
137
|
requirements:
|