imread (repost)

Daniel J Sebald daniel.sebald at ieee.org
Tue Aug 5 12:43:15 CDT 2008


Bill Denney wrote:

>> Currently (and also in matlab I believe) you can only view one image 
>> at a time. So my question is basically, what is behind image? Say I 
>> run the following
>>
>>   im = rand (100, 100, 4);
>>   im (:, :, 4) = 1; # full transparancy
>>   figure
>>   imshow (im)
>>
>> What should I expect to see?
> 
> 
> I would expect to see the axis background color.  If the axis background 
> color is set to none, then I would expect to see the figure background 
> color.  I believe that if you set the figure background color to none in 
> matlab, you see a cross-hatched pattern.  When exporting, I would 
> anticipate that the graphics backend would take alpha into account 
> relative to the output device, so if the output was to ps or pdf, it 
> would convert the background color to the color as visible on the screen.
> 
> I'm not saying that this is easy, just that-- to me-- the above is the 
> right way to do it.

In my opinion, the right way is for PostScript to handle alpha blending.  Wish it would.  It's the easiest place to implement such a feature, i.e., at the last step just blend the contents together.

I guess my feeling, whether it is gnuplot handling the alpha channel or a new intermediate graphics backend, is to not support alpha blending if the output medium doesn't support it.  So if one wanted to do alpha blending, they'd have to output to some driver that supports it and then convert that result (likely a bit map) to, say, PostScript.  Not an elegant solution, but I don't think it is worth putting large amounts of effort into a feature that gets limited use.

Dan


More information about the Octave-maintainers mailing list