Re: Calculating actual Ink amounts from CMYK pipeline

Solomon Peachy via Gimp-print-devel <[email protected]> Mon, 1 Jul 2024 13:24:52 -0400
Newsgroups gmane.linux.printing.gimp-print.devel
Message-ID <[email protected]>
On Mon, Jul 01, 2024 at 11:17:40AM -0400, Walker Blackwell wrote:
> There is some multiplication of numbers between the CMYK channels that 
> is happening in the system at some point. Does anyone know what this 
> multiplication is? If it’s a standard number/thing I can apply it to 
> my backwards math.

Coincidentally, I think I ran into what you're looking for last week. 
Have a look at do_gcr() in src/main/channels.c:

This is its main loop:

  for (i = 0; i < cg->width; i++)  // ie repeat for each pixel
    {
      unsigned k = output[0];
      if (k > 0)
	{
	  int kk = gcr_lookup[k];
	  int ck;
	  if (kk > k)
	    kk = k;
	  ck = k - kk;
	  output[0] = kk;
	  output[1] += ck * cg->cyan_balance;
	  output[2] += ck * cg->magenta_balance;
	  output[3] += ck * cg->yellow_balance;
	  nzx.nzl |= *(unsigned long long *) output;
	}
      output += cg->gcr_channels;
    }



 - Solomon
-- 
Solomon Peachy			      pizza at shaftnet dot org (email&xmpp)
                                      @pizza:shaftnet dot org   (matrix)
Dowling Park, FL                      speachy (libera.chat)

_______________________________________________
Gimp-print-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gimp-print-devel
signature.asc (application/pgp-signature, 833 B)
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEE3H5Sx9DyiyB5hnENrGLLO/XVulEFAmaC5mEACgkQrGLLO/XV
ulFHuA//SwRTEb7pzcNQhnqlKxR0oWMrmNJSkrTX9SbJMHET63QMOQf3Nqe6MNY1
ktZpA1XeTMq6W57z6xDiX+iGkG5vW1+XFZADoE3tuERY+thBBmDWWauEm4XMB+mU
Z6xAlolKGqHr5KCd1Y5JqBQrAnqpzXD64e/SwdwT1lHqnIOXntGibTO3YtIQd8Ra
YeNEDkwA9BCgjLzx9vG06RsQowJSaetrwOfjQA9mm8OeBIL86q4yOB5UkCbxgn4V
GINcxiHmY16KEQRwSsN+Sd79+2D/6iyGY6QcrEOEFGvlR3lP1SAUUxLqUCwzXRuO
s+YtRmyC1Zfrta0ofPRkqDhlf94w5BgELzmm50iizLI2dNb5lpreqbLm8UCB8XuE
pzSrhmC54aUSogcr0nMozS9aAjMzUzVCTazfWOozwWtqUMX1GXs0a37RpVkug8sC
CzK2IkF3rDzydIX4HSHsB4axhghUGsCTQU/T4nT8+42LBnYMMr/cTUGQPXZzxlth
tgXTClj7c5rJs6ba5xnFaZPteElqVomQf2bfSsLYu2+pdBb3ItI62SZUPDswt0Q0
oHDe8N+HZdXijB9g7L07ABqHYQx1j86IsT3ifqwf8HKMOCjcSH8XMeaz8hCOphmr
YdhtjZZOHJJmFq5YvqWK0sAUnJiyY1BBPL16hDtHqaIkgPJElsM=
=aaCt
-----END PGP SIGNATURE-----