GNU Info

Info Node: (gimpprint.info)Weaving algorithms

(gimpprint.info)Weaving algorithms


Prev: Weaving introduction Up: Weaving
Enter node , (file) or (file)node

Weaving algorithms
==================

   I considered a few algorithms to perform the weave.  The first one I
devised let me use only (jets-distance_between_jets+1) nozzles, or 25.
This is OK in principle, but it's slower than using all nozzles.  By
playing around with it some more, I came up with an algorithm that lets
me use all of the nozzles, except near the top and bottom of the page.

   This still produces some banding, though.  Even better quality can be
achieved by using multiple nozzles on the same line.  How do we do
this?  In 1440x720 mode, we're printing two output lines at the same
vertical position.  However, if we want four passes, we have to
effectively print each line twice.  Actually doing this would increase
the density, so what we do is print half the dots on each pass.  This
produces near-perfect output, and it's far faster than using (pseudo)
"MicroWeave".

   Yet another complication is how to get near the top and bottom of the
page.  This algorithm lets us print to within one head width of the top
of the page, and a bit more than one head width from the bottom.  That
leaves a lot of blank space.  Doing the weave properly outside of this
region is increasingly difficult as we get closer to the edge of the
paper; in the interior region, any nozzle can print any line, but near
the top and bottom edges, only some nozzles can print.  We originally
handled this by using the naive way mentioned above near the borders,
and switching over to the high quality method in the interior.
Unfortunately, this meant that the quality is quite visibly degraded
near the top and bottom of the page.  We have since devised better
algorithms that allow printing to the extreme top and bottom of the
region that can physically be printed, with only minimal loss of
quality.

   Epson does not advertise that the printers can print at the very top
of the page, although in practice most of them can.  The quality is
degraded to some degree, and we have observed that in some cases not
all of the dots get printed.  Epson may have decided that the
degradation in quality is sufficient that printing in that region
should not be allowed.  That is a valid decision, although we have
taken another approach.

Simple weaving algorithms
Starting to weave.
Perfect weaving
Improving the weave.
Weaving collisions
Bang!
What is perfect weaving?
What makes a ``perfect'' weave?
Oversampling
Increasing resolution, reducing banding

automatically generated by info2www version 1.2.2.9