Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Adaptive Compression for Dot-Matrix Printer Fonts

IP.com Disclosure Number: IPCOM000102171D
Original Publication Date: 1990-Nov-01
Included in the Prior Art Database: 2005-Mar-17
Document File: 3 page(s) / 88K

Publishing Venue

IBM

Related People

Hucaby, DR: AUTHOR

Abstract

Disclosed is an algorithm for compressing and decompressing dot-matrix character font data in 24-wire printers. The algorithm adaptively compresses wire data based on the outcome of two independent compression processes. The resulting data can be quickly decompressed "on- the-fly" as the printhead moves.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 64% of the total text.

Adaptive Compression for Dot-Matrix Printer Fonts

       Disclosed is an algorithm for compressing and
decompressing dot-matrix character font data in 24-wire printers.
The algorithm adaptively compresses wire data based on the outcome of
two independent compression processes.  The resulting data can be
quickly decompressed "on- the-fly" as the printhead moves.

      Dot-matrix printer characters are composed of horizontal rows
of vertical columns (slices) of dots. Instead of storing the complete
matrix of dots for each character, the amount of memory required can
be reduced by removing redundancy in dot slices.  Redundant data can
be described as either identical dot data in adjacent slices or white
space in adjacent dots within a slice.

      Font data size can usually be reduced by compressing one
specific type of redundant data.  Although the concepts of
compressing either white space data or repeated slice data are well
known methods, the adaptive font compression/decompression algorithm
combines the two in an optimal manner.  This results in a very
efficient and cost-effective method for storing and retrieving large
amounts of font data in a small memory space.

      The 24-wire character slices are subdivided into three
byte-size segments, which are independently analyzed to check for
white bytes and bytes that are identical to the bytes immediately to
their left.  For each slice, the greater number of white or repeated
bytes decides which ty...