Commit 4c0e43c3

mo khan <mo@mokhan.ca>
2014-06-08 04:30:22
add method to add a watermark.
1 parent ffcd39d
Changed files (2)
app
services
infrastructure
spec
services
infrastructure
app/services/infrastructure/image.rb
@@ -57,6 +57,19 @@ class Image
     end
   end
 
+  def watermark(message)
+    manipulate! do |image|
+      image.combine_options do |c|
+        c.gravity 'Southeast'
+        c.draw "text 10,10 \"#{message}\""
+        c.font 'helvetica'
+        c.fill("#FFFFFF")
+        c.pointsize 28
+      end
+      image
+    end
+  end
+
   private
 
   def manipulate!
spec/services/infrastructure/image_spec.rb
@@ -80,5 +80,10 @@ describe Image do
       expect(image[:width]).to eql(130)
       expect(image[:height]).to eql(90)
     end
+
+    it "adds a watermark" do
+      expect(-> { subject.watermark("testing") }).to_not raise_error
+      #`open #{path}`
+    end
   end
 end