[vwnc] Image mask

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|

[vwnc] Image mask

Mike Bielser
Hi
I have a (hopefully) simple question: Is it possible to use 8 bit image masks in VW 7.6? The
"BasicLibraries.pdf" document only mentions B&W masks, as far as I found out...

Mike

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] Image mask

Travis Griggs-3

On Nov 5, 2008, at 3:59 AM, Mike Bielser wrote:

> Hi
> I have a (hopefully) simple question: Is it possible to use 8 bit  
> image masks in VW 7.6? The
> "BasicLibraries.pdf" document only mentions B&W masks, as far as I  
> found out...


Binary transparency is all base VisualWorks has.

Some of us use the CairoGraphics package/libraries to do a variety of  
alpha derived things in VW.

If all you want is alpha masked icons, you might give the  
HigherGlyphics package a try. This all assumes you're willing to  
install the Cairo libraries on your machine.

Runar Jordahl has also done an alpha image thing for VW. 'Epigent  
Graphics Alpha Icon Image' is the name of the package I think.

--
Travis Griggs
[hidden email]
"The dissenter is every human being at those moments of his life when  
he resigns momentarily from the herd and thinks for himself." -
Archibald MacLeish, poet and librarian



_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] Image mask

Mike Bielser
On 05.11.2008 19:11, Travis Griggs wrote:

> Binary transparency is all base VisualWorks has.
>
> Some of us use the CairoGraphics package/libraries to do a variety of  
> alpha derived things in VW.
>
> If all you want is alpha masked icons, you might give the  
> HigherGlyphics package a try. This all assumes you're willing to  
> install the Cairo libraries on your machine.
>
> Runar Jordahl has also done an alpha image thing for VW. 'Epigent  
> Graphics Alpha Icon Image' is the name of the package I think.

Thanks a lot for the pointers! Yes, basically (at least at this point) it's about (nicer) icons.
I've started with the "Epigent Graphics" package, works well (so far; not quite there yet...). Cairo
is not a problem either, I already poked around, so I have it up and running... but at this point
it's overkill

Mike


_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

[vwnc] Image mask (cont'd)

Mike Bielser
In reply to this post by Travis Griggs-3
I'm now using the "Epigent Graphics" package for my toolbar and have noticed visual
artifacts/anomalies. Does anybody have an idea as to why these anomalies occur? Please see the
attached two screenshots. The "toolbar-in-VW" screenshot shows that icons three to six (but, oddly
enough, not the first two) actually have kind of like a sibling (in a "layer" behind) that's been
translated/shifted slightly...please compare this to the originals in Photoshop. Note: these visual
artifacts occur irrespective of whether the icon is enabled/disabled. Any hints are welcome, thanks
in advance.

Mike

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc

toolbar-in-VW.jpg (53K) Download Attachment
toolbar-in-Photoshop.jpg (54K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] Image mask (cont'd)

Runar Jordahl
Could you possibly try to limit the problem? What happens if you for
example use the "save disk" icon at position 1? Will it be corrupted
then too?

You provide JPG images, not the original (PNG?) images having alpha
information. Understanding why you get your problem is very hard
without access to the underlying data.

Here is what I wrote about the alpha support earlier:
"Icons can be created from a PNG image file stream, an instance of
Depth32Image, or as a method encoding the entire PNG image file in a
packaged string. For the latter, Epigent File In Method is used."
http://www.cincomsmalltalk.com/userblogs/runarj/blogView?entry=3360717237

I suggest you set up a test application where the image is stored in
code. The test should display a single icon with problems. Take a look
at "AlphaChannelIconTestApp open" to see an example of such an
application. You could attach the application as a parcel to a new bug
report.

Kind regards
Runar Jordahl
_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] Image mask (cont'd)

Steven Kelly
In reply to this post by Mike Bielser
I'd guess the difference is that one and two can only be visually on,
whereas three to six can be on or off. Have a look at how
OpaqueImageWithEnablement is built and displayed, and how that interacts
with the Epigent stuff. Maybe #displayOn:at:enabled is always displaying
both versions - the default method in VisualComponent certainly does two
displays offset by 1@1 if enabled is false.

HTH,
Steve

> -----Original Message-----
> From: [hidden email] [mailto:[hidden email]] On
> Behalf Of Mike Bielser
> Sent: 06 November 2008 09:46
> To: [hidden email]
> Subject: [vwnc] Image mask (cont'd)
>
> I'm now using the "Epigent Graphics" package for my toolbar and have
> noticed visual
> artifacts/anomalies. Does anybody have an idea as to why these
> anomalies occur? Please see the
> attached two screenshots. The "toolbar-in-VW" screenshot shows that
> icons three to six (but, oddly
> enough, not the first two) actually have kind of like a sibling (in a
> "layer" behind) that's been
> translated/shifted slightly...please compare this to the originals in
> Photoshop. Note: these visual
> artifacts occur irrespective of whether the icon is enabled/disabled.
> Any hints are welcome, thanks
> in advance.
>
> Mike

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] Image mask (cont'd)

Runar Jordahl
I see... Thank you for pointing out this possibility.

I did not cover this scenario when making my code. If this is the
problem, I will try to correct it this week.

Kind regards
Runar Jordahl

> I'd guess the difference is that one and two can only be visually on,
> whereas three to six can be on or off. Have a look at how
> OpaqueImageWithEnablement is built and displayed, and how that interacts
> with the Epigent stuff. Maybe #displayOn:at:enabled is always displaying
> both versions - the default method in VisualComponent certainly does two
> displays offset by 1@1 if enabled is false.
_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] Image mask (cont'd)

Mike Bielser
Dear Runar, Dear Steven
thank you for your comments. A few clarifications:
- original images are PNG (just the screenshots are JPEG) and show up "correct" in several different
apps (Photoshop, Icon Workshop,...)
- Yes, I do use "Epigent File In Method" so my PNG is in a class side method

I'll make a small test app to try what Runar suggested (swapping icon positions), so please wait for
that. Steven's comment however is something that (I believe, at least) would require a change in the
Epigent packahe, right?

Cheers
Mike

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] Image mask (cont'd)

Runar Jordahl
In reply to this post by Steven Kelly
AlphaChannelImage does not support enabling/disabling. So it will use
VisualComponent>>displayOn:at:enabled: if #displayOn:at:enabled: is
sent to it. The implementation in VisualComponent should probably be
overridden to simply display the image in gray colors, or with more
transparency.

I could provide a subclasses AlphaChannelImageWithEnablement along the
lines of what OpaqueImageWithEnablement does. I am sure that would
solve the problem.

Kind regards
Runar Jordahl
_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] Image mask

Annick
In reply to this post by Mike Bielser
Hi,

I am trying to generate images using Cairo and pixmaps.

My problem is that I can't have a pixmap to draw on with a transparent  
background, so that I  come up with a white rectangle instead of the  
contours.
I would like to do exactly what FloatingBallon does, but generating my  
own icons by program with alpha channel.
Usual masks dont 'provide alpha channels.
I could not find out how to combine it with Cairo.

Any idea ?
Annick

Le 5 nov. 08 à 21:54, Mike Bielser a écrit :

> On 05.11.2008 19:11, Travis Griggs wrote:
>
>> Binary transparency is all base VisualWorks has.
>>
>> Some of us use the CairoGraphics package/libraries to do a variety of
>> alpha derived things in VW.
>>
>> If all you want is alpha masked icons, you might give the
>> HigherGlyphics package a try. This all assumes you're willing to
>> install the Cairo libraries on your machine.
>>
>> Runar Jordahl has also done an alpha image thing for VW. 'Epigent
>> Graphics Alpha Icon Image' is the name of the package I think.
>
> Thanks a lot for the pointers! Yes, basically (at least at this  
> point) it's about (nicer) icons.
> I've started with the "Epigent Graphics" package, works well (so  
> far; not quite there yet...). Cairo
> is not a problem either, I already poked around, so I have it up and  
> running... but at this point
> it's overkill
>
> Mike
>
>
> _______________________________________________
> vwnc mailing list
> [hidden email]
> http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
>



_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] Image mask (cont'd)

Annick
In reply to this post by Runar Jordahl
Hi,


I have been trying to  get the same effect, images with rounded corners.
The problem is that I use Cairo to draw on the png, so the  
becomeCairoCompatible method translates the palette, and Epigent does  
not work with the FixedPalette cairoARGB32.
I tried to translate back the image but then nothing appears,  
everything is transparent.

Any idea ?
Annick Fron

Le 6 nov. 08 à 11:53, Runar Jordahl a écrit :

> AlphaChannelImage does not support enabling/disabling. So it will use
> VisualComponent>>displayOn:at:enabled: if #displayOn:at:enabled: is
> sent to it. The implementation in VisualComponent should probably be
> overridden to simply display the image in gray colors, or with more
> transparency.
>
> I could provide a subclasses AlphaChannelImageWithEnablement along the
> lines of what OpaqueImageWithEnablement does. I am sure that would
> solve the problem.
>
> Kind regards
> Runar Jordahl
> _______________________________________________
> vwnc mailing list
> [hidden email]
> http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
>



_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc