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.
@@ -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.each do |frame|
40
- frame.composite!(line1_caption[0], Magick::NorthGravity,
41
- Magick::OverCompositeOp)
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
- frame.composite!(line2_caption[0], Magick::SouthGravity,
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
@@ -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
- @img_tag = if params[:u]
16
- "<img src=\"#{h request.fullpath.sub(%r{^/}, '/i')}\" />"
17
- else
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]).to_blob {
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.3'
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
- <%= @img_tag %>
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: 25
4
+ hash: 23
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 3
10
- version: 0.0.3
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-22 00:00:00 -04:00
18
+ date: 2011-04-28 00:00:00 -04:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency