United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: JDK-4285177 RFE: Additional Java 2D printing work
JDK-4285177 : RFE: Additional Java 2D printing work

Details
Type:
Enhancement
Submit Date:
1999-10-27
Status:
Resolved
Updated Date:
2000-12-06
Project Name:
JDK
Resolved Date:
2000-12-06
Component:
client-libs
OS:
solaris_7,generic
Sub-Component:
2d
CPU:
sparc,generic
Priority:
P3
Resolution:
Fixed
Affected Versions:
1.2.2,1.4.0
Fixed Versions:
1.4.0 (beta)

Related Reports
Duplicate:
Duplicate:
Relates:
Relates:

Sub Tasks

Description

Name: jh34982			Date: 10/26/99



We need to fix printing so that it works in all cases.  This
includes printing components, printing in plug-in, and
more GDI/Postscript support.  We need to try to unify the code
for 1.1 and 1.2 printing wherever possible because there
is a lot of redundant work and we end up solving the same
problems.

We also need to track what is going on in JSR 6, Unified
Printing API.  This may entail adding new classes to better
support the JINI printing model (e.g. adding an Attributes
class, similar to Job/Page Attributes in java.awt).

======================================================================
The Java 2D printing API was introduced in Java 2 SE, Version 1.2.
The API was designed to support sophisticated document printing, but
time constraints meant that the implementation was primarily focused
on being able to print all 2D graphics.
In subsequent releases (V 1.2.2 and V1.3) there were implementation
enhancements only, focused on improving printing performance for many
typical applications, such as web pages, reports etc, which involve
text, some small number of graphic images, and occasional simple 2D
graphics.

The result of this work is that 2D printing in 1.3 is hugely improved in
robustness, completeness, quality and performance compared to earlier releases.

Moving forward in releases after Java 2 SE, Version 1.3, the 2D printing
API needs to be enhanced further in implementation, and also to include
new APIs to support more sophisticated printing applications.
The need for these new APIs is demonstrated by numerous RFE's and also
the formation of the Unified Printing Expert Group (JSR-006) and the
associated work of the JINI printing working group.

The following are the currently expected items to be implemented for
the "merlin" release of Java 2 SE.

1) 2D printing will be enhanced in a number of ways
   a) additional page control and attributes
   b) additional job control and attributes
   c) printer enumeration & description
   d) printer capabilities queriying (such as duplex capability)
   e) cross platform print and page dialogs
   f) improved quality and consistency in page imaging
   g) support component style printing (AWT printing)
   
2) Enhancements 1(a) to 1(d) above to the 2D printing API will be designed to
   integrate well  with the results of the JINI printer working group and
   JSR-006 expert group.
  
3)  As a benefit of 1(g) above, AWT's page imaging and job control
    will be reimplemented  on top of 2D printing to reduce implementation
    size & duplication. This will probably be via means of
    an adapter layer which could also be the foundation for more easily
    integrating alternate implementations for accessing JINI enabled
    printers, or allowing a printer driver API implementation on Solaris
    which might generate output suitable for other printer languages than
    PostScript. Merlin is not expected to deliver such capabilities, only
    to lay the foundation for this in a later release.    

Apart from the work directly on 2D printing, we also expect other groups
to begin to make more direct use of the 2D printing API in merlin as
follows:
    
1) Appletviewer will use 2D printing API so it can print applets which
    use 2D graphics.  
      
2) Selected Swing components will be enhanced to directly support printing
    via the 2D printing. ie a printer friendly view of the model.
   
3) Headless Java will support 2D printing in an environement with no
X-display

These latter features need commitment from groups other than 2D, but we believe
such commitments have been made.

phil.race@eng 2000-01-27
=============================================================================

                                    

Comments
EVALUATION

Need a plan.
david.biagini@Eng 2000-01-20
==============================

See description

phil.race@eng 2000-01-27
========================

The appletviewer and swing enhancements are too late for 1.4
The rest is there.
phil.race@eng 2000-12-04
=======================
                                     
2000-01-27
PUBLIC COMMENTS

2D printing needs some additional APIs to support more sophisticated
printing, and implementation work to enable better integration with
JINI printing in the future.
                                     
2004-06-10
CONVERTED DATA

BugTraq+ Release Management Values

COMMIT TO FIX:
merlin
merlin-beta

FIXED IN:
merlin-beta

INTEGRATED IN:
merlin-beta


                                     
2004-06-14



Hardware and Software, Engineered to Work Together