GB1558458A - Raster printing system - Google Patents
Raster printing system Download PDFInfo
- Publication number
- GB1558458A GB1558458A GB15207/78A GB1520778A GB1558458A GB 1558458 A GB1558458 A GB 1558458A GB 15207/78 A GB15207/78 A GB 15207/78A GB 1520778 A GB1520778 A GB 1520778A GB 1558458 A GB1558458 A GB 1558458A
- Authority
- GB
- United Kingdom
- Prior art keywords
- data
- scan
- pattern
- line
- control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K2215/00—Arrangements for producing a permanent visual presentation of the output data
- G06K2215/0002—Handling the output data
- G06K2215/004—Generic data transformation
- G06K2215/0042—Rasterisation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K2215/00—Arrangements for producing a permanent visual presentation of the output data
- G06K2215/0002—Handling the output data
- G06K2215/0062—Handling the output data combining generic and host data, e.g. filling a raster
- G06K2215/0065—Page or partial page composition
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Record Information Processing For Printing (AREA)
- Dot-Matrix Printers And Others (AREA)
Description
(54) RASTER PRINTING SYSTEM
(71) We, INTERNATIONAL BUSINESS MACHINES CORPORA
TION, a Corporation organized and existing under the laws of the State of New York in the United States of America, of Armonk, New York 10504, United States of
America, do hereby declare the invention, for which we pray that a patent may be granted to us, and the method by which it is to be performed, to be particularly described in and by the following statement:- The present invention relates to raster printing systems.
According to the invention, there is provided a raster printing system comprising first control means for processing input digital data groups, comprising graphic and control data, to generate data specifying, for each group, the position and size, on a page to be printed, of information represented by the graphic data, and address data defining the position in a data store of the graphic data and means for directing the graphic data into the store at the position defined by the address data, second control means responsive to said position, size and address data for directing graphic data from the store into a buffer memory in a sequence defined by the sequence in which data is to be printed1 and third control means responsive to data from the buffer memory to cause modulation of a raster scanning device for printing the graphic data.
In order that the invention can be fully understood, a preferred embodiment thereof will now be described with reference to the accompanying drawings, in which:
FIGURE 1 is a basic block diagram showing the manner in which a printer embodying the invention may be coupled to a data processing unit via a main channel;
FIGURE 2 is a block diagram of the basic components of the printer shown in
Figure 1;
FIGURE 3 is a diagram showing the printing flexibility of a printer embodying the invention;
FIGURE 4 is a block diagram of the basic components of the raster image generator shown in Figure 2;
FIGURE 5 is a block diagram of the data flow for the control means for the printer;
FIGURE 6 is a diagram showing a conceptual operation of the strip buffer;
FIGURES 7A and 7B are diagrams illustrating the pattern shifter operation;;
FIGURE 8 shows a specific embodiment of the sorting arrangement for printing text data along the scan line direction;
FIGURE 9 is a diagram of a page printed along the scan line direction;
FIGURE 10 shows a specific embodiment of the arrangement for sorting the characters for printing text data across the scan line direction;
FIGURE 11 is a diagram of a page printed across the scan line direction;
FIGURE 12 is a diagram showing an example of the use of text data along with embedded control data; and
FIGURE 13 is a diagram showing the layout of the scan line storage in the strip buffer.
Figure 1 illustrates a data processing system 10 which includes a printer coupled to a main channel 14 of a data processing unit or computer 16. The printer 12 comprises an input/output device and the main channel 14 may be and is typically coupled to other input/output devices illustrated as 18 in Figure 1.
The general operation of the data processing system 10 in conjunction with the printer 12 may be as described in IBM Systcm/370 Principles of Operations, form
GA 22-700, published by International Business Machines Corporation. As described in that publication, the data processing unit 16 which typically includes a central processing unit and a main store, communicates with a printer and other input/ output devices 18 via the main channel 14. Character code bytes, each of which represents a different character or image to be printed by the printer 12, are originated in the data processing unit 16 and are communicated to the printer 12 under control of a channel command word sent to the main channel 14. Some control data is also included with the character data.Other channel command words originating in the data processing unit 16 include certain operating constants used in the printer 12 and certain instructions for the operation of the printer 12.
Figure 2 shows the basic arrangement of the printer 12 of Figure 1. The printer 12 includes a system adapter 20 which is coupled to the main channel 14 via a channel attachment providing appropriate interface between the main channel 14 and the printer 12. Data from the data processing unit 16 is communicated over the main channel to the channel attachment where it is carried by the external registers 22 to microprocessor 24 on its way from the channel to the control store 26.
The printer can handle a data record from the channel of up to 2,000 bytes of data.
The external registers 22 also provide data to a raster pattern memory 38, a raster image generator 28 and to imaging apparatus 32 by means of a process control adapter 34.
The imaging apparatus 32 in a preferred embodiment comprises apparatus responsive to a modulated laser scan for coating toner on the areas of a print drum discharged by the laser and transferring the toner onto paper, but the imaging apparatus may comprise any appropriate raster printer apparatus which prints the desired character graphics in response to the character data.
The microprocessor 24 stores the data from the data processing unit and executes the instructions provided by the various micro routines of microprograms loaded by the printer's user from a disk storage device 36. The printer is controlled by the microprocessor by the use of the external registers as the interface for controlling the devices associated with it, and these devices include the attachment 20 to the host system. It will be recognized by those skilled in the art that the printer could also be controlled by hard wired logic circuits. The process control adapter 34 is the interface to the imaging apparatus, and the microprocessor controls the printing through this interface. The adapter 34 provides control of the paper, signals for starting of the printing process and it alerts the microprocessor relative to the status signals from the imaging apparatus.In addition, the adapter transfers to the microprocessor signals representing all actions that occur at the operator's panel and passes back to the adapter signals to control the appropriate lights on the control panel.
The raster image generator 28 creates the page being printed. The microprocessor interprets the controls passed from the host system and prepares the page for printing. The microprocessor then takes an active part in the process of printing the page. The character patterns used during printing are held in the raster pattern memory (RPM) 38 which must have been loaded by the microprocessor before printing can take place. The auxiliary storage device 36 is used for the initial microprogram load operation and also for storage of diagnostics programs and error logs. The microprocessor controls all seeks and data flow in the auxiliary storage device.
The way in which the raster image generator creates the page to be printed can be understood by referring to Figure 4. The microprocessor controls the raster image generator through a set of the external registers. These registers permit the microprocessor to be loading the control parameters for the next pattern while the current pattern is being moved from the raster pattern memory 38 into the strip buffer 40. After the microprocessor has loaded all the control parameters, it sets a synchronization bit that permits the pattern moving process to begin. After a pattern has been moved, the raster image generator alerts the microprocessor so that the parameter registers can be reloaded. The data availabIe from the microprocessor includes the starting scan and the starting pel parameters, the scans per pattern and the pels per scan give the size of the pattern. The pattern address tells where the pattern to be placed on the page can be found in the raster pattern memory 38. The synchronization control keeps the microprocessor program and the pattern moving process in step with each other.
There are four major elements in the raster image generator as shown in
Figure 4. The raster pattern memory 38 holds the raster patterns that are to be placed on the page. It contains character patterns, raster image fields and patterns used for generating rules or lines. The user can view the printer as providing a full page raster buffer into which the page is created. In reality, the raster image generator has a buffer that covers only a small fraction of the page. The page is created in this strip buffer 40, and at the same time, sent to the imaging apparatus or to the accumulator disk. The pattern shifter 42 properly positions each scan line of pattern along the scan relative to the word structure of the strip buffer. The pattern move control 44 causes the transfer of the pattern from the raster pattern memory 38 through the pattern shifter 42 and into the strip buffer 40.The data is then printed from the strip buffer.
Thus, the printer is capable of printing a page with a very flexible format. A page layout showing the variety of formats is shown in Figure 3. For example, a line of data 50 at the top of the page is printed across the scan direction, whereas this same line of printing 51 is shown printed along the scan direction. In addition to the text data, the printer is capable of printing raster image data at any place on the page, such as the image data 52 and line segment patterns that are used for drawing rules such as vertical rule 54 or horizontal rule 56 can also be printed with this printer. The patterns are formed by a series of scans along the page, and successive scans are displaced so that the entire page can be printed by successive scans.The size of the characters is defined from a particular place such as the starting scan and starting pel which are located at the corner 58 of the "A" in Figure 3. The dimension of the pattern along the scan direction is defined in terms of picture elements (pels), whereas orthogonal to the scan direction the dimension of the character is defined in terms of the number of scans. Character patterns can be either 32 or 16 pels per scan, and if the character requires more than 32 pels then it is made up of multiple subpatterns which are treated by the hardware as multiple separate characters. Any pattern can have a maximum number of scan lines which is a limitation imposed by the size of the strip buffer.For example, for a strip buffer which has storage for 128 scan lines, the pattern can have a maximum of 64 scan lines, so that one pattern is being printed out of the strip buffer while the next pattern is being loaded into the strip buffer.
Character patterns are stored in groups of related characters of the same size and style called a font. Fonts are stored in 2,000-byte blocks of storage and the patterns may not span the boundaries between 2,000-byte blocks. There is a font index associated with each font, and this index contains information that pertains to all the characters in the font, such as baseline offset, for example, and information that is unique to each character. The microprogram which prepares the page for printing uses the index for converting from EBCDIC codes to pattern addresses and for the other controls required to build the page. The index consists of 256 entries, although only 254 codes can be used for printable patterns because one code is reserved for an escape to a control sequence and a second code is used for designating a blank.A font index is held in control store for each font that is active in the current page.
Raster images are broken down into square subarrays and these subarrays can then be handled by the hardware just like character patterns, and the normal image subarray is 32 pels by 32 scans. The patterns used for drawing rules are created in
32 by 32 squares, and the patterns are used for drawing both rules along the scans and rules across the scans. The first pattern has one black pel per scan line. Each
subsequent pattern increases by one the number of black pels per scan. The last pattern has all 32 pels per scan black. A complete set of rule patterns consists of 32 patterns and requires 4,000 bytes of raster pattern memory storage.
The raster image to be printed is created in the strip buffer. In the embodiment
described, the strip buffer covers only a small fraction of the page, since it contains only 128 scan lines. Depending on the resolution, this strip buffer capability would normally provide data for printing only a fraction of an inch of the page. The
conceptual operation of the strip buffer is illustrated in Figure 6 as a cvlinder 70 where scan line 127 wraps back to scan line 0. The printing takes place from those scan lines 76 filled and ready for printing as the strip buffer rolls across the plane
of the page being printed. The data on the scan line at the contact point is sent to the imaging apparatus. As each scan line is printed, the cylinder, in effect, rolls one
scan line position.Since each scan line position in the strip buffer is used several
times during the printing of the page, after sending data to the imaging apparatus,
that position in the scan line is set to zero. The entire character patterns such as the
A 80 are loaded into the scan lines 74 that have been cleared after printing. The
loading process begins at the current starting scan line (depicted by dotted line 78)
and moves into the cleared area 74 toward the place where data is being sent to the printer (as depicted by arrow 72). The current starting scan line 78 is prevented from moving closer than 64 scan lines from the printing scan so that the largest character pattern can be loaded without interfering with the printing process.If the distribution of the data on the page would cause the starting scan to move into the 64 scan work area, it must pause and wait for the printer to finish with enough scan lines so that the 64 scan line work area can be preserved. On the other hand, the printer must not be permitted to catch up to the starting scan. If the distribution of the data on the page would cause the printer to catch up with the starting scan, then an overrun condition would exist Overrun must be avoided, because, in a synchronous printer such as an electrophotographic printer, it would result in a bad page being printed. Overrun can be avoided by sending the raster image to the accumulator means 90 before printing.
The strip buffer accesses a pair of 32-bit words at a time. The pattern can have either 16 or 32 bits per scan and can be positioned to an arbitrary pel within a scan.
The purpose of the pattern shifter is to properly position patterns with respect to the 32-bit word structure of the strip buffer. Before explaining the operation of the pattern shifter, it is necessary to understand the organization of the strip buffer. The strip buffer 40 is divided into two halves, each one word wide as shown in the specific embodiment of Figure 5. Both section A 60 and B 62 are accessed each time the strip buffer is read or written, hence the input and output registers can be treated as single units. The two sections have separate, but coordinated, address registers 64, 66 where the address of Section A 64 is either equal to the address of section B 66 or is one greater than the address ofSection B. The pels in a scan line are arranged into 32-bit words which altemate between Sections A and B of the strip buffer as shown in Figure 13.
The input to the pattern shifter 42 is 32 bits wide and the output of the pattem shifter is 64 bits wide. Pel zero of the input can be positioned to any of the 64 pel positions of the output as shown in the two cases illustrated in Figures 7A and 7B.
The following 31 pels of the input will then fall in the following 31 pel positions of the output. All other pel positions of the output are set to zero. If pel zero of the input is shifted less than 32 positions as shown in Figure 7A, then the following pels fall in contiguous positions of the output from the pattem shifter and will be written correctly into the strip buffer by setting the address for Section A equal to the address for Section B. If pel zero of the input is shifted 32 or more positions, but less than 64 positions, as shown in Figure 7B, then instead of letting some of the following pels fall off the end of the pattern shifter they are wrapped around the low order output pel positions as though positioned modulo 64.In this case, pels from the pattern shifter are written correctly into the strip buffer by setting the address for
Section A to one greater than the address for Section B. The lowest six bits of the starting pel parameter specify the output pel position into which pel zero of the input is placed. The presence of a bit in position with a weight of 32 in the starting pel parameter specifies that the address for section A is one greater than the address for section B. Whenever data is written in to the strip buffer, the contents of the strip buffer in that position is read out and logically Oiled by ORs 46, 48 with the new data before being written back into the strip buffer.This process is required to avoid destroying patterns previously positioned within the span of the eight bytes accessed in the strip buffer3 and also gives the automatic overstrike capability for characters such as 59 in Figure 3 and the keming function for characters such as 49 in Figure 3.
The data from the strip buffer goes to parallel to serial converter 69 where it is converted to a serial bit stream on line 71. By means of switching means 82 and 84, the serial bit stream can be directed either on line 89 to control the imaging apparatus 32 for printing or to accumulator means 90 for temporary storage.
Accumulator means 90 comprises any suitable memory having the capacity to store a full bit image of a page so that a page of unlimited complexity can be printed.
In the preferred embodiment, accumulator means 90 is a monolythic memory. As shown by the chart below, the data can be written into the accumulator through OR circuit 86 by placing switch 82 in position a and switch 84 in position b. Additional data can be ORed into the accummulator means by placing both switches 82, 84 in position a. To OR, by means of OR circuit 88, the accumulator data with new data on line 71 and print, switch 82 is placed in position b and switch 84 is in position c.
When both switches are in position b, the data from line 71 is directed to output line 89 and the accumulator means is not used.
Modes Switch 82 Switch 84 Operation
I a b Write Data into Accumulator
II a a OR additional Data into Accumulator
III b c OR Accumulator Data with New Data
and Print IV b b Accumulator not used
The pattern move control 44 causes the proper number of scans for a pattern to be moved from the raster pattern memory through the pattern shifter to get them properly positioned along the scan line and placed into the strip buffer. The pattern move control is concerned with the three hardware data types. In the first type, each 32-bit word of the RPM holds one scan line of a 32 pel pattern. The scan lines are taken one at a time and passed directly to the pattern shifter. The RPM address is incremented as each scan line of the pattern is handled. In the second data type, each word of the RPM holds two scan lines of a 16-pel character.The first 16 pels are passed to the shifter left justified and the remaining pels to the shifter input are set to zero. After these pels have been written into the strip buffer, the pattern move control takes the second 16 pels in the RPM word, left justifies them, blanks the remaining input pels and writes these into the next scan line in the strip buffer. The
RPM address is incremented as each pair of scan lines in the pattern is handled.
In the third data type, each word of the RPM holds two scans of the subarray for low resolution raster image data. The first 16 pels are handled first. Each pel is doubled which expands this data to the full 32-pel width of the pattern shifter input.
These 32 pels are then written twice into the strip buffer on sequential scan lines.
Having completed the size doubling of the first halfword from the RPM, the pattern move control performs the same operation on the second halfword. The RPM address is incremented as each pair of scan lines of the low resolution pattern is handled. The pattern move control adjusts the offset in the pattern shifter to properly position the scan line of the pattern with respect to the word structure of the strip buffer. The pattern move control selects the proper word along the scan line in the strip buffer for placing the output of the shifter. When necessary, it causes the address in the two sections of the strip buffer to be offset from each other.The pattern move control increments the scan position in the strip buffer as each scan is placed into.it. It also decrements the scan counter as each scan line is transferred to the strip buffer and terminates the pattern transfer when the scan count equals zero. The pattern move control also handles the movement of data from the strip buffer to the imaging apparatus.
In the embodiment shown, the pattern move control 44 comprises a number of registers and data is loaded into each of these registers by the microprocessor as a preparatory step in each character move operation. The starting scan is loaded into register 91 from the scan table. The pattern address table supplies the data for starting pel for register 92, scans per for register 93, pels per for register 94, some data for the mode control register 95 and the RPM address for register 96. The mode control provides the control signal to actuate double dot control 97 if required.
The raster image of the page is generated in the 128 scan line range of the strip buffer at the same time the page is being printed. This dynamic process dictates that tall the raster patterns that start on the same scan line must be placed in the strip buffer before moving on to the raster patterns that start on the next scan line.
This means that as the page is printed, the raster patterns must be handled in starting scan line sequence. There is no guarantee that the data generated by the host application program will be in the sequence of ascending starting scan. In some cases the data from the host processor will be in order and, if so, a bit in the associated channel control word will indicate this to the printer. In this case, the printer does
not process-the data to put it in order, but merely prints the data in the sequence the data was transmitted over the channel. However, in most cases, the data will not be sorted in this order.
For example, in line 51 of the text in Figure 3, the first character to be printed is the H. However, the sixth character box 53 in the line represents a character having a superscript. Although this character is the sixth character in the line, it is printed second since it starts at a scan line prior to characters 55 which all start at the same scan line. Character box 57 represents a character having a subscript and consequently starts at a later scan line and smaller character boxes 61 also start at this scan line.
The printer provides an efficient and flexible means for assuring that raster patterns will be handled in starting scan line sequence when the page is being printed.
Flexibility of the technique used makes it a matter of total indifference in which sequence the data arrives. This flexibility makes it possible for the printer to print data in two directions on a page and to shift the baseline at any time. The technique developed for the printer makes use of linked lists with one list for each scan line in the page. The collection of list heads is called a scan table. The list head for each scan line points to one of two places, it can point to the list head for the next scan line if there are no raster patterns to be printed starting on that scan line, or it can point to a table entry for the most recently received pattern to start on that scan line. There is a second table used in the printer sorting process. This table contains an entry for each character to be printed on a page, for each segment of a rule, and for each subarray of a raster image.This table is called the pattern address table.
Examples showing the pattern address table entries for the page formats shown in
Figures 9 and 11 are shown below:
Fixed or Proportional Latin Across
0000 START PEL SCANS PEL RPM ADDR j NEXT CHAR ADDR Do character table next
START PEL SAN( 0001 START PEL SCANS PEL RPS I ADDR Do Scan table next
Proportional Latin Along
1000 START PEL SCANS PEL RPM ADDR The position of the character along the scan is defined by the starting pel, the size of the character is defined by the number of scans and by the pel count, and the address of the graphic character pattern is provided by the RPM address.
In certain implementations it might be more efficient to include an additional scan line field for each character in the pattern address table and then to reorder this pattern address table into print sequence. Reordering could be achieved by a traditional arithmetic sort using the corresponding scan line fields or by associative memory using the scan line field as the search argument.
Pattern address table entries can also be prepared for other types of data to be printed such as the single pel and the double pel raster data. In addition, foreign language data such as Kanji can be processed in this manner. Entries are added at the end of the pattern address table as they are encountered in the input stream.
Each entry contains all the information necessary to place the associated pattern in the proper place on the page, that is, starting location, size and address of the pattern.
When a request for a pattern is encountered in the input data stream, the first task is to determine on which scan line it starts. The entry for it is then linked to the list head for that scan line. The entry is next linked to one of two places - it can point to the previous member of the list that contains all the raster patterns that start on the current scan line, or it can point to the list head for the next scan line, when this is the first entry to be encountered for the current scan line. The process of preparing the page for printing consists of building the pattern address table, updating the scan table and loading into the raster pattern memory any new fonts and any image subarrays required for that page. The result of the page preparation process is linked lists that permit all the patterns on the page to be handled in starting scan line sequence.When printing begins, the characters are taken a list at a time and their patterns are shifted into the correct position in the strip buffer.
Two tables of instructions are built and placed in the control store, and these two tables are linked together by branch operations. The first table is called the scan table. There is one entry for each scan line. All of the characters which are to begin on that scan line are linked into this entry. The manner in which the pattern address table is built is determined by the orientation of the printing. One example is shown in Figure 8 for the "along scan line" printing in which text runs parallel to the scan line as shown in the page layout in Figure 9.
First of all, the scan table is prepared which defines the characters which start at that particular scan line. Scan lines 0 and 1 are blank, and on scan line 2 there is a branch to address P+0. At address P+0 a proportional along (PAL) instruction is encountered. This instruction causes the printing of a letter A. The pel displacement along that scan line comes as a parameter of the instruction. The processor then goes to the next sequential instruction at address P+1. This instruction causes the printing of the letter L. The operation is similar for the letters 0, N and G. Next a branch
(BR) instruction is encountered which returns to the next line in the scan table. This process is continued until the lines of text are printed. Generally, text data will require a large number of scan lines, but small numbers have been used here for ease of illustration.
The across scan line example in Figure 10 begins in the same manner as the other example; however, at scan line 2, a branch to address P+10 is encountered, and this is an instruction to print the letter E from the word "example." The implicit branch links back to an instruction to print the letter S from the word "scan" and a further branch links back to an instruction to print the letter A from the word "across." The final implicit branch links back to the next scan line in the scan table.
The ACROSS INSTRUCTION (AC) has a branch address field which provides the implicit branch.
Thus, it can be seen that by using this two-table structure, both orientations of text data can be combined upon the same page. As each character in a text stream is received, it is placed at the end of the pattern address table. Its scan line number is computed, and it is linked into the appropriate list If this is "across" scan text, then linking involves a change to an address in the Scan Table and the addition of the implicit branch address. However, if this is "along" scan text, then only the initial character in each line requires a scan table modification, the intermediate characters are linked by their sequence in the Character Table, and the final character requires the additional branch instruction. Both orientations of text use essentially the same linking mechanism, and both can be done in the same scan and pattern address tables.
The microprocessor is intimately involved in the process of printing the page.
The microprocessor loads the external registers that control the placement of each pattern on the page. Then, based on the parameters loaded into the control registers, the hardware moves the pattern from the RPM into the strip buffer. The control registers specify the starting scan, the starting pel, the number of scans in the pattern and whether 16 or 32 pels per scan and, if 16 pels, whether size doubling is required, the RPM address where the pattern is stored and synchronization signals. The synchronization signals keep the pattern-moving hardware and the microprogram in step with each other. There is a two-level stack of control registers so that while one pattern is being moved from the RPM to the strip buffer, the microprocessor can be loading the other set of registers with the move parameters for the next character.
The last step performed by the microprocessor in the loading of the registers is to turn on a "ready to print" synchronization signal. Before the hardware starts to move the next pattern it checks the ready to print indicator to make sure all the parameters have been loaded. It is quite possible that on small characters and lines the pattern move can be completed before the microprogram has loaded the next set of parameters. If the hardware must wait for a ready to print signal, the pattern move process will begin as soon as the signal is received. When the pattern move process is completed, the processor is alerted to the fact that the pattern move control registers are ready for reloading. While the page is being printed, the microprocessor is also signaled after the printer completes each scan line.In this way the microprocessor keeps track of where the printer is in printing the page. The microprocessor can then force a pause in the character moving process, if necessary, to keep from overrunning the position of the printer. When a pause is initiated to prevent overrun, the pause is terminated when the signal indicates that the printer is far enough ahead to permit the pattern moving to resume. If the raster image accumulator is used to merge data
with the print data, then the microprocessor is signaled at the end of each data transfer from the accumulator and the microprocessor controls the next data transfer.
The microprocessor also controls the processes of loading print data into the raster image accumulator and the combining of print data with data already stored in the accumulator. Loading the accumulator is just like printing except that data goes to
the accumulator instead of to the imaging apparatus using the options shown in
Figure 5.
The printer attaches to a System/370 channel. It is controlled by the host
system through an extensive set of channel commands. There are four different types
of channel commands which include write commands, load and delete commands,
status commands and control commands. The write commands are provided for
transferring data to the printer 12 from the data processing unit 16. The printer utilizes four write channel commands -- two are for text printing and two are for
imaging. A write text control command prepares the printer to receive anywhere
from a few characters of text data up to an entire data set Text data is transmitted by a succession of write text commands. Each write text command can transmit a block of text data and imbedded control codes.
A write image control command prepares the printer to receive one image rectangle. The image data is transmitted by a series of write image commands, which immediately follow the write image control. For either text or image, the control command orients the data on the page. Data is oriented using an XY coordinate system and, in the case of nonnal printing, such as this page, the origin of the XY coordinates would have been at the upper left hand corner of the logical page con- structed by the channel commands.
Before the printer accepts a Write Text command, it must know the orientation of the text upon the printed page, the units in which movement along and between lines has been expressed and the characters that are used for making a blank space and escaping to a control sequence. These parameters are defined by the write text control channel command. This channel command transmits an eight-byte control record. The first two bytes establish text orientation, next four bytes establish the units of measure and the final two bytes establish the two special character codes.- The purpose of the two orientation bytes is to establish the line direction and the line sequence of the text to be provided with subsequent write text channel commands.
The printer defines two combinations of line direction and line sequence. One of these is defined as upright and the other is defined as sideways. The first byte defines line direction and a line can be thought of as growing in the direction along which successive characters are added. This is called the line direction. The second byte determines the line sequence. A page of text can be thought of as growing in the direction in which successive lines of text are normally being added. This direction is called the line sequence. Line sequence is always orthogonal to line direction.Each of the two orientation bytes contains an encoding of one of the four directions + X, + Y, --X or -Y. These directions are represented by 0, 60, 120 and 180 and are encoded as Hex 00, Hex 3C, Hex 78 and Hex B4. Thus, for upright pages, such as the one you are now reading, the control bytes are Hex 00, Hex 3 C for + X and + Y. In the case of the sideways page sample, the line direction is -Y and the line sequence is
+X. In this case, the control bytes are Hex B4 and Hex 00. The user of the write text channel command is not concerned about X and Y. In the upright case, the line direction is +X, while in the sideways case it is - Y. Thus, by the setting of the first two bytes of the write text control channel command, the user establishes how the "as oriented for reading" text is to be printed by the printer with its X and Y coordinate system. The embedded controls of the write text command will be defined later. These embedded controls give text positioning information measured along the two directions defined in the control bytes described above. In the preferred embodiment of this printer, these directions are the customary directions on a page oriented for reading. The line direction is horizontal with new characters being added on the right. The line sequence is vertical with new lines being added successively lower down the page.Positioning information along the line direction is given in in-line units (I units). The purpose of the control bytes below is to define how many picture elements (pels) will constitute one I unit. A picture element is a single black or white dot. The printer prints at the rate of 240 pels per inch in both the X and Y direction.
The in-line unit may be defined to be one pel or two pels or any number up to 255 pels. Byte three of the write text control channel command specifies the number of pels in an in-line unit in binary notation. Byte 5 specifies the number of pels in a baseline unit in binary notation. A text stream is made up of a sequence of eight-bit character codes. Two of the 256 possible. character codes are reserved for special purposes. They cannot be used to print a character. One is the character code reserved for making a blank space (SP) and the other is the character code used to escape to a control sequence (ESC). In an BBCDIC text stream a Hex 40 is interpreted to be a blank space; however, other codes can be used as the space character in this printer, and this one-byte code is included in byte 6 of the channel command.Byte 7 includes the one-byte parameter that will cause an escape to a control sequence.
The contents of byte 7 cannot be the same as the contents of byte 6. In the example shown in Figure 11, the blank space code is Hex 40 and the escape character (ESC) is Hex 27.
Most current printers transfer a line of printing for each channel command word used; however, the channel command word in this printer will accept whole blocks of text. The text can consist of any string of eight-bit characters. All Hex patterns, except those for SP and for ESC, are translated for printing by the font index table for the font previously selected by a control code. A control code is a sequence of two or more Hex bytes. The first byte is the escape character ESC which, in our example, is Hex 27. The second byte defines the particular control code.
There are several control codes that can be transmitted with text data by a write text command as an embedded command. These controls can be broken into three groups as follows: in-line codes which control the movement of characters along a text line; codes for controlling the movement of the baseline down the page; and miscellaneous codes.
The in-line control group includes codes which control in-line movement. Inline refers to movement in or along the line of text; thus, a space action is an in-line movement. In-line displacements are measured from the edge where each successive character recedes. In the two orientations utilized by this printer, the in-line reference edge is the left edge of the page when the page is oriented for reading. The control
Set In-Line Margin specifies the location of the left margin. This is a two-byte
parameter and the first line of text and each new line following an End of Line control will start at the current left margin. This group of codes includes the following: the Set Letter Space is a control which alters the number of pels to be skipped after each printed character. The Set Blank Value control specifies the number of units to be skipped when a blank space character is found.The control Absolute
Move In Line is used to move to a particular horizontal position in a line as measured from the left edge of the page. The Relative Move In Line (RMI) control is used to move to a new horizontal position in a line. The End-Of-Line control marks the end of a line of text. The printer presumes that the text which follows is to begin at the left margin on a new line.
The next group includes codes relating to baseline movement. The baseline is usuallv defined as the imaginary line upon which characters and words appear to rest. Thus, the letter s just rests upon the baseline, whereas the round part of the letter p appears to rest on the baseline while its descender projects below the baseline.
Displacements in the baseline are measured from the edge of the paper from which successive lines of text ordinarily recede, that is, in the line sequence direction. This' group of codes includes the following: the Set Baseline Margin control specifies the location of the first baseline on the page. This control is a two-byte parameter which defines the first line of text on each new page or write text command control will start on this baseline. The command Set Baseline Spacing determines the amount of space an end-of-line control causes to occur between printed lines. The Absolute
Move Baseline control is used to move the base line to a particular location as measured from the top edge of the page. The Relative Move Baseline control is used to move the base line a specified distance from the current baseline location.These values move the baseline up or down the page. The Temporary Move Baseline is a
control which causes a temporary shift up or down of the baseline on which the following characters are to be printed.
The final group of the embedded control codes includes facilities for drawing rules, and selecting fonts. Rules are horizontal or vertical lines of any height or width.
They are useful, for example, in formatting tables with columns of numbers separated by heavy lines.
As an example of the usage of the text data with embedded control codes, refer to Figure 12. The text stream consists of the EBCDIC encoding for the word "FLEXIBLE" followed by the standard space code of Hex 40 followed by an encoding of the word "PRINTER" followed by the escape character Hex 27. The two-byte control code Hex 27C6 represents the end of line embedded control. While it marks the end of a printed line, the text stream continues with data for the next line. Immediately following is a Hex 27C500E0. The two bytes Hex 27C5 indicates that the first character on the next line is to be indented some distance from the current left margin. The Hex number 00E0 which converts to 240 in decimal, indicates that the indention is to be of 240 pels, that is, one inch. The data stream continues to the end of the second line.Below it appears the two sample lines as they would be printed. The example would look better if the word "FORMAT" were centered under the phrase "FLEXIBLE PRINTER". Changing the RMI parameter from 240 to 160, that is, from Hex 00E0 to Hex 00A0, would result in a displacement from the margin of only two-thirds of an inch instead of the one inch shown in the figure. When this corrected data stream is printed, it will have the word "FORMAT" centered under the words "FLEXIBLE PRINTER".
A font is a collection of character patterns from which characters to be printed are selected. A 96-character font might consist of 26 upper case letters, 26 lower case letters, 10 digits and 34 special symbols including all the punctuation marks. Each font normally consists of one size, style and weight of character and has a traditional name, such as 14 POINT (size) Press Roman (style) and bold (weight).
The printer is designed to print images as well as text data. The images may be scanned or computer generated in various ways; however, they are transmitted to the printer as binary bit image data, that is, as black and white dots in scan line sequence.
Image control information is contained in a 30-byte image control record which is transmitted to the printer by the write image control channel command. The image itself, which may require dozens of 2,048 byte data transmissions, is transmitted by subsequent write image commands.
The write image data received by the printer is interpreted to be a sequence of compressed or uncompressed scan lines. It is assumed that each scan line will be equal in uncompressed length. The sequence of scan lines, when taken together, are assumed to form an image rectangle. The first dimension of the rectangle is measured in pels; the second dimension is measured in scan lines. The first two bytes provide a scan line length as a count of the number of pels in a scan line, and this information is written as a binary number. Scan lines which are transmitted uncompressed by a write image channel command are required to be an even number of double bytes long, that is, the binary coded pel count must end with Hex 0. Bytes 2 and 3 define the image rectangle width as a count of the number of scan lines in the image defined as a binary number. Byte 5 is the decompression selector.A code of Hex 00 defines no compression in the image data, whereas the code of Hex 01 selects the printer decompression feature algorithm. Scanner products are devices which create a digital electronic image of whatever their electronic eye scans. A full 8 1/2 by 11 inch page encoded as black and white dots has a 673,200 byte electronic image. To reduce this number, some scanner products offer electronic image compression. Compressed images can often be represented with a fraction of the original data. Smaller data size reduces the host system data storage and data transmission requirements. Storage and transmission economics are the primary reason for image compression and decompression. There is much white space on most of the pages people read. When an ordinary sheet is scanned, long strings of white dots are encoded.Many bits can be saved by a compression scheme that represents a long scan line of white dots by a special white dot code and a count of the number of dots. This scheme, run length coding, is only one of many such schemes that could be used.
Trim. Input images can be trimmed to make a smaller rectangle for printing.
Bytes 6 and 7 define as counts coded in binary the starting pel trim count which defines the number of pels to be deleted from the beginning of each scan line, whereas bytes 8 and 9 define in binary code the ending pel trim count which defines the number of pels to be deleted from the end of each scan line. Bytes 10 and 11 are utilized as starting scan trim count for image data, whereas bytes 12 and 13 define the ending scan trim count for image data. The pel count scale factor is included in.
byte 14. On each square inch of paper the printer hardware prints 240 scan lines with 240 bits of data in each scan line. That is, 57,600 bits of data per square inch.
Some applications do not require or cannot afford such high resolution. For these applications, the printer provides a low resolution image with only one-quarter the number of bits per square inch; that is, 120 scan lines and 120 bits per scan line for each square inch. The actual printing hardware still prints 240 pels. It implements the 120 pel case by repeating each low resolution data bit twice. Similarly, each scan line which has just had its data bits doubled, is itself printed two times. The two scale factors can be used to specify that an image is to be printed as is, or is to be enlarged in scale. Byte 14 can be coded Hex 01 for no scaling, or Hex 02 to double the number of pels. This makes each scan line twice as long as it would have been without the scale factor of 2.
WHAT WE CLAIM IS:
1. A raster printing system comprising first control means for processing input digital data groups, comprising graphic and control data, to generate data specifying, for each group, the position and size, on a page to be printed, of information represented by the graphic data, and address data defining the position in a data store of the graphic data and means for directing the graphic data into the store at the position defined by the address data, second control means responsive to said position, size and address data for directing graphic data from the store into a buffer memory in a sequence defined by the sequence in which data is to be printed, and third control means responsive to data from the buffer memory to cause modulation of a raster scanning device for printing the graphic data.
2. A system as claimed in claim 1 including an accumulator device arranged to receive said data from the buffer memory for temporary storage thereof and for receiving and combining with the temporarily stored data further data for printing, whereby modulation of said raster scanning device is in response to the combined data.
3. A system as claimed in claim 1 or claim 2 including means for combing the position data relating to a plurality of input data groups into linked lists representing sequences of read-out of graphic data from the store to the buffer.
4. A system as claimed in claim 3 including means for producing an individual linked list for each raster line scan.
5. A system as claimed in any of the previous claims in which the buffer memory comprises a word organised memory and data pattern shifting means for positioning data patterns in the memory in alignment with the word structure of the memory.
6. A raster printing system substantially as described herein with reference to the accompanying drawings.
**WARNING** end of DESC field may overlap start of CLMS **.
Claims (6)
1. A raster printing system comprising first control means for processing input digital data groups, comprising graphic and control data, to generate data specifying, for each group, the position and size, on a page to be printed, of information represented by the graphic data, and address data defining the position in a data store of the graphic data and means for directing the graphic data into the store at the position defined by the address data, second control means responsive to said position, size and address data for directing graphic data from the store into a buffer memory in a sequence defined by the sequence in which data is to be printed, and third control means responsive to data from the buffer memory to cause modulation of a raster scanning device for printing the graphic data.
2. A system as claimed in claim 1 including an accumulator device arranged to receive said data from the buffer memory for temporary storage thereof and for receiving and combining with the temporarily stored data further data for printing, whereby modulation of said raster scanning device is in response to the combined data.
3. A system as claimed in claim 1 or claim 2 including means for combing the position data relating to a plurality of input data groups into linked lists representing sequences of read-out of graphic data from the store to the buffer.
4. A system as claimed in claim 3 including means for producing an individual linked list for each raster line scan.
5. A system as claimed in any of the previous claims in which the buffer memory comprises a word organised memory and data pattern shifting means for positioning data patterns in the memory in alignment with the word structure of the memory.
6. A raster printing system substantially as described herein with reference to the accompanying drawings.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US81191177A | 1977-06-30 | 1977-06-30 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| GB1558458A true GB1558458A (en) | 1980-01-03 |
Family
ID=25207926
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| GB15207/78A Expired GB1558458A (en) | 1977-06-30 | 1978-04-18 | Raster printing system |
Country Status (12)
| Country | Link |
|---|---|
| JP (1) | JPS5936778B2 (en) |
| AU (1) | AU515184B2 (en) |
| BE (1) | BE867592A (en) |
| BR (1) | BR7804204A (en) |
| CA (1) | CA1100644A (en) |
| DE (1) | DE2825321C3 (en) |
| ES (1) | ES471253A1 (en) |
| FR (1) | FR2395840B1 (en) |
| GB (1) | GB1558458A (en) |
| IT (1) | IT1112642B (en) |
| NL (1) | NL7804442A (en) |
| SE (1) | SE438213B (en) |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4364024A (en) | 1979-12-07 | 1982-12-14 | International Business Machines Corporation | Signature presentation method and apparatus |
| GB2142798A (en) * | 1980-10-30 | 1985-01-23 | Canon Kk | Character and image processing |
| DE3506592A1 (en) * | 1984-02-24 | 1985-08-29 | Canon K.K., Tokio/Tokyo | DATA PROCESSING DEVICE |
| GB2164772A (en) * | 1984-09-17 | 1986-03-26 | Casio Computer Co Ltd | Pattern data conversion processing system |
| EP0090802A4 (en) * | 1981-10-14 | 1987-01-22 | Ibm | A page modification method in a printer subsystem of the partial page buffer composing type. |
| GB2265483A (en) * | 1992-03-24 | 1993-09-29 | Lexmark Int Inc | Complex page bit map composition |
Families Citing this family (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5671137A (en) * | 1979-11-14 | 1981-06-13 | Mitsubishi Electric Corp | Print system |
| DD149725A1 (en) * | 1980-03-28 | 1981-07-22 | Lothar Schlegel | MOSAIC PRINTING DEVICE FOR TEL |
| US4493049A (en) * | 1981-06-05 | 1985-01-08 | Xerox Corporation | Shared resource clustered printing system |
| JPS5887622A (en) * | 1981-11-20 | 1983-05-25 | Hitachi Ltd | printer control device |
| EP0096079B1 (en) * | 1982-05-24 | 1986-08-20 | Ibm Deutschland Gmbh | Process for preparing dot screen data for character and/or picture representations |
| DE3302094A1 (en) * | 1982-12-08 | 1984-07-26 | Loewe Opta Gmbh, 8640 Kronach | Method and circuit arrangement for presenting characters of different size in a picture-element raster by means of a dot matrix printer |
| DE3245342C2 (en) * | 1982-12-08 | 1987-04-30 | Loewe Opta Gmbh, 8640 Kronach | Method and circuit arrangement for reproducing characters of different sizes in a pixel grid using a dot matrix printer |
| JPS59202867A (en) * | 1983-05-04 | 1984-11-16 | Sanyo Electric Co Ltd | Printing control apparatus |
| JPS59202870A (en) * | 1983-05-04 | 1984-11-16 | Sanyo Electric Co Ltd | Printing controller |
| JPS59202869A (en) * | 1983-05-04 | 1984-11-16 | Sanyo Electric Co Ltd | Printing control apparatus |
| JPH0632954B2 (en) * | 1986-09-29 | 1994-05-02 | 日本電気株式会社 | Print information editing device |
| JP2832710B2 (en) * | 1987-01-07 | 1998-12-09 | 沖電気工業 株式会社 | Printer |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3568178A (en) * | 1967-12-08 | 1971-03-02 | Rca Corp | Electronic photocomposition system |
| DE2447464C3 (en) * | 1973-10-23 | 1978-06-01 | International Business Machines Corp., Armonk, N.Y. (V.St.A.) | Character generator control circuit for an optical printer |
| US3898627A (en) * | 1974-03-22 | 1975-08-05 | Ibm | Optical printer having serializing buffer for use with variable length binary words |
| US4007442A (en) * | 1974-11-11 | 1977-02-08 | International Business Machines Corporation | Intermixed line heights and blank line formation in a buffered printer |
| FR2360144A1 (en) * | 1976-07-27 | 1978-02-24 | Cii | DEVICE FOR REGISTRATION OF GRAPHIC AND / OR ALPHANUMERIC SYMBOLS, ESPECIALLY FOR PLOTTING TABLE, AND PLOTTING TABLE INCLUDING SUCH A DEVICE |
-
1978
- 1978-03-31 CA CA300,169A patent/CA1100644A/en not_active Expired
- 1978-04-07 AU AU34884/78A patent/AU515184B2/en not_active Expired
- 1978-04-18 GB GB15207/78A patent/GB1558458A/en not_active Expired
- 1978-04-26 NL NL7804442A patent/NL7804442A/en not_active Application Discontinuation
- 1978-05-12 FR FR7814825A patent/FR2395840B1/en not_active Expired
- 1978-05-25 JP JP53061804A patent/JPS5936778B2/en not_active Expired
- 1978-05-29 BE BE188135A patent/BE867592A/en not_active IP Right Cessation
- 1978-06-09 DE DE2825321A patent/DE2825321C3/en not_active Expired
- 1978-06-28 SE SE7807314A patent/SE438213B/en not_active IP Right Cessation
- 1978-06-28 IT IT25057/78A patent/IT1112642B/en active
- 1978-06-29 ES ES471253A patent/ES471253A1/en not_active Expired
- 1978-06-30 BR BR7804204A patent/BR7804204A/en unknown
Cited By (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4364024A (en) | 1979-12-07 | 1982-12-14 | International Business Machines Corporation | Signature presentation method and apparatus |
| GB2142798A (en) * | 1980-10-30 | 1985-01-23 | Canon Kk | Character and image processing |
| GB2154095A (en) * | 1980-10-30 | 1985-08-29 | Canon Kk | Image recording system |
| GB2155275A (en) * | 1980-10-30 | 1985-09-18 | Canon Kk | Image recording system |
| EP0090802A4 (en) * | 1981-10-14 | 1987-01-22 | Ibm | A page modification method in a printer subsystem of the partial page buffer composing type. |
| US5010513A (en) * | 1984-02-24 | 1991-04-23 | Canon Kabushiki Kaisha | Data processing apparatus |
| GB2156558A (en) * | 1984-02-24 | 1985-10-09 | Canon Kk | Data processing apparatus |
| DE3506592A1 (en) * | 1984-02-24 | 1985-08-29 | Canon K.K., Tokio/Tokyo | DATA PROCESSING DEVICE |
| DE3506592C2 (en) * | 1984-02-24 | 1998-10-01 | Canon Kk | Recorder |
| GB2164772A (en) * | 1984-09-17 | 1986-03-26 | Casio Computer Co Ltd | Pattern data conversion processing system |
| US4729107A (en) * | 1984-09-17 | 1988-03-01 | Casio Computer Co., Ltd. | Pattern data conversion processing system |
| GB2265483A (en) * | 1992-03-24 | 1993-09-29 | Lexmark Int Inc | Complex page bit map composition |
| GB2265483B (en) * | 1992-03-24 | 1995-08-09 | Lexmark Int Inc | Complex page bit map composition |
Also Published As
| Publication number | Publication date |
|---|---|
| DE2825321A1 (en) | 1979-01-04 |
| SE7807314L (en) | 1978-12-31 |
| BR7804204A (en) | 1979-04-10 |
| DE2825321B2 (en) | 1980-12-11 |
| FR2395840B1 (en) | 1985-10-18 |
| AU515184B2 (en) | 1981-03-19 |
| JPS5936778B2 (en) | 1984-09-05 |
| IT7825057A0 (en) | 1978-06-28 |
| JPS5413224A (en) | 1979-01-31 |
| FR2395840A1 (en) | 1979-01-26 |
| ES471253A1 (en) | 1979-01-16 |
| AU3488478A (en) | 1979-10-11 |
| CA1100644A (en) | 1981-05-05 |
| DE2825321C3 (en) | 1981-07-30 |
| NL7804442A (en) | 1979-01-03 |
| IT1112642B (en) | 1986-01-20 |
| SE438213B (en) | 1985-04-01 |
| BE867592A (en) | 1978-09-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4300206A (en) | Flexible text and image generator for a raster printer | |
| CA1100644A (en) | Raster printer with sufficient printing flexibility | |
| US5930466A (en) | Method and apparatus for data compression of bitmaps using rows and columns of bit-mapped printer data divided into vertical slices | |
| JP2790285B2 (en) | Full page graphics image display data compression method and apparatus | |
| US5542031A (en) | Halftone computer imager | |
| US5923820A (en) | Method and apparatus for compacting swath data for printers | |
| US5870535A (en) | Method and apparatus for building rasterized lines of bitmap data to be printed using a piecewise-linear direct memory access addressing mode of retrieving bitmap data line segments | |
| US4470129A (en) | Page modification method in a printer subsystem of the partial page buffer composing type | |
| JPH0352713B2 (en) | ||
| US5136688A (en) | Print data processing apparatus for an image forming apparatus | |
| US6317217B1 (en) | Printing system and printing control method | |
| US4741635A (en) | Print compressor | |
| US5088050A (en) | Apparatus for preparing output data from input image data, using basic output-image unit pattern data | |
| EP0574824B1 (en) | Print data processing apparatus | |
| US6850338B1 (en) | Method, system, program, and data structure for generating raster objects | |
| US6310693B1 (en) | Printing control apparatus and method, and printing system for reducing processing overhead | |
| EP0481787B1 (en) | Output method and apparatus | |
| US5007002A (en) | Serial or line printer adapted for use with page describing language | |
| EP0090802B1 (en) | A page modification method in a printer subsystem of the partial page buffer composing type | |
| US5235675A (en) | Printer control system for controlling printers differing from each other in dot density | |
| US5345518A (en) | Pattern generator | |
| JP2783601B2 (en) | Information processing device | |
| JP2854344B2 (en) | How to display mixed mode documents | |
| JP2715475B2 (en) | Graphic output device | |
| JP4338249B2 (en) | Printing system and image division font conversion method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PS | Patent sealed [section 19, patents act 1949] | ||
| PCNP | Patent ceased through non-payment of renewal fee |
Effective date: 19940418 |