IPP> H. Registering Print Document Formats (PDLs) as MIME media types

IPP> H. Registering Print Document Formats (PDLs) as MIME media types

don at lexmark.com don at lexmark.com
Fri Mar 9 17:49:11 EST 2001



Carl:

The problem is that Linedata and LinePrinter are already the names in the MIB
and IPP.  Would would either have to use those names or create new one.  We
can't really change them.

**********************************************
* Don Wright                 don at lexmark.com *
* Chair, Printer Working Group               *
* Chair, IEEE MSC                            *
*                                            *
* Director, Strategic & Technical Alliances  *
* Lexmark International                      *
* 740 New Circle Rd                          *
* Lexington, Ky 40550                        *
* 859-232-4808 (phone) 859-232-6740 (fax)    *
**********************************************




"Carl Kugler" <kugler%us.ibm.com at interlock.lexmark.com> on 03/09/2001 05:33:38
PM

To:   ipp%pwg.org at interlock.lexmark.com
cc:    (bcc: Don Wright/Lex/Lexmark)
Subject:  Re: IPP> H. Registering Print Document Formats (PDLs) as MIME
      media types



Maybe it would be best to break these up into more explicit, separate
types.  Replace LineData and LinePrinter with something like this:

carriage-control-asa
   A subset of carriage-control-ansi.  The print control character (first
   character in record or line) defines the action to be taken before
   printing the current print line. Only these four characters are
   supported:

    Space   Outputs the rest of the line without change.

     0       Outputs a newline character before printing line.

     1       Outputs a formfeed (start a new page) sequence before printing
   line.

     +       Outputs a carriage return sequence so that line is output over
   the previous line. If + starts the first line, it's treated as a space.


carriage-control-ansi; charset=us-ascii
carriage-control-ansi; charset=ibm1047 (EBCDIC)
   The print control character (first character in record or line) defines
   the action to be taken before printing the current print line.
|---------+--------------------------|
| Characte|          Action          |
|    r    |                          |
|---------+--------------------------|
| blank   | Advance one line         |
|---------+--------------------------|
| 0       | Advance two lines        |
|---------+--------------------------|
| -       | Advance three lines      |
|---------+--------------------------|
| +       | Don't advance - used for |
|         | overprinting             |
|---------+--------------------------|
| 1       | Skip to channel 1 -      |
|         | normally top of form     |
|---------+--------------------------|
| 2-9     | Skip to channel 2 - 9    |
|---------+--------------------------|
| A-C     | Skip to channel 10 - 12  |
|---------+--------------------------|




carriage-control-machine
   Spacing can occur before or after printing the current line.   The print
   control character (first character in record or line) moves to a
   predefined position on the page that is associated with a value of 1
   through 12, known as the channel code.
|-----+-------------------------|
| Valu|          Action         |
|  e  |                         |
|-----+-------------------------|
| X'09| Advance one line - after|
| '   |                         |
|-----+-------------------------|
| X'0B| Advance one line -      |
| '   | before                  |
|-----+-------------------------|
| X'11| Advance two lines -     |
| '   | after                   |
|-----+-------------------------|
| X'13| Advance two lines -     |
| '   | before                  |
|-----+-------------------------|
| X'19| Advance three lines -   |
| '   | after                   |
|-----+-------------------------|
| X'1B| Advance three lines -   |
| '   | before                  |
|-----+-------------------------|
| X'01| Don't advance - used for|
| '   | overprinting            |
|-----+-------------------------|
| X'0B| Space one line - before |
| '   |                         |
|-----+-------------------------|
| X'89| Skip to channel 1 -     |
| '   | after                   |
|-----+-------------------------|
| X'8B| Skip to channel 1 -     |
| '   | before                  |
|-----+-------------------------|
| X'91| Skip to channel 2 -     |
| '   | after                   |
|-----+-------------------------|
| X'93| Skip to channel 2 -     |
| '   | before                  |
|-----+-------------------------|
| X'99| Skip to channel 3 -     |
| '   | after                   |
|-----+-------------------------|
| X'9B| Skip to channel 3 -     |
| '   | before                  |
|-----+-------------------------|
| X'A1| Skip to channel 4 -     |
| '   | after                   |
|-----+-------------------------|
| X'A3| Skip to channel 4 -     |
| '   | before                  |
|-----+-------------------------|
| X'A9| Skip to channel 5 -     |
| '   | after                   |
|-----+-------------------------|
| X'AB| Skip to channel 5 -     |
| '   | before                  |
|-----+-------------------------|
| X'B1| Skip to channel 6 -     |
| '   | after                   |
|-----+-------------------------|
| X'B3| Skip to channel 6 -     |
| '   | before                  |
|-----+-------------------------|
| X'B9| Skip to channel 7 -     |
| '   | after                   |
|-----+-------------------------|
| X'BB| Skip to channel 7 -     |
| '   | before                  |
|-----+-------------------------|
| X'C1| Skip to channel 8 -     |
| '   | after                   |
|-----+-------------------------|
| X'C3| Skip to channel 8 -     |
| '   | before                  |
|-----+-------------------------|
| X'C9| Skip to channel 9 -     |
| '   | after                   |
|-----+-------------------------|
| X'CB| Skip to channel 9 -     |
| '   | before                  |
|-----+-------------------------|
| X'D1| Skip to channel 10 -    |
| '   | after                   |
|-----+-------------------------|
| X'D3| Skip to channel 10 -    |
| '   | before                  |
|-----+-------------------------|
| X'D9| Skip to channel 11 -    |
| '   | after                   |
|-----+-------------------------|
| X'DB| Skip to channel 11 -    |
| '   | before                  |
|-----+-------------------------|
| X'E1| Skip to channel 12 -    |
| '   | after                   |
|-----+-------------------------|
| X'E3| Skip to channel 12 -    |
| '   | before                  |
|-----+-------------------------|


