Save This Page
Home » iText-src-2.1.3 » com.lowagie » text » pdf » [javadoc | source]
com.lowagie.text.pdf
public class: PdfWriter [javadoc | source]
java.lang.Object
   com.lowagie.text.DocWriter
      com.lowagie.text.pdf.PdfWriter

All Implemented Interfaces:
    DocListener

Direct Known Subclasses:
    PdfCopy, PdfCopyFieldsImp, Wrt, PdfStamperImp, PdfSmartCopy

A DocWriter class for PDF.

When this PdfWriter is added to a certain PdfDocument, the PDF representation of every Element added to this Document will be written to the outputstream.

Nested Class Summary:
public static class  PdfWriter.PdfBody  This class generates the structure of a PDF document.

This class covers the third section of Chapter 5 in the 'Portable Document Format Reference Manual version 1.3' (page 55-60). It contains the body of a PDF document (section 5.14) and it can also generate a Cross-reference Table (section 5.15). 

static class  PdfWriter.PdfTrailer  PdfTrailer is the PDF Trailer object.

This object is described in the 'Portable Document Format Reference Manual version 1.3' section 5.16 (page 59-60). 

Field Summary
public static final  int PageLayoutSinglePage    A viewer preference 
public static final  int PageLayoutOneColumn    A viewer preference 
public static final  int PageLayoutTwoColumnLeft    A viewer preference 
public static final  int PageLayoutTwoColumnRight    A viewer preference 
public static final  int PageModeUseNone    A viewer preference 
public static final  int PageModeUseOutlines    A viewer preference 
public static final  int PageModeUseThumbs    A viewer preference 
public static final  int PageModeFullScreen    A viewer preference 
public static final  int PageModeUseOC    A viewer preference 
public static final  int HideToolbar    A viewer preference 
public static final  int HideMenubar    A viewer preference 
public static final  int HideWindowUI    A viewer preference 
public static final  int FitWindow    A viewer preference 
public static final  int CenterWindow    A viewer preference 
public static final  int NonFullScreenPageModeUseNone    A viewer preference 
public static final  int NonFullScreenPageModeUseOutlines    A viewer preference 
public static final  int NonFullScreenPageModeUseThumbs    A viewer preference 
public static final  int NonFullScreenPageModeUseOC    A viewer preference 
public static final  int DirectionL2R    A viewer preference 
public static final  int DirectionR2L    A viewer preference 
public static final  int DisplayDocTitle    A viewer preference 
public static final  int PrintScalingNone    A viewer preference 
static final  int ViewerPreferencesMask    The mask to decide if a ViewerPreferences dictionary is needed 
public static final  int AllowPrinting    The operation permitted when the document is opened with the user password 
public static final  int AllowModifyContents    The operation permitted when the document is opened with the user password 
public static final  int AllowCopy    The operation permitted when the document is opened with the user password 
public static final  int AllowModifyAnnotations    The operation permitted when the document is opened with the user password 
public static final  int AllowFillIn    The operation permitted when the document is opened with the user password 
public static final  int AllowScreenReaders    The operation permitted when the document is opened with the user password 
public static final  int AllowAssembly    The operation permitted when the document is opened with the user password 
public static final  int AllowDegradedPrinting    The operation permitted when the document is opened with the user password 
public static final  boolean STRENGTH40BITS    Type of encryption 
public static final  boolean STRENGTH128BITS    Type of encryption 
public static final  PdfName DOCUMENT_CLOSE    action value 
public static final  PdfName WILL_SAVE    action value 
public static final  PdfName DID_SAVE    action value 
public static final  PdfName WILL_PRINT    action value 
public static final  PdfName DID_PRINT    action value 
public static final  PdfName PAGE_OPEN    action value 
public static final  PdfName PAGE_CLOSE    action value 
public static final  int SIGNATURE_EXISTS    signature value 
public static final  int SIGNATURE_APPEND_ONLY    signature value 
public static final  char VERSION_1_2    possible PDF version 
public static final  char VERSION_1_3    possible PDF version 
public static final  char VERSION_1_4    possible PDF version 
public static final  char VERSION_1_5    possible PDF version 
public static final  char VERSION_1_6    possible PDF version 
protected  byte[] HEADER    this is the header of a PDF document 
protected  int prevxref     
protected  PdfPages root     
protected  PdfDictionary imageDictionary    Dictionary, containing all the images of the PDF document 
protected  HashMap formXObjects    The form XObjects in this document. The key is the xref and the value is Object[]{PdfName, template}. 
protected  int formXObjectsCounter    The name counter for the form XObjects name. 
protected  int fontNumber    The font number counter for the fonts in the document. 
protected  int colorNumber    The color number counter for the colors in the document. 
protected  int patternNumber    The patten number counter for the colors in the document. 
protected  PdfContentByte directContent    The direct content in this document. 
protected  PdfContentByte directContentUnder    The direct content under in this document. 
protected  HashMap documentFonts    The fonts of this document 
protected  HashMap documentColors    The colors of this document 
protected  HashMap documentPatterns    The patterns of this document 
protected  HashMap documentShadings     
protected  HashMap documentShadingPatterns     
protected  ColorDetails patternColorspaceRGB     
protected  ColorDetails patternColorspaceGRAY     
protected  ColorDetails patternColorspaceCMYK     
protected  HashMap documentSpotPatterns     
protected  HashMap documentExtGState     
protected  HashMap documentLayers     
protected  HashSet documentOCG     
protected  ArrayList documentOCGorder     
protected  PdfOCProperties OCProperties     
protected  PdfArray OCGRadioGroup     
protected  PdfDictionary defaultColorspace     
public static final  int PDFXNONE    PDF/X value 
public static final  int PDFX1A2001    PDF/X value 
public static final  int PDFX32002    PDF/X value 
static final  int PDFXKEY_COLOR     
static final  int PDFXKEY_CMYK     
static final  int PDFXKEY_RGB     
static final  int PDFXKEY_FONT     
static final  int PDFXKEY_IMAGE     
static final  int PDFXKEY_GSTATE     
static final  int PDFXKEY_LAYER     
protected  PdfWriter.PdfBody body    body of the PDF document 
protected  PdfDocument pdf    the pdfdocument object. 
protected  PdfEncryption crypto     
protected  HashMap importedPages     
protected  PdfReaderInstance currentPdfReaderInstance     
protected  ArrayList pageReferences    The PdfIndirectReference to the pages. 
protected  int currentPageNumber     
protected  PdfDictionary group     
public static final  float SPACE_CHAR_RATIO_DEFAULT    The default space-char ratio. 
public static final  float NO_SPACE_CHAR_RATIO    Disable the inter-character spacing. 
public static final  int RUN_DIRECTION_DEFAULT    Use the default run direction. 
public static final  int RUN_DIRECTION_NO_BIDI    Do not use bidirectional reordering. 
public static final  int RUN_DIRECTION_LTR    Use bidirectional reordering with left-to-right preferential run direction. 
public static final  int RUN_DIRECTION_RTL    Use bidirectional reordering with right-to-left preferential run direction. 
protected  int runDirection     
protected  boolean fullCompression    Holds value of property fullCompression. 
Fields inherited from com.lowagie.text.DocWriter:
NEWLINE,  TAB,  LT,  SPACE,  EQUALS,  QUOTE,  GT,  FORWARD,  pageSize,  document,  os,  open,  pause,  closeStream
Constructor:
 protected PdfWriter() 
 protected PdfWriter(PdfDocument document,
    OutputStream os) 
    Constructs a PdfWriter.

    Remark: a PdfWriter can only be constructed by calling the method getInstance(Document document, OutputStream os).

    Parameters:
    document - The PdfDocument that has to be written
    os - The OutputStream the writer has to write to.
