Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!tut.cis.ohio-state.edu!anaconda.cis.ohio-state.edu!meekins From: meekins@anaconda.cis.ohio-state.edu (Tim Meekins) Newsgroups: comp.sys.apple2 Subject: Re: Color Graphics Printing Message-ID: <115322@tut.cis.ohio-state.edu> Date: 2 May 91 00:32:20 GMT References: <1991May1.173724.13975@nevada.edu> Sender: news@tut.cis.ohio-state.edu Organization: The Ohio State University, Department of Computer and Information Science Lines: 46 In article <1991May1.173724.13975@nevada.edu> alfter@nevada.edu (SCOTT ALFTER) writes: >red, yellow, blue, and black. What formulas should be applied to >generate the color separations? After that, is there an efficient way C: Cyan or blue M: Magenta or red Y: Yellor or (you guessed it) yellow. First RGB -> CMY Since CMY is the inverse of RGB, it's as easy as: C = 1-R M = 1-G Y = 1-B Now, to take advantage of the black ribbon: CMY -> CMYK, where K is black K = min(C,M,Y) from above C = C - K M = M - K Y = Y - K >to generate a halfway-decent range of halftones? A way to make 256 >different shades would be especially nice, but I'll probably have to >settle for 64 shades (8x8 matrix for halftoning at 72x72 dpi). Maybe >the GS system software gurus can help; they have to do the same stuff >in the Imagewriter II drivers, but any code examples must be usable on >8-bit machines (I'm writing the programs on my IIe). > Hmmm. Now dithering is a whole new ballgame. With a little work, I'm sure you can figure out ordered dithering. But, common use in printing is the Floyd-Steinberg error diffusion. Not something I can really go into in a post like this. Also, dithering is a lot more complicated when working with several colors, namely CMYK. Most algorithms are for gray scale dithering, not several-color dithering. -- +---------------------------S-U-P-P-O-R-T-----------------------------------+ |/ Tim Meekins <<>> Snail Mail: <<>> Apple II \| |> meekins@cis.ohio-state.edu <<>> 8372 Morris Rd. <<>> Forever! <| |\ timm@pro-tcc.cts.com <<>> Hilliard, OH 43026 <<>> /|