curs_print(3X)                                     curs_print(3X)

NAME
       mcprint - ship binary data to printer

SYNOPSIS
       #include <curses.h>

       int mcprint(char *data, int len);

DESCRIPTION
       This  function  uses the mc5p or mc4 and mc5 capabilities,
       if they are present, to  ship  given  data  to  a  printer
       attached to the terminal.

       Note  that  the mcprint code has no way to do flow control
       with the printer or to know how  much  buffering  it  has.
       Your  application  is  responsible for keeping the rate of
       writes to the printer below its continuous throughput rate
       (typically  about  half  of its nominal cps rating).  Dot-
       matrix printers and 6-page-per-minute lasers can typically
       handle  80cps,  so a good conservative rule of thumb is to
       sleep for a second after shipping each 80-character  line.

RETURN VALUE
       The  mcprint  function  returns ERR if the write operation
       aborted for some reason.  In this case, errno will contain
       either  an  error  associated  with write(2) or one of the
       following:

       ENODEV
            Capabilities for printer redirection don't exist.

       ENOMEM
            Couldn't allocate sufficient  memory  to  buffer  the
            printer write.

            When mcprint succeeds, it returns the number of char-
            acters actually sent to the printer.

PORTABILITY
       The mcprint call was designed for ncurses(3X), and is  not
       found in SVr4 curses, 4.4BSD curses, or any other previous
       version of curses.

BUGS
       Padding in the mc5p, mc4 and mc5 capabilities will not  be
       interpreted.

SEE ALSO
       curses(3X)

                                                                1