| Sample
Programs and Sample Code |
|
J2PrinterWorks includes 25 sample programs with complete source
code. The source code for these applications may be freely used,
modified, incorporated, and distributed without restriction as part of
any software that uses J2PrinterWorks itself (see License and Terms of Use ).
| J2PrinterWorksTestApplication | RUN ME FIRST! A comprehensive test of all the J2PrinterWorks printing components | |
| StylepadPrinter | Sun's Stylepad demo program (JTextPane-based word processor) with printing added | |
| J2TextPrinterTestApplication | J2TextPrinter program that reads and prints HTML, RTF, and StyledDocument files | |
| J2TextPrinterHTMLFormTest | Demonstrates use of "direct print" to print user entries in HTML <form> documents | |
| J2TextPrinterSimplestTest | Minimum J2TextPrinter program that prints a JTextPane (using HTML) | |
| J2TablePrinterTestApplication | J2TablePrinter program that reads a file directory and prints it as a JTable | |
| J2TablePrinterSimplestTest | Minimum J2TablePrinter program that prints a JTable | |
| J2TreePrinterTestApplication | J2TreePrinter program that reads a file directory and prints it as a JTree | |
| J2TreePrinterSimplestTest | Minimum J2TreePrinter program that prints a JTree | |
| J2ListPrinterSimplestTest | Minimum J2ListPrinter program that prints a JList | |
| J2PanelPrinterImageApplication | J2PanelPrinter program that reads and prints any .gif or .jpg image file | |
| J2PanelPrinterGraphicsTest | Minimum J2PanelPrinter program that prints a Graphics drawing and/or Image | |
| J2PanelPrinterSimplestTest | Minimum J2PanelPrinter program that prints a JLabel in a JPanel | |
| J2ComponentPrinterSimplestTest | Minimum J2ComponentPrinter program that prints a Component | |
| J2ComponentPrinterTestApplication | Reimplementation of J2PrinterWorksTestApplication using only J2ComponentPrinter | |
| J2FlowPrinterSimplestTest | Minimum J2FlowPrinter program that prints a JTextPane, JTable, JTree, JList, and JPanel back-to-back | |
| J2FlowPrinterTestApplication | J2FlowPrinter program
that prints a typical report made up of JTextPane, JTable, JTree,
JPanel, etc. |
|
| J2Printer14PrinterSelectionTest | J2Printer14 program that lets you find and choose printers (JDK 1.4.x or later required) | |
| J2Printer14CrossPlatformTest | J2Printer14 program that uses Java cross-platform printing dialogs (JDK 1.4.x or later required) | |
| J2Printer14PSTest | J2Printer14 program that prints to a Postscript file (JDK 1.4.x or later required) | |
| J2PrinterPDFTest | Program that
prints to a PDF file + display & print any PDF file
(iText.jar and Acrobat Reader required) |
|
| J2PrintToImageTest | Program that tests printing a page to an Image and saving Image as a .jpg file | |
| J2PrinterWorksApplet
|
Simple
unsigned printing applet.
Run
it now |
|
| J2Printer14Applet
|
Simple
J2Printer14 unsigned
printing applet (JDK 1.4.x or later required)
Run
it now |
|
| J2PrinterWebStartTest |
J2PrinterWebStart
program
that tests printing from a Java Web Start application |
Installing and running sample programs
J2PrinterWorks is a Java 2 program. You must have Java 2 (either JDK 1.2.x, 1.3.x, 1.4.x, 1.5.x, or 1.6.x) installed on your system. JDK 1.4 or later is highly recommended. You may encounter performance problems, feature limitations, and possible malfunctions when printing under JDK 1.2.x or JDK 1.3.x due to various problem present in earlier Java systems (see Known Problems section). Information is available at the Sun Java site for how to download (free) and install the latest release of Java .
All the sample programs are included in the J2PrinterWorks distribution (.zip) file. Unzip this file to create folders containing all the J2PrinterWorks sample programs.
In the top level J2PrinterWorks installation folder, you
will find a folder called samplePrograms. Inside this
folder, you will find multiple folders containing all the
J2PrinterWorks sample programs and source code files. Most
of the sample applications (all but the last three sample programs in
the above list) are double-clickable .jar files.
To run the
sample applets, double-click on the corresponding .html file.
To
run the J2PrinterWebStartTest, you need to build (e.g. using Ant) and
deploy to a Java-enabled web server (e.g. Tomcat). Instructions
for doing this are included in the readme.txt file
included in the J2PrinterWebStartTest folder and are the same as the
standard Java Web Start sample programs from Sun.
In each folder other than J2PrinterWebStartTest there is a build.bat Windows batch file for building the sample program from the source code, and a run.bat Windows batch file for running the sample program. Alternatively, you can open a command window ("Terminal" on the Mac, the shell window in Unix, or MS-DOS window in Windows), and type the command lines such as the following::
java -cp .;..\..\J2PrinterWorks.jar J2PrinterWorksTestApplication
NOTE: On Unix and Mac, the class path file
separator is colon instead of semi-colon and the path separator is
forward slash instead
of backward slash.
The standard Java page setup dialog is designed to let end users
control the margins and orientation of printed pages. The Java
cross-platform page setup dialog available in JDK 1.4.x and later adds
several more printing
feature controls to these. However, J2PrinterWorks contains a
number of additional features beyond those in the Java page setup
dialogs,
including headers and footers, scale factors, centering, thread and
dialog
control, etc. Application developers may choose to control these
features themselves or may wish to provide some or all of these choices
to end users. To facilitate the latter case, the J2PrinterWorks
sample programs provide the source code for a number of different
"detailed"
page setup dialogs which developers may wish to use or adapt for their
own
purposes to provide control over certain J2PrinterWorks features to end
users. In particular, the following page setup dialogs are of interest:
J2PrinterWorksPageSetupDialog.java - contains the standard
J2PrinterWorks controls including headers/footers contents, style,
and gaps, margins, print and print preview scale factors, orientation,
print thread, print dialog, number of copies, and print job name, which
could replace the
standard Java page setup dialog.
J2PrinterSettingsDialog.java - contains a minimum
subset of the standard J2PrinterWorks controls without orientation
or margins, which therefore avoids any overlap with and could be used in addition to the standard
Java
page setup dialog.
J2TextPrinterPageSetupDialog.java
- contains the standard
J2PrinterWorks controls plus controls specific to J2TextPrinter
including centering and WYSIWYG control.
J2TablePrinterPageSetupDialog.java - contains the standard
J2PrinterWorks controls plus controls specific to J2TablePrinter
including centering, outside line control, column header replication
and row/column ranges.
J2TreePrinterPageSetupDialog.java - contains the standard J2PrinterWorks controls plus controls specific to J2TreePrinter including centering and outside line control