[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: grayscale vs. color



Andrew (noymer@my-deja.com) writes:

> Sorry if this is a stupid question.  I am making some line
> graphs (eps files) for a book, using IDL direct graphics.
> Some of the graphs have several series and it would be nice
> to use solid grey as an alternative to dot-dash-double-dot-dash-
> double-dotdash or whatever for some lines.
> 
> In the past, I have always loaded a colortable and there is
> always some color, not hard to find, that turns into the just
> right shade of grey when it goes to the laser printer.  This color
> is not always "grey"  --- it's whatever color prints out grey.
> 
> Trouble is, this time it's going to some imagesetter (no idea
> which kind) far far away.  Plus they don't want color and they'll
> probably freak if they see color.  I don't know what they'll say to
> a grey-like-color in a color EPS file; maybe that's kosher, but isn't
> there a way to have grayscale in a garden-variety B&W EPS file?
> 
> Is there a quick and dirty way to load a colortable that is
> really just a grayscale?  I looked in the material I had but didn't
> find anything.

Well, you want to stay away from those very light grays,
which don't show up very well on white PostScript background,
but how about something like this, taking 10 colors from 
middle gray to black:

   LoadCT, 0, NColors=20, Bottom=1
   plotcolors = Indgen(10) + 11
   white = GetColor('white', !D.Table_Size-2)
   black = GetColor('black', !D.Table_Size-3)
   Device, Decomposed=0
   Plot, LoadData(17), YRange=[0,100], Color=black, Back=white
   FOR j=0,8 DO OPlot, LoadData(17), Color=plotColors[j]

Looks wonderful on my display. And I bet it looks just as good
in PostScript. Be sure to turn the Colors keyword ON when you
set up the PostScript device. :-)

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