PC_PRINTER_WRITE_BMP

Write a loaded bitmap to a printer at a specified position with a given size.

Syntax:

call "PC_PRINTER_WRITE_BMP" using      printer-handle
                            by value  bmp-id
                            by value  options
                            by value  bmp-row 
                            by value  bmp-col
                            by value  bmp-width
                            by value  bmp-height
                            returning status-code

Parameters:

  Using call prototype (see Key) Picture
printer-handle cblt-x4-comp5 pic x(4) comp-5.
options cblt-x4-comp5 value 0 pic x(4) comp-5 value 0.
bmp-id cblt-x4-comp5 pic x(4) comp-5.
bmp-row cblt-x4-comp5 pic x(4) comp-5.
bmp-col cblt-x4-comp5 pic x(4) comp-5.
bmp-width cblt-x4-comp5 pic x(4) comp-5.
bmp-height cblt-x4-comp5 pic x(4) comp-5.
status-code See Library Routines - Key

On Entry:

printer-handle
The printer handle returned when the printer was opened.
options
Bit 1: Preserve the aspect ratio of the bitmap.
Bit 2: Center the bitmap if bitmap aspect ratio is preserved.
Bit 9: Use bmp-row, bmp-col, bmp-width, bmp-height as logical units rather than character positions.
bmp-id
The unique id of the bitmap to print.
bmp-row
The row at which the bitmap is to be printed.
bmp-width
The width of the bitmap in characters. The value you specify is multiplied by the width of the currently selected font to determine the width that is used when printing the bitmap.
bmp-height
The height of the bitmap in characters. The value you specify is multiplied by the height of the currently selected font to determine the height that is used when printing the bitmap.
status-code
Printer status code:
0 Successful
3 Printer device not open
4 Out of memory while printing
5 Disk full while spooling file
7 Print job aborted, no file spooled to Print Manager
11 Write failure
21 Failed to print bitmap
31 Bad position; x or y out of bounds
32 Move to x,y failed
33 Line to x,y failed
34 Rectangle failed to be drawn

Comments:

Restrictions:

  • This routine works with PostScript and HP PCL printers.
  • This routine is not supported on HP DeskJet or dot matrix printers.

Example:

 call "PC_PRINTER_WRITE_BMP" USING printer-handle
                                   BY VALUE  bmp-id-logo
                                   BY VALUE  3 size 4
                                   BY VALUE  7 size 4
                                   BY VALUE  5 size 4
                                   BY VALUE  25 size 4
                                   BY VALUE  15 size 4
                             						RETURNING printer-retcode
 end-call