carriage-control-evfu
   The print control character (first character in record or line) defines
   the action to be taken before printing the current print line.

           1     advances to the first print line on the next page
           0     skip a line, i.e., double-space
           +     over-print the preceeding line
           -     skip 2 lines, i.e., triple-space
        (space)  print on the next line, single-space



---------------------- Forwarded by Carl Kugler/Boulder/IBM on 03/09/2001
03:11 PM ---------------------------

Carl Kugler
03/09/2001 01:26 PM

To:   don at lexmark.com
cc:   ipp at pwg.org, Harry Lewis/Boulder/IBM at IBMUS
From: Carl Kugler/Boulder/IBM at IBMUS
Subject:  Re: IPP> H. Registering Print Document Formats (PDLs) as MIME
       media types  (Document link: Carl Kugler)

No:

LineData: Line-data - Lines of data as separate
ASCII or EBCDIC records and
containing no control functions (no CR,
LF, HT, FF, etc.) For use with traditional
line printers. May use CR and/or LF to
delimit lines, instead of records.
ISO 10175 Document Printing
Application (DPA)

LinePrinter: A simple-text character stream which
supports the control codes LF, VT, FF,
and plus Centronics or Dataproducts
Vertical Format Unit (VFU) language is
commonly used on many older model
line and matrix printers.

Then there's the one and only true "line data": ours:
Title: Advanced Function Presentation: Programming Guide and Line Data
Reference
Authors: Author: Reinhard H. Hohensee
Document Number: S544-3884-01
http://www.s390.ibm.com/bookmgr-cgi/bookmgr.cmd/BOOKS/HA3L1M00/COVER?SHELF=EZ239413



Clearly, none of these matches ASA, which is also described in RFC 740,
Appendix C.

     - Carl


don at lexmark.com on 03/09/2001 10:38:19 AM

To:   Carl Kugler/Boulder/IBM at IBMUS
cc:   ipp at pwg.org, Harry Lewis/Boulder/IBM at IBMUS
Subject:  Re: IPP> H. Registering Print Document Formats (PDLs) as MIME
       media types





I thought this was either "LineData" or "LinePrinter" in the current
document?????

**********************************************
* Don Wright                 don at lexmark.com *
* Chair, Printer Working Group               *
* Chair, IEEE MSC                            *
*                                            *
* Director, Strategic & Technical Alliances  *
* Lexmark International                      *
* 740 New Circle Rd                          *
* Lexington, Ky 40550                        *
* 859-232-4808 (phone) 859-232-6740 (fax)    *
**********************************************



"Carl Kugler" <kugler%us.ibm.com at interlock.lexmark.com> on 03/09/2001
11:58:14
AM

To:   ipp%pwg.org at interlock.lexmark.com
cc:   "Harry Lewis" <harryl%us.ibm.com at interlock.lexmark.com> (bcc: Don
      Wright/Lex/Lexmark)
Subject:  IPP> H. Registering Print Document Formats (PDLs) as MIME media
types



> ftp://ftp.pwg.org/pub/pwg/ipp/new_MIME/Print-MIME-tab-010302-rev.pdf

Another type:  ASA carriage control.  On most Unix systems:  "man asa".

     -Carl




  asa -- Interpret ASA/FORTRAN carriage control


  Format

  asa [file ...]

  Description

  Historically, printouts created by programs use the first character of
  each line to control the spacing between that line and the previous one.
  For example, if the first character is a space, the rest of that line
  immediately follows the previous line; if it is a 1, that line should
  begin on a new page, and so on.

  asa reads input in this format and writes it out in a normal text format,
  using newlines, formfeeds, and carriage returns to achieve the same
  effects as the carriage control characters.

  If you specify files on the command line, asa reads input from these
  files; otherwise, it reads the standard input (stdin).  asa writes output
  to the standard output (stdout).

  It does not copy newline characters in the input to the output. Instead,
  it uses the first character of each line to determine how to print the
  rest of the line. asa interprets the first character as follows:

  Space   Outputs the rest of the line without change.

  0       Outputs a newline character before printing line.

  1       Outputs a formfeed (start a new page) sequence before printing
          line.

  +       Outputs a carriage return sequence so that line is output over
the
          previous line. If + starts the first line, it's treated as a
          space.

  Localization

  asa uses the following localization environment variables:

     LANG
     LC_ALL
     LC_CTYPE
     LC_MESSAGES
     NLSPATH

  See Appendix E, "Localization" in topic D.0 for more information.

  Exit Values

  0  Successful completion

  1  Failure due to any of the following:

        Write error on stdout
        Inability to open the input file

  2  Unknown command-line option

  Portability

  POSIX.2, X/Open Portability Guide, UNIX System V.


















More information about the Ipp mailing list