I’m attempting to write a solution so that my user’s can “watermark” their Images with their Company Logo. I’ve got the actual watermarking part done and working so now I’m creating the “upload logo” feature so that they can provide me with the Logo they wish to appear watermarked onto their Images.
I’m using VB.NET and this will probably end up in a Web Service that accepts the Logo JPG file, and returns the “altered” Logo. What I need to happen in this Web Service is:
1) Gray-scale the image. Which I have working as well, thanks to this article.
2) Make the background transparent (so the logo looks clean when watermarked onto an image). This is where I’m stuck.
I think for the most part, any logos that are uploaded will have a generic white background but I can’t assume that. Is there a way to somehow detect the background of an image or the background colors, so that I may make those colors transparent?
I’ve downloaded and ran this project from code.google.com, called Transpoint, which is pretty much what I need except I won’t be able to have this as a stand-alone app. Also, I think this is written in Python which is foreign to me.
So basically what I need is just a way to determine the background on an Image (if that’s even possible?) or even just the background colors so that I may make them transparent. Any help/advice/suggestions would be greatly appreciated!
Thanks,
Lloyd
@MusiGenesis (and anyone else who may be interested) here is what I did to (kind of) solve my problem. I basically followed the first half of your idea. I’ve created a function that will accept a
bitmap, check each pixel against the first pixel at (0,0) – using a threshold of 10 for each RGB color. For each color within that threshold, the pixel is made transparent. Here is my code, which seems to work alright for the few images I’ve tried it with: