Hardcopy Introduction
Hardcopy Help

Hardcopy is a program for printing text and binary files.  Multiple files can be queued up, formatted according to a specified layout, and sent to any Windows print device.  Hardcopy was primarily written for printing out program listings and their associated non-textual resources (like icons and bitmaps).

Topics:

Adding files to the queue
Removing files from the queue
Clearing the queue
Aborting the current job
Stopping the current job
Holding after the current job
Hardcopy setup
Using layouts
BINTEX program
About Hardcopy


Adding Files to the Queue

To add a file to the Hardcopy queue, select "Add file to queue" from the File menu, click the Add button, drag and drop in files from a file manager, or list the files on the command line when Hardcopy is started.  Files are always added to the end of the queue.  If files are listed on the command line, Hardcopy will automatically terminate after the files have been printed as long as no other Hardcopy commands are executed.


Removing Files from the Queue

To remove a file from the Hardcopy queue, select the file to remove from the list of files to be printed and select "Remove file from queue" from the File menu, or click the Remove button.  If you remove the file being printed, the print job will be aborted.


Clearing the Queue

To clear the queue (i.e. remove all files from the queue without printing them), select "Clear queue" from the File menu.  If a file is being printed, the print job will be aborted.


Aborting the Current Job

To abort the current print job (i.e. stop the file at the top of the queue from printing), select "Abort current job" from the Job menu, or click the Stop button.  This command only stops Hardcopy from sending the file to the print device, it may not stop the print device from printing.  The current job is NOT removed from the queue.  When a job is aborted, all further printing is suspended (see Holding After the Current Job).


Stopping the Current Job

To stop the current print job, click the Stop button.  Stopping a print job is the same as aborting it, except the Stop button suspends further printing even if the queue is currently empty (see Holding After the Current Job).  Once printing has been suspended, the Stop button turns into the Continue button.


Holding After the Current Job

To hold (i.e. suspend) printing after the current job, select "Hold after current job" from the Job menu.  Aborting or stopping the current job also suspends printing.  To resume printing, select the menu option again (to uncheck it) or click the Continue button (previously the Stop button).


Hardcopy Setup

The view or change the Hardcopy settings, select the "Setup!" menu option.  This opens a window that allows you to change the print device, the layout used for text files, the layout used for binary files, and control how Hardcopy determines whether a file is text or binary.  There is also a Setup button that allows you to configure the selected print device.  See Using Layouts to find out how to modify existing layouts or create new ones.


Using Layouts

A layout determines how the printed pages will look.  You can specify a different layout for text and binary files.  Layouts are assigned to text and binary files from the Hardcopy Setup.

Layouts are defined in the HCOPY.INI file, which should be in the same directory as HCOPY.EXE.  You can use and modify the existing layouts or create your own.  To modify or create layouts, you must manually edit HCOPY.INI with a text editor (like NOTEPAD).

Adding or Modifying Layouts

Each layout is defined in its own section of HCOPY.INI.  The section name (the text in brackets) should be the name you want to appear in the Hardcopy setup window.  Additionally, each layout section name must be listed in the [Layouts] section using the form:

Layout<n>=<name>

where <n> is the layout number and <name> is the section name.  The layout numbers must start with one (i.e. Layout1) and be sequential, so if you have a Layout4, then you must have a Layout1, Layout2, and Layout3.

Each page may contain a header, be subdivided into smaller "subpages," and have a grid to separate each subpage.  All distance units are specified in "twips."  There are 1440 twips per inch.  The settings for each layout are as follows:

Header=

Page header on or off (0 is off, 1 is on).  The page header is a single line (usually at the top of each page) that shows the name of the file, the print date, and the page number.  The header is a fixed distance from the top of the page (the HeaderMargin setting) and is always located between the left are right margins (the LeftMargin and RightMargin settings).

Grid=

Grid on or off (0 is off, 1 is on).  The grid is a line border around each subpage.

Tabs=

Number of columns to each tab stop.  TAB characters within text files are expanded to spaces.

LineNumbers=

Number of digits allowed for line numbers.  For instance, if LineNumbers=3, the maximum line number is 999.  If LineNumbers=0, line numbers are not printed.

PageWidth=
PageHeight=

Page dimensions.  These numbers should match the paper or page size of the selected print device.

HorizontalPages=
VerticalPages=

Number of vertical and horizontal subpages to create.  For instance, if HorizontalPages=2, there will be two pages across.  If you don't want to subdivide the page, set these values to 1.  The page is divided after applying the left and right margins, so if your page is 8 inches wide with left and right margins of one inch and you divide the page into two horizontal subpages, each subpage will be 3 inches wide.

LeftMargin=
RightMargin=
TopMargin=
BottomMargin=

Outer margin dimensions.  The outer margins are applied to the page before it is subdivided.

InnerLeftMargin=
InnerRightMargin=
InnerTopMargin=
InnerBottomMargin=

Inner margin dimensions.  The inner margins are applied to each individual subpage.

HeaderMargin=

Vertical distance the header should be placed from the top of the page.

FontHeight=

Size (height) of the font.  The width of the font is determined by the height.  This setting applies to both the header and body.

LineHeight=

Space allocated for each line.  This setting determines how many lines will fit per page (or subpage).  The larger this number, the fewer lines per page and the larger the gap between the text of each line.

Font=

Font name.  This is the font used for the header and the body.  Generally, for program listings, a non-proportional font looks best.  The font must already be installed in Windows.


BINTEX Program

BINTEX.EXE is a DOS program that will convert binary files to text and back to binary.  Use BINTEX to reconstruct a binary file after typing or scanning a printout into your computer.  If you've scanned a printout into your computer, you must convert the graphic data to text data with OCR (optical character recognition) software.  BINTEX will only accept the binary data portion of a printout, so you must manually remove any header and line numbers.  Run BINTEX without any arguments to see its syntax.


About Hardcopy

This program may be freely used and distributed.

Eric Tauck
1304 Deerpass Road
Marengo, IL 60152-9644
USA

Phone: 815-568-1110
Compuserve: 72457,1557
Internet: 72457.1557@compuserve.com


Text Files

Hardcopy can only interpret plain unformatted text files.  Any other file type is treated as a binary file.  Hardcopy will try to determine whether a file is text or binary by scanning for unrecognized control characters and lines that are too long.  Valid control characters are: tabs (ASCII code 9), linefeeds (ASCII code 10), formfeeds (ASCII code 12), carriage returns (ASCII code 13), and an end of file character (ASCII code 26).  The maximum line length is 512 characters.  During printing, tabs are expanded to spaces, linefeeds mark the end of lines, formfeeds start a new page, and carriage returns and end of file characters are ignored.  You can force Hardcopy to treat all files as text or binary from the Hardcopy Setup window.


Binary Files

Any file that doesn't meet the criteria for text files is treated as a binary file, unless you force Hardcopy to treat all files as text or binary from the Hardcopy Setup window.  Hardcopy prints binary files in format similar to the output produced by the UNIX program uuencode.  If you scan a binary file printout into your computer and run it through an OCR program, the BINTEX program will convert the file back to its native binary format.


Try these other fine products from the desk of Eric Tauck:

Trowser: TrueType font installer  (Windows)
Toddy: command line editor (DOS)
Warp: ANSI.SYS replacement (DOS)
Clone: disk copier (DOS)
WASM: assembler (DOS)

And, from the desk of Robert Stuntz:

heXEdit: binary file editor (DOS)


Robert Stuntz
2120 Aspen Dr.
Woodstock, IL 60098-6903
USA

Compuserve: 71043,117
Internet: 71043.117@compuserve.com