Solved

Find background color

Posted on 1998-12-04
18
259 Views
Last Modified: 2010-04-04
Hi,
how can I get the background color of an image in TImage component?

Thank's
0
Comment
Question by:anton_as
  • 9
  • 6
  • 3
18 Comments
 
LVL 12

Expert Comment

by:rwilson032697
Comment Utility
There isn't actually a background color for TImage components. You can get a colour of a specific pixel using the pixels property of the canvas property of the TImage component. So if you know a specific pixel or area of pixels will be representative of the background colour you could determine it by looking at them.

Cheers,

Raymond.
0
 
LVL 20

Expert Comment

by:Madshi
Comment Utility
There IS a specific pixel!
If your image is set to "image.bitmap.transparentMode=tmAuto", the following pixel determins the transparent color: "image.bitmap.canvas.pixels[0,image.bitmap.height]"
If your image is set to "image.bitmap.transparentMode=tmFixed", the property "image.bitmap.transparentColor" determines the transparent color.
If you use Delphi2, I think, there's no transparentMode nor a transparentColor. There the transparent color is always determined by the left-bottom pixel.

All what I said refers to bitmap. Of course an image could be an icon or a metafile, too. If it is an icon, there's no transparent color. The icon has a real mask.
Can't say anything about metafiles.

If you like my answer, I would really like to get the points for it. Sorry rwilson...    :-)

Regards, Madshi.
0
 
LVL 12

Expert Comment

by:rwilson032697
Comment Utility
Ahem.

Madshi, anton_as said background colour not transparent colour!!! :-)

Cheers,

Raymond.

0
 
LVL 20

Expert Comment

by:Madshi
Comment Utility
Raymond,

that's right. But I think he means the transparent color. What else could he mean?

Regards, Madshi.
0
 

Author Comment

by:anton_as
Comment Utility
Sorry, it took so long to post this comment. It's been a busy day for me.
Raymond and Madshi,
my purpose of finding the background is to be able to make the image transparent. Because i think sometimes Delphi's taking the wrong color, so the image become damaged.
To Madshi, are you sure by setting transparent mode to tmFixed we'll get the right background color? Because i'm sure that i can't use the auto mode, since the object of the image may reside in [0,height] position.

Thank's
0
 
LVL 20

Expert Comment

by:Madshi
Comment Utility
Anton_as,

just set the transparent color (e.g. "transparentColor:=clWhite"). I think this will set the transparent mode to tmFix automatically. And - I think that should solve your problem. Of course you have to know which color you want to be transparent... Is that a problem? If yes, please tell me more about for what you need it.

Regards, Madshi.
0
 
LVL 12

Expert Comment

by:rwilson032697
Comment Utility
Anton - it looks as though Madshi has hit the mail on the head - give him the points!

Cheers,

Raymond.

0
 
LVL 20

Expert Comment

by:Madshi
Comment Utility
Thanx Raymond. That's fair...   :-)
0
 

Author Comment

by:anton_as
Comment Utility
Madshi,
yes that's a problem for me.
Can you please help me find the transparent color?

Thank's
0
IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 
LVL 20

Expert Comment

by:Madshi
Comment Utility
Anton_as,

Please tell me more: From where do you get the bitmap?

If YOU don't know what color shall be transparent and you don't like the automatism, then who should know the transparent color? You could try to program a artificial intelligence that searches all the border pixels and choose that color for transparent that you find most often.

Regards, Madshi.
0
 

Author Comment

by:anton_as
Comment Utility
Hi Madshi,

I think I know the transparent color, and i guess i just have to use it.
Thank you.
Btw, i want to give you this point, how can i do that?
Should i choose reject or accept? This point belongs to you.
Please tell me.
0
 
LVL 20

Expert Comment

by:Madshi
Comment Utility
If you want to give the points to me, you should reject Raymond's answer. Afterwards I'll write a "dummy" answer that you can accept.

Thank you, regards... Madshi.

P.S: If you've still question about transparency, please ask...
0
 
LVL 20

Expert Comment

by:Madshi
Comment Utility
Thanx for the points...  :-)
0
 

Author Comment

by:anton_as
Comment Utility
I reject this because Madshi's the one who answered my question,
so I think he deserves the point.
0
 

Author Comment

by:anton_as
Comment Utility
Madshi, please propose an answer.
0
 
LVL 20

Accepted Solution

by:
Madshi earned 100 total points
Comment Utility
Hmmm. Perhaps you need some glasses?   :-)
0
 

Author Comment

by:anton_as
Comment Utility
Sorry to keep you waiting.
Thank's

Happy New Year
0
 
LVL 20

Expert Comment

by:Madshi
Comment Utility
No prob...  :-)
0

Featured Post

Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

The uses clause is one of those things that just tends to grow and grow. Most of the time this is in the main form, as it's from this form that all others are called. If you have a big application (including many forms), the uses clause in the in…
Have you ever had your Delphi form/application just hanging while waiting for data to load? This is the article to read if you want to learn some things about adding threads for data loading in the background. First, I'll setup a general applica…
Internet Business Fax to Email Made Easy - With eFax Corporate (http://www.enterprise.efax.com), you'll receive a dedicated online fax number, which is used the same way as a typical analog fax number. You'll receive secure faxes in your email, fr…
Illustrator's Shape Builder tool will let you combine shapes visually and interactively. This video shows the Mac version, but the tool works the same way in Windows. To follow along with this video, you can draw your own shapes or download the file…

763 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

7 Experts available now in Live!

Get 1:1 Help Now