Method from com.lowagie.text.pdf.PdfWriter Summary:
add,   add,   add,   addAnnotation,   addAnnotation,   addCalculationOrder,   addDirectImageSimple,   addDirectTemplateSimple,   addJavaScript,   addJavaScript,   addJavaScript,   addLocalDestinations,   addOCGRadioGroup,   addSharedObjectsToBody,   addSimple,   addSimple,   addSimpleExtGState,   addSimpleLayer,   addSimplePattern,   addSimplePatternColorspace,   addSimpleShading,   addSimpleShadingPattern,   addToBody,   addToBody,   addToBody,   addToBody,   addToBody,   addToBody,   breakTableIfDoesntFit,   checkPDFXConformance,   close,   eliminateFontSubset,   fitsPage,   fitsPage,   fitsPage,   fitsPage,   freeReader,   getAcroForm,   getCatalog,   getCurrentDocumentSize,   getCurrentPage,   getCurrentPageNumber,   getDefaultColorspace,   getDirectContent,   getDirectContentUnder,   getEncryption,   getExtraCatalog,   getGroup,   getImageReference,   getImportedPage,   getIndirectReferenceNumber,   getInfo,   getInstance,   getInstance,   getNewObjectNumber,   getOCProperties,   getOs,   getPDFXConformance,   getPageEvent,   getPageNumber,   getPageReference,   getPdfDocument,   getPdfIndirectReference,   getPdfTable,   getReaderFile,   getRootOutline,   getRunDirection,   getSpaceCharRatio,   getTableBottom,   getVerticalPosition,   isFullCompression,   isPaused,   isStrictImageSequence,   open,   registerLayer,   reorderPages,   resetContent,   setAdditionalAction,   setBoxSize,   setCropBoxSize,   setDefaultColorspace,   setDuration,   setEncryption,   setEncryption,   setFullCompression,   setGroup,   setLinearPageMode,   setOpenAction,   setOpenAction,   setOutputIntents,   setOutputIntents,   setPDFXConformance,   setPageAction,   setPageEmpty,   setPageEvent,   setPageLabels,   setPdfVersion,   setRunDirection,   setSigFlags,   setSpaceCharRatio,   setStrictImageSequence,   setThumbnail,   setTransition,   setViewerPreferences
Methods from com.lowagie.text.DocWriter:
add,   addTabs,   close,   flush,   getISOBytes,   isCloseStream,   isPaused,   newPage,   open,   pause,   resetFooter,   resetHeader,   resetPageCount,   resume,   setCloseStream,   setFooter,   setHeader,   setMarginMirroring,   setMargins,   setPageCount,   setPageSize,   write,   write,   writeEnd,   writeEnd,   writeMarkupAttributes,   writeStart
Methods from java.lang.Object:
equals,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from com.lowagie.text.pdf.PdfWriter Detail:
 PdfIndirectReference add(PdfImage pdfImage) throws PdfException 
    Writes a PdfImage to the outputstream.
 protected PdfIndirectReference add(PdfICCBased icc) throws PdfException 
 PdfIndirectReference add(PdfPage page,
    PdfContents contents) throws PdfException 
    Adds some PdfContents to this Writer.

    The document has to be open before you can begin to add content to the body of the document.

 public  void addAnnotation(PdfAnnotation annot) 
    Adds a PdfAnnotation or a PdfFormField to the document. Only the top parent of a PdfFormField needs to be added.
  void addAnnotation(PdfAnnotation annot,
    int page) 
 public  void addCalculationOrder(PdfFormField annot) 
    Adds the PdfAnnotation to the calculation order array.
 PdfName addDirectImageSimple(Image image) throws PdfException, DocumentException 
    Adds an image to the document but not to the page resources. It is used with templates and Document.add(Image).
 PdfName addDirectTemplateSimple(PdfTemplate template,
    PdfName forcedName) 
    Adds a template to the document but not to the page resources.
 public  void addJavaScript(PdfAction js) 
    Adds a JavaScript action at the document level. When the document opens all this JavaScript runs.
 public  void addJavaScript(String code) 
    Adds a JavaScript action at the document level. When the document opens all this JavaScript runs.
 public  void addJavaScript(String code,
    boolean unicode) 
    Adds a JavaScript action at the document level. When the document opens all this JavaScript runs.
  void addLocalDestinations(TreeMap dest) throws IOException 
    Adds the local destinations to the body of the document.
 public  void addOCGRadioGroup(ArrayList group) 
    Sets a collection of optional content groups whose states are intended to follow a "radio button" paradigm. That is, the state of at most one optional content group in the array should be ON at a time: if one group is turned ON, all others must be turned OFF.
 protected  void addSharedObjectsToBody() throws IOException 
 FontDetails addSimple(BaseFont bf) 
    Adds a BaseFont to the document but not to the page resources. It is used for templates.
 ColorDetails addSimple(PdfSpotColor spc) 
    Adds a SpotColor to the document but not to the page resources.
 PdfObject[] addSimpleExtGState(PdfDictionary gstate) 
 PdfName addSimpleLayer(PdfOCG layer) 
 PdfName addSimplePattern(PdfPatternPainter painter) 
 ColorDetails addSimplePatternColorspace(Color color) 
  void addSimpleShading(PdfShading shading) 
  void addSimpleShadingPattern(PdfShadingPattern shading) 
 public PdfIndirectObject addToBody(PdfObject object) throws IOException 
    Adds an object to the PDF body.
 public PdfIndirectObject addToBody(PdfObject object,
    boolean inObjStm) throws IOException 
    Adds an object to the PDF body.
 public PdfIndirectObject addToBody(PdfObject object,
    PdfIndirectReference ref) throws IOException 
    Adds an object to the PDF body.
 public PdfIndirectObject addToBody(PdfObject object,
    int refNumber) throws IOException 
    Adds an object to the PDF body.
 public PdfIndirectObject addToBody(PdfObject object,
    PdfIndirectReference ref,
    boolean inObjStm) throws IOException 
    Adds an object to the PDF body.
 public PdfIndirectObject addToBody(PdfObject object,
    int refNumber,
    boolean inObjStm) throws IOException 
    Adds an object to the PDF body.
 public boolean breakTableIfDoesntFit(PdfTable table) throws DocumentException 
    Row additions to the original Table used to build the PdfTable are processed and pre-rendered, and then the contents are deleted. If the pre-rendered table doesn't fit, then it is fully rendered and its data discarded. There shouldn't be any column change in the underlying Table object. (Contributed by dperezcar@fcc.es)
 static  void checkPDFXConformance(PdfWriter writer,
    int key,
    Object obj1) 
 public synchronized  void close() 
    Signals that the Document was closed and that no other Elements will be added.

    The pages-tree is built and written to the outputstream. A Catalog is constructed, as well as an Info-object, the referencetable is composed and everything is written to the outputstream embedded in a Trailer.

  void eliminateFontSubset(PdfDictionary fonts) 
 public boolean fitsPage(Table table) 
    Checks if a Table fits the current page of the PdfDocument.
 public boolean fitsPage(PdfPTable table) 
    Checks if a PdfPTable fits the current page of the PdfDocument.
 public boolean fitsPage(Table table,
    float margin) 
    Checks if a Table fits the current page of the PdfDocument.
 public boolean fitsPage(PdfPTable table,
    float margin) 
    Checks if a PdfPTable fits the current page of the PdfDocument.
 public  void freeReader(PdfReader reader) throws IOException 
    Writes the reader to the document and frees the memory used by it. The main use is when concatenating multiple documents to keep the memory usage restricted to the current appending document.
 public PdfAcroForm getAcroForm() 
    Gets the AcroForm object.
 protected PdfDictionary getCatalog(PdfIndirectReference rootObj) 
 public int getCurrentDocumentSize() 
    Gets the current document size. This size only includes the data already writen to the output stream, it does not include templates or fonts. It is usefull if used with freeReader() when concatenating many documents and an idea of the current size is needed.
 PdfIndirectReference getCurrentPage() 
 int getCurrentPageNumber() 
 public PdfDictionary getDefaultColorspace() 
    Gets the default colorspaces.
 public PdfContentByte getDirectContent() 
    Gets the direct content for this document. There is only one direct content, multiple calls to this method will allways retrieve the same.
 public PdfContentByte getDirectContentUnder() 
    Gets the direct content under for this document. There is only one direct content, multiple calls to this method will allways retrieve the same.
 PdfEncryption getEncryption() 
 public PdfDictionary getExtraCatalog() 
    Sets extra keys to the catalog.
 public PdfDictionary getGroup() 
    Getter for property group.
 PdfIndirectReference getImageReference(PdfName name) 
    return the PdfIndirectReference to the image with a given name.
 public PdfImportedPage getImportedPage(PdfReader reader,
    int pageNumber) 
    Gets a page from other PDF document. The page can be used as any other PdfTemplate. Note that calling this method more than once with the same parameters will retrieve the same object.
 int getIndirectReferenceNumber() 
 public PdfDictionary getInfo() 
    Gets the info dictionary for changing.
 public static PdfWriter getInstance(Document document,
    OutputStream os) throws DocumentException 
    Gets an instance of the PdfWriter.
 public static PdfWriter getInstance(Document document,
    OutputStream os,
    DocListener listener) throws DocumentException 
    Gets an instance of the PdfWriter.
 protected int getNewObjectNumber(PdfReader reader,
    int number,
    int generation) 
 public PdfOCProperties getOCProperties() 
    Gets the Optional Content Properties Dictionary. Each call fills the dictionary with the current layer state. It's advisable to only call this method right before close and do any modifications at that time.
 public OutputStreamCounter getOs() 
    Returns the outputStreamCounter.
 public int getPDFXConformance() 
    Gets the PDFX conformance level.
 public PdfPageEvent getPageEvent() 
    Gets the PdfPageEvent for this document or null if none is set.
 public int getPageNumber() 
    Gets the current pagenumber of this document.
 public PdfIndirectReference getPageReference(int page) 
    Gets a reference to a page existing or not. If the page does not exist yet the reference will be created in advance. If on closing the document, a page number greater than the total number of pages was requested, an exception is thrown.
 PdfDocument getPdfDocument() 
    Gets the PdfDocument associated with this writer.
 public PdfIndirectReference getPdfIndirectReference() 
    Gets a PdfIndirectReference for an object that will be created in the future.
 public PdfTable getPdfTable(Table table) 
    Gets a pre-rendered table. (Contributed by dperezcar@fcc.es)
 RandomAccessFileOrArray getReaderFile(PdfReader reader) 
 public PdfOutline getRootOutline() 
    Gets the root outline.
 public int getRunDirection() 
    Gets the run direction.
 public float getSpaceCharRatio() 
    Gets the space/character extra spacing ratio for fully justified text.
 public float getTableBottom(Table table) 
    Sometimes it is necessary to know where the just added Table ends. For instance to avoid to add another table in a page that is ending up, because the new table will be probably splitted just after the header (it is an unpleasant effect, isn't it?). Added on September 8th, 2001 by Francesco De Milato francesco.demilato@tiscalinet.it
 public float getVerticalPosition(boolean ensureNewLine) 
    Gets the current vertical page position.
 public boolean isFullCompression() 
    Gets the 1.5 compression status.
 boolean isPaused() 
    Checks if writing is paused.
 public boolean isStrictImageSequence() 
    Getter for property strictImageSequence.
 public  void open() 
    Signals that the Document has been opened and that Elements can be added.

    When this method is called, the PDF-document header is written to the outputstream.

  void registerLayer(PdfOCG layer) 
 public int reorderPages(int[] order) throws DocumentException 
    Reorder the pages in the document. A null argument value only returns the number of pages to process. It is advisable to issue a Document.newPage() before using this method.
  void resetContent() 
    Resets all the direct contents to empty. This happens when a new page is started.
 public  void setAdditionalAction(PdfName actionType,
    PdfAction action) throws PdfException 
    Additional-actions defining the actions to be taken in response to various trigger events affecting the document as a whole. The actions types allowed are: DOCUMENT_CLOSE, WILL_SAVE, DID_SAVE, WILL_PRINT and DID_PRINT.
 public  void setBoxSize(String boxName,
    Rectangle size) 
    Sets the page box sizes. Allowed names are: "crop", "trim", "art" and "bleed".
 public  void setCropBoxSize(Rectangle crop) 
    Sets the crop box. The crop box should not be rotated even if the page is rotated. This change only takes effect in the next page.
 public  void setDefaultColorspace(PdfName key,
    PdfObject cs) 
    Sets the default colorspace that will be applied to all the document. The colorspace is only applied if another colorspace with the same name is not present in the content.

    The colorspace is applied immediately when creating templates and at the page end for the main document content.

 public  void setDuration(int seconds) 
    Sets the display duration for the page (for presentations)
 public  void setEncryption(byte[] userPassword,
    byte[] ownerPassword,
    int permissions,
    boolean strength128Bits) throws DocumentException 
    Sets the encryption options for this document. The userPassword and the ownerPassword can be null or have zero length. In this case the ownerPassword is replaced by a random string. The open permissions for the document can be AllowPrinting, AllowModifyContents, AllowCopy, AllowModifyAnnotations, AllowFillIn, AllowScreenReaders, AllowAssembly and AllowDegradedPrinting. The permissions can be combined by ORing them.
 public  void setEncryption(boolean strength,
    String userPassword,
    String ownerPassword,
    int permissions) throws DocumentException 
    Sets the encryption options for this document. The userPassword and the ownerPassword can be null or have zero length. In this case the ownerPassword is replaced by a random string. The open permissions for the document can be AllowPrinting, AllowModifyContents, AllowCopy, AllowModifyAnnotations, AllowFillIn, AllowScreenReaders, AllowAssembly and AllowDegradedPrinting. The permissions can be combined by ORing them.
 public  void setFullCompression() 
    Sets the document's compression to the new 1.5 mode with object streams and xref streams. It can be set at any time but once set it can't be unset.

    If set before opening the document it will also set the pdf version to 1.5.

 public  void setGroup(PdfDictionary group) 
    Setter for property group.
 public  void setLinearPageMode() 
    Sets the document in a suitable way to do page reordering.
 public  void setOpenAction(String name) 
    When the document opens it will jump to the destination with this name.
 public  void setOpenAction(PdfAction action) 
    When the document opens this action will be invoked.
 public boolean setOutputIntents(PdfReader reader,
    boolean checkExistence) throws IOException 
    Copies the output intent dictionary from other document to this one.
 public  void setOutputIntents(String outputConditionIdentifier,
    String outputCondition,
    String registryName,
    String info,
    byte[] destOutputProfile) throws IOException 
    Sets the values of the output intent dictionary. Null values are allowed to suppress any key.
 public  void setPDFXConformance(int pdfxConformance) 
    Sets the PDFX conformance level. Allowed values are PDFX1A2001 and PDFX32002. It must be called before opening the document.
 public  void setPageAction(PdfName actionType,
    PdfAction action) throws PdfException 
    Sets the open and close page additional action.
 public  void setPageEmpty(boolean pageEmpty) 
    If you use setPageEmpty(false), invoking newPage() after a blank page will add a newPage.
 public  void setPageEvent(PdfPageEvent pageEvent) 
    Sets the PdfPageEvent for this document.
 public  void setPageLabels(PdfPageLabels pageLabels) 
    Sets the page labels
 public  void setPdfVersion(char version) 
    Sets the PDF version. Must be used right before the document is opened. Valid options are VERSION_1_2, VERSION_1_3, VERSION_1_4, VERSION_1_5 and VERSION_1_6. VERSION_1_4 is the default.
 public  void setRunDirection(int runDirection) 
    Sets the run direction. This is only used as a placeholder as it does not affect anything.
 public  void setSigFlags(int f) 
    Set the signature flags.
 public  void setSpaceCharRatio(float spaceCharRatio) 
    Sets the ratio between the extra word spacing and the extra character spacing when the text is fully justified. Extra word spacing will grow spaceCharRatio times more than extra character spacing. If the ratio is PdfWriter.NO_SPACE_CHAR_RATIO then the extra character spacing will be zero.
 public  void setStrictImageSequence(boolean strictImageSequence) 
    Sets the image sequence to follow the text in strict order.
 public  void setThumbnail(Image image) throws PdfException, DocumentException 
    Sets the the thumbnail image for the current page.
 public  void setTransition(PdfTransition transition) 
    Sets the transition for the page
 public  void setViewerPreferences(int preferences) 
    Sets the viewer preferences by ORing some constants.

    • The page layout to be used when the document is opened (choose one).
      • PageLayoutSinglePage - Display one page at a time. (default)
      • PageLayoutOneColumn - Display the pages in one column.
      • PageLayoutTwoColumnLeft - Display the pages in two columns, with oddnumbered pages on the left.
      • PageLayoutTwoColumnRight - Display the pages in two columns, with oddnumbered pages on the right.
    • The page mode how the document should be displayed when opened (choose one).
      • PageModeUseNone - Neither document outline nor thumbnail images visible. (default)
      • PageModeUseOutlines - Document outline visible.
      • PageModeUseThumbs - Thumbnail images visible.
      • PageModeFullScreen - Full-screen mode, with no menu bar, window controls, or any other window visible.
      • PageModeUseOC - Optional content group panel visible
    • HideToolbar - A flag specifying whether to hide the viewer application's tool bars when the document is active.
    • HideMenubar - A flag specifying whether to hide the viewer application's menu bar when the document is active.
    • HideWindowUI - A flag specifying whether to hide user interface elements in the document's window (such as scroll bars and navigation controls), leaving only the document's contents displayed.
    • FitWindow - A flag specifying whether to resize the document's window to fit the size of the first displayed page.
    • CenterWindow - A flag specifying whether to position the document's window in the center of the screen.
    • DisplayDocTitle - A flag specifying whether to display the document's title in the top bar.
    • The predominant reading order for text. This entry has no direct effect on the document's contents or page numbering, but can be used to determine the relative positioning of pages when displayed side by side or printed n-up (choose one).
      • DirectionL2R - Left to right
      • DirectionR2L - Right to left (including vertical writing systems such as Chinese, Japanese, and Korean)
    • The document's page mode, specifying how to display the document on exiting full-screen mode. It is meaningful only if the page mode is PageModeFullScreen (choose one).
      • NonFullScreenPageModeUseNone - Neither document outline nor thumbnail images visible
      • NonFullScreenPageModeUseOutlines - Document outline visible
      • NonFullScreenPageModeUseThumbs - Thumbnail images visible
      • NonFullScreenPageModeUseOC - Optional content group panel visible
    • PrintScalingNone - Indicates that the print dialog should reflect no page scaling.