meme_captain 0.0.3 → 0.0.4
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/lib/meme_captain/meme.rb +9 -5
- data/lib/meme_captain/server.rb +13 -5
- data/meme_captain.gemspec +1 -1
- data/views/index.erb +4 -1
- metadata +4 -4
data/lib/meme_captain/meme.rb
CHANGED
|
@@ -36,13 +36,17 @@ module MemeCaptain
|
|
|
36
36
|
line2_caption[0].resize!(line2_caption[0].columns / 2,
|
|
37
37
|
line2_caption[0].rows / 2, Magick::LanczosFilter, 1.25)
|
|
38
38
|
|
|
39
|
-
img.
|
|
40
|
-
|
|
41
|
-
|
|
39
|
+
text_layer = Magick::Image.new(img[0].columns, img[0].rows) {
|
|
40
|
+
self.background_color = 'none'
|
|
41
|
+
}
|
|
42
|
+
text_layer.composite!(line1_caption[0], Magick::NorthGravity,
|
|
43
|
+
Magick::OverCompositeOp)
|
|
44
|
+
text_layer.composite!(line2_caption[0], Magick::SouthGravity,
|
|
45
|
+
Magick::OverCompositeOp)
|
|
42
46
|
|
|
43
|
-
|
|
47
|
+
img.each do |frame|
|
|
48
|
+
frame.composite!(text_layer, -frame.page.x, -frame.page.y,
|
|
44
49
|
Magick::OverCompositeOp)
|
|
45
|
-
|
|
46
50
|
frame.strip!
|
|
47
51
|
end
|
|
48
52
|
img
|
data/lib/meme_captain/server.rb
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
require 'digest/sha1'
|
|
2
|
+
require 'uri'
|
|
2
3
|
|
|
3
4
|
require 'curb'
|
|
4
5
|
require 'sinatra/base'
|
|
@@ -12,10 +13,10 @@ module MemeCaptain
|
|
|
12
13
|
ImageExts = %w{.jpeg .gif .png}
|
|
13
14
|
|
|
14
15
|
get '/' do
|
|
15
|
-
@
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
16
|
+
@img_url = if params[:u]
|
|
17
|
+
uri = URI(request.url)
|
|
18
|
+
uri.path += 'i'
|
|
19
|
+
uri.to_s
|
|
19
20
|
end
|
|
20
21
|
|
|
21
22
|
@u = params[:u]
|
|
@@ -37,8 +38,15 @@ module MemeCaptain
|
|
|
37
38
|
Curl::Easy.perform(params[:u]).body_str
|
|
38
39
|
}
|
|
39
40
|
|
|
40
|
-
MemeCaptain.meme(source_img_data, params[:tt], params[:tb])
|
|
41
|
+
meme_img = MemeCaptain.meme(source_img_data, params[:tt], params[:tb])
|
|
42
|
+
current_format = meme_img.format
|
|
43
|
+
|
|
44
|
+
meme_img.to_blob {
|
|
41
45
|
self.quality = 100
|
|
46
|
+
# convert non-animated gifs to png
|
|
47
|
+
if current_format == 'GIF' and meme_img.size == 1
|
|
48
|
+
self.format = 'PNG'
|
|
49
|
+
end
|
|
42
50
|
}
|
|
43
51
|
}
|
|
44
52
|
|
data/meme_captain.gemspec
CHANGED
|
@@ -4,7 +4,7 @@ $:.unshift(File.join(File.dirname(__FILE__), 'lib'))
|
|
|
4
4
|
|
|
5
5
|
Gem::Specification.new do |s|
|
|
6
6
|
s.name = 'meme_captain'
|
|
7
|
-
s.version = '0.0.
|
|
7
|
+
s.version = '0.0.4'
|
|
8
8
|
s.summary = 'create meme images'
|
|
9
9
|
s.description = s.summary
|
|
10
10
|
s.homepage = 'https://github.com/mmb/meme_captain'
|
data/views/index.erb
CHANGED
|
@@ -12,7 +12,10 @@
|
|
|
12
12
|
|
|
13
13
|
<p>Add text to images from the internet.</p>
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
<% if @img_url %>
|
|
16
|
+
<p><a href="<%= h @img_url %>"><img src="<%= h @img_url %>" /></a></p>
|
|
17
|
+
<p><a href="<%= h @img_url %>"><%= h @img_url %></a></p>
|
|
18
|
+
<% end %>
|
|
16
19
|
|
|
17
20
|
<form action="" method="get">
|
|
18
21
|
|
metadata
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: meme_captain
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
hash:
|
|
4
|
+
hash: 23
|
|
5
5
|
prerelease:
|
|
6
6
|
segments:
|
|
7
7
|
- 0
|
|
8
8
|
- 0
|
|
9
|
-
-
|
|
10
|
-
version: 0.0.
|
|
9
|
+
- 4
|
|
10
|
+
version: 0.0.4
|
|
11
11
|
platform: ruby
|
|
12
12
|
authors:
|
|
13
13
|
- Matthew M. Boedicker
|
|
@@ -15,7 +15,7 @@ autorequire:
|
|
|
15
15
|
bindir: bin
|
|
16
16
|
cert_chain: []
|
|
17
17
|
|
|
18
|
-
date: 2011-04-
|
|
18
|
+
date: 2011-04-28 00:00:00 -04:00
|
|
19
19
|
default_executable:
|
|
20
20
|
dependencies:
|
|
21
21
|
- !ruby/object:Gem::Dependency
|