comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » writing gray scale GIFs from a 24bit machine
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Switch to threaded view of this topic Create a new topic Submit Reply
writing gray scale GIFs from a 24bit machine [message #18814] Fri, 04 February 2000 00:00 Go to next message
reardonb is currently offline  reardonb
Messages: 16
Registered: December 1999
Junior Member
Hi,
I'm having trouble creating gray scale GIF images that accurately
reflect what is on my screen. I'm using a Mac and this problem does not
exist when the colors are set to 256 but if the colors are set to
thousands or millions I get a saved GIF image that has one color band
that should be almost black but is instead almost white. I get this
problem for gray scale color pallets such as loadct, 0. If I set the
color pallet to loadct, 39 the saved GIF is very much like the screen
image. The code I am using is the one David Fanning suggested and is
attached below. I would like for this code to work on any system with
any color pallet and any monitor color setting. Any help would be
appreciated.
Thanks.
-Brian

device, decomposed=0
loadct, 0, ncolors=20, bottom=0
wset, info.wid
device, Get_visual_depth=thisdepth
if thisdepth gt 8 then begin
image24=TVRD(True = 1)
snapshot=color_quan(image24,1,r,g,b)
endif else begin
snapshot = tvrd()
tvlct, r, g, b, info.bottom, /get
endelse
write_gif,filename+'.gif',snapshot, r, g, b



Sent via Deja.com http://www.deja.com/
Before you buy.
Re: writing gray scale GIFs from a 24bit machine [message #18861 is a reply to message #18814] Mon, 07 February 2000 00:00 Go to previous message
davidf is currently offline  davidf
Messages: 2866
Registered: September 1996
Senior Member
Liam Gumley (Liam.Gumley@ssec.wisc.edu) writes:

> I used to worry about this problem and all the other myriad possibilities
> for screw-ups in reading the display and writing an image file. But then I
> wrote SAVEIMAGE, thereby putting the intelligence into software where it
> belongs. A close reading of the code might be instructive (heaven knows I
> have to go back and read it to remember what its doing!).

Thank goodness! I thought I was the only one who wrote
programs and then couldn't remember how they worked! :-)

Cheers,

David
--
David Fanning, Ph.D.
Fanning Software Consulting
Phone: 970-221-0438 E-Mail: davidf@dfanning.com
Coyote's Guide to IDL Programming: http://www.dfanning.com/
Toll-Free IDL Book Orders: 1-888-461-0155
Re: writing gray scale GIFs from a 24bit machine [message #18862 is a reply to message #18814] Mon, 07 February 2000 00:00 Go to previous message
Liam E. Gumley is currently offline  Liam E. Gumley
Messages: 378
Registered: January 2000
Senior Member
<reardonb@my-deja.com> wrote in message news:87mpv6$nag$1@nnrp1.deja.com...
> Liam,
> I installed your saveimage.pro program and it is working great. Thanks!
> Unfortunately, I do not fully understand what I was doing wrong. Could
> you enlighten me? Thanks.
> -Brian

Brian,

I'm glad my SAVEIMAGE procedure is serving you well. I'm not sure what you
were doing wrong: There are quite a few variables to take care of. For
example, if you are using TVRD to read from any 24-bit display, you should
have decomposed color turned on, e.g.

device, decomposed = 1

I used to worry about this problem and all the other myriad possibilities
for screw-ups in reading the display and writing an image file. But then I
wrote SAVEIMAGE, thereby putting the intelligence into software where it
belongs. A close reading of the code might be instructive (heaven knows I
have to go back and read it to remember what its doing!).

Cheers,
Liam.
http://cimss.ssec.wisc.edu
  Switch to threaded view of this topic Create a new topic Submit Reply
Previous Topic: Re: IDL FFT vs C benchmark?
Next Topic: Re: MAP-GRID question

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Fri Oct 10 07:03:29 PDT 2025

Total time taken to generate the page: 1.04655 seconds