< prev index next >

src/java.desktop/share/classes/javax/print/DocFlavor.java

Print this page




  27 
  28 import java.io.IOException;
  29 import java.io.ObjectInputStream;
  30 import java.io.ObjectOutputStream;
  31 import java.io.Serializable;
  32 
  33 /**
  34  * Class {@code DocFlavor} encapsulates an object that specifies the format in
  35  * which print data is supplied to a {@link DocPrintJob}. "Doc" is a short,
  36  * easy-to-pronounce term that means "a piece of print data." The print data
  37  * format, or "doc flavor", consists of two things:
  38  * <ul>
  39  *   <li><b>MIME type.</b> This is a Multipurpose Internet Mail Extensions
  40  *   (MIME) media type (as defined in
  41  *   <a href="http://www.ietf.org/rfc/rfc2045.txt">RFC 2045</a> and
  42  *   <a href="http://www.ietf.org/rfc/rfc2046.txt">RFC 2046</a>) that specifies
  43  *   how the print data is to be interpreted. The charset of text data should be
  44  *   the IANA MIME-preferred name, or its canonical name if no preferred name is
  45  *   specified. Additionally a few historical names supported by earlier
  46  *   versions of the Java platform may be recognized. See
  47  *   <a href="../../../java.base/java/lang/package-summary.html#charenc">
  48  *   character encodings</a> for more information on the character encodings
  49  *   supported on the Java platform.
  50  *   <li><b>Representation class name.</b> This specifies the fully-qualified
  51  *   name of the class of the object from which the actual print data comes, as
  52  *   returned by the {@link Class#getName() Class.getName()} method. (Thus the
  53  *   class name for {@code byte[]} is {@code "[B"}, for {@code char[]} it is
  54  *   {@code "[C"}.)
  55  * </ul>
  56  * A {@code DocPrintJob} obtains its print data by means of interface
  57  * {@link Doc Doc}. A {@code Doc} object lets the {@code DocPrintJob} determine
  58  * the doc flavor the client can supply. A {@code Doc} object also lets the
  59  * {@code DocPrintJob} obtain an instance of the doc flavor's representation
  60  * class, from which the {@code DocPrintJob} then obtains the actual print data.
  61  *
  62  * <hr>
  63  * <h2>Client Formatted Print Data</h2>
  64  * There are two broad categories of print data, client formatted print data and
  65  * service formatted print data.
  66  * <p>
  67  * For <b>client formatted print data</b>, the client determines or knows the
  68  * print data format. For example the client may have a JPEG encoded image, a
  69  * {@code URL} for HTML code, or a disk file containing plain text in some




  27 
  28 import java.io.IOException;
  29 import java.io.ObjectInputStream;
  30 import java.io.ObjectOutputStream;
  31 import java.io.Serializable;
  32 
  33 /**
  34  * Class {@code DocFlavor} encapsulates an object that specifies the format in
  35  * which print data is supplied to a {@link DocPrintJob}. "Doc" is a short,
  36  * easy-to-pronounce term that means "a piece of print data." The print data
  37  * format, or "doc flavor", consists of two things:
  38  * <ul>
  39  *   <li><b>MIME type.</b> This is a Multipurpose Internet Mail Extensions
  40  *   (MIME) media type (as defined in
  41  *   <a href="http://www.ietf.org/rfc/rfc2045.txt">RFC 2045</a> and
  42  *   <a href="http://www.ietf.org/rfc/rfc2046.txt">RFC 2046</a>) that specifies
  43  *   how the print data is to be interpreted. The charset of text data should be
  44  *   the IANA MIME-preferred name, or its canonical name if no preferred name is
  45  *   specified. Additionally a few historical names supported by earlier
  46  *   versions of the Java platform may be recognized. See
  47  *   <a href="../../java/lang/package-summary.html#charenc">character encodings
  48  *   </a> for more information on the character encodings supported on the Java
  49  *   platform.
  50  *   <li><b>Representation class name.</b> This specifies the fully-qualified
  51  *   name of the class of the object from which the actual print data comes, as
  52  *   returned by the {@link Class#getName() Class.getName()} method. (Thus the
  53  *   class name for {@code byte[]} is {@code "[B"}, for {@code char[]} it is
  54  *   {@code "[C"}.)
  55  * </ul>
  56  * A {@code DocPrintJob} obtains its print data by means of interface
  57  * {@link Doc Doc}. A {@code Doc} object lets the {@code DocPrintJob} determine
  58  * the doc flavor the client can supply. A {@code Doc} object also lets the
  59  * {@code DocPrintJob} obtain an instance of the doc flavor's representation
  60  * class, from which the {@code DocPrintJob} then obtains the actual print data.
  61  *
  62  * <hr>
  63  * <h2>Client Formatted Print Data</h2>
  64  * There are two broad categories of print data, client formatted print data and
  65  * service formatted print data.
  66  * <p>
  67  * For <b>client formatted print data</b>, the client determines or knows the
  68  * print data format. For example the client may have a JPEG encoded image, a
  69  * {@code URL} for HTML code, or a disk file containing plain text in some


< prev index next >