[comp.sys.amiga] Yet Another 1.4 Feature Request

carlson@betelgeuse (Richard L. Carlson) (03/08/89)

With the 1.3 changes, the printer.device is nothing short of incredible.
However, there is just one more thing I would like to see added: support
for "overlapping dots" in graphics prints.

For example, I have a printer that supports 144x144 dpi graphics.  But
at this resolution, adjacent dots overlap by, say, 40%.  This makes
nice smooth lines (esp. with 1.3 "smoothing"!), but when printing gray-
scale images, everything above ~70% black comes out *black*.

I think an "Overlap_Compensation" field tacked on to the Printer Extended
Data structure would solve the problem nicely.  Say, make it a word long,
ranging from 1 to FFFF (0 adds no compensation, as things work now).
Treat it as a fixed-point number between 0 and 1, and after finding the
"gray" value of a pixel, multiply that value by this compensation factor
before doing the dithering magic and plotting the dots.

For example, a 90% black pixel at Overlap_Compensation=C000 would turn into
a 67% black pixel, which would look just about right on my printer.
As a subtle complication, a 100% black pixel should probably be printed
unchanged (100% black), regardless of the Overlap_Compensation.  If the
printer's image made "true black" significantly darker than "almost black",
it would indicate that the Overlap_Compensation is set wrong.

As a corollary question, where is the *right* place for sending ideas
like this to Commodore?  This ain't a bug report, so Commodore's email
bug report address would probably be inappropriate.  The C-A people seem
to do a great job of monitoring UseNet, but there's probably a more
"formal" way of getting stuff like this to them...

-- Richard
   {tektronix,dual,sun,decvax,...}!ucbvax!ernie!carlson
   carlson@ernie.berkeley.edu