Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-4285177

RFE: Additional Java 2D printing work

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Fixed
    • Icon: P3 P3
    • 1.4.0
    • 1.2.2, 1.4.0
    • client-libs
    • 2d
    • beta
    • generic, sparc
    • generic, solaris_7



      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
      =============================================================================

            prr Philip Race
            jehung Jeannette Hung (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: