White colour on icon

Hi,

I have an 8-colour 32 x 32 icon (.ico file), which I use throughout my program for its logo.  When it is displayed full-size in either Windows Explorer or in a TImage component, white parts on the image are displayed in white as expected.  However, when the icon is displayed half-size, such as when used as an icon in the form and appears on the taskbar, the white appears transparent, so grey (Window's background colour) shows up instead of white for those areas.

So why is it that when displayed full-size, white is correctly displayed but when it is half-size, white is transparent and appears grey?  I'd prefer it if the white areas on the image always appear white or at least be consistent when displayed in different sizes.

I'm using Windows '98 SE and Delphi 4 Pro.

Thanks in Advance,

Richard
Richard2000Asked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

sftwengCommented:
Try dropping a single pixel of a colour you don't use into the bottom left corner - it's sometimes used as the "transparency" colour.
0
mehdi_mCommented:
if you wanna show the icon in the title-bar of form's, by default it is transparent. when an image is transparent means that the transparent color of the image (left-bottom pixel's color of it) will be replaced with parent color. (as sftweng said before). and now if you want to have the same effect in logo or ... that you made. it depends on the component which do you use. for example if you use TImage, it's enough to set the transparent property to True.

hope to be usefull.

mehdi_m
0
Slick812Commented:
hello Richard2000, Icons are completely Handled by the "windows system", and changing a pixel  probally will not change anything in your icon except that pixel, because the system gets it's Icon transpanency pixel definitions from a Black and White "MasK"  bitmap that is also in the Icon file wilth the color bitmap., If you are having trouble with the white areas becomeing transparent, it might be because the desingners of the Icon were not very good, and should have tested the Icon to see how it looked in the 16x16 size, The system will automatically make a 16x16 Icon if one is not in the Icon resource or file, and it will resize the "Mask" bitmap to 16x16, however, this resize can throw off some pixels because it has to average out some resized pixels. . . You might should get an Icon Editor, and include a 16x16 Icon in the Icon file along with a 32x32 icon and a 48x48 icon for windows XP. . . . I do not know of any way to get the system to alter the way it resizes an Icon, but a well made Icon will be tested and look OK in the 16x16 size
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Richard2000Author Commented:
Hi,

Thank you for your help.

After looking at the icon further, I have found that the icon actually contains two images, one for 32 x 32 and one for 16 x 16 (I had originally assumed there was only one 32 x 32 image).  An area on the 32 x 32 image uses white, whilst the same area on the 16 x 16 image uses grey instead.  I assume that this is because as the 16 x 16 image is smaller, it does not need to be as bright in that area.  So everything appears to be working as expected.

There is no 48 x 48 image at present, but I can always add one in the future if required.

Richard
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Delphi

From novice to tech pro — start learning today.