Browse Prior Art Database

Printing Raster Graphics by Using Swaths and a Simple Method for Breaking Up Arcs, Circles or Ellipses for Each Print Swath

IP.com Disclosure Number: IPCOM000038621D
Original Publication Date: 1987-Feb-01
Included in the Prior Art Database: 2005-Jan-31
Document File: 4 page(s) / 68K

Publishing Venue

IBM

Related People

Fox, TH: AUTHOR [+3]

Abstract

This article describes a method of implementing high level graphics on a printer by storing the graphics in a high level form which is then used to generate bit images on a swath by swath basis. A simple method is disclosed for minimizing processing for drawing arcs, circles or ellipses when the dot image is created separately for each print head pass because there is insufficient storage to create a single, complete image of the graphics. This disclosure is applicable to many printers that implement high level graphics, such as lines, arcs, circles, ellipses, markers, character strings, and similar objects. High level graphics means that instead of specifying the detailed bit image of the graphics to the printer, only the "object content description" is sent with the actual image being created inside the printer.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 35% of the total text.

Page 1 of 4

Printing Raster Graphics by Using Swaths and a Simple Method for Breaking Up Arcs, Circles or Ellipses for Each Print Swath

This article describes a method of implementing high level graphics on a printer by storing the graphics in a high level form which is then used to generate bit images on a swath by swath basis. A simple method is disclosed for minimizing processing for drawing arcs, circles or ellipses when the dot image is created separately for each print head pass because there is insufficient storage to create a single, complete image of the graphics. This disclosure is applicable to many printers that implement high level graphics, such as lines, arcs, circles, ellipses, markers, character strings, and similar objects. High level graphics means that instead of specifying the detailed bit image of the graphics to the printer, only the "object content description" is sent with the actual image being created inside the printer. The printer is then required to perform any necessary operation to produce the desired dots on the output page. The simplest methods for achieving this goal are unsatisfactory for a low cost printer. The simplest approach is to emulate a pen plotter in the literal sense. As each object is sent to the printer, it is immediately drawn. Drawing a complete figure then requires multiple reversals of the forms

(Image Omitted)

motion while maintaining the ability to accurately reposition to a specific position. In pen plotters this positional accuracy is achieved by moving the paper relatively slowly. However, a printer has the conflicting requirement of rapid forms motion for adequate throughput in some classes of non-graphics printing tasks, such as form feeds. A mechanism that allows rapid forms motion while maintaining positional accuracy under multiple forms-motion-direction reversals is more complex and costly than is suitable for a low cost printer. A second approach is effective emulation of a raster display. The page is represented by a complete bit mapped image which is first created and then printed. This method is used by some page printers but is expensive because of the large amount of memory required for the bit map. For example, a 13" x 11" page size will be printed at a resolution of 144 dots per inch for graphics. Storing a complete page image requires 362K bytes of RAM. If multiple colors are used, this increases to 1450K. The method described herein strikes a balance between these approaches, allowing unidirectional forms motion without requiring a full-page bit map. The page is split into bands that are perpendicular to the direction of paper motion. These bands are called swaths. All the graphics for the page are received by the printer and are stored in high level form. Once the graphics for the page have all been received, they are printed one swath at a time. To print the swath, the stored graphics are used to draw the contents of the current swath in a bit map corresponding to the...