com.lowagie.text.pdf.internal

## Class PdfViewerPreferencesImp

- java.lang.Object
- - com.lowagie.text.pdf.internal.PdfViewerPreferencesImp

All Implemented Interfaces:
  PdfViewerPreferences

    public class PdfViewerPreferencesImp
    extends java.lang.Object
    implements PdfViewerPreferences

Stores the information concerning viewer preferences, and contains the business logic that allows you to set viewer preferences.

### Field Summary

Fields
`static PdfName[]` `DIRECTION_PREFERENCES` A series of viewer preferences.
`static PdfName[]` `DUPLEX_PREFERENCES` A series of viewer preferences.
`static PdfName[]` `NONFULLSCREENPAGEMODE_PREFERENCES` A series of viewer preferences.
`static PdfName[]` `PAGE_BOUNDARIES` A series of viewer preferences.
`private int` `pageLayoutAndMode` This value will hold the viewer preferences for the page layout and page mode.
`static PdfName[]` `PRINTSCALING_PREFERENCES` A series of viewer preferences
`static PdfName[]` `VIEWER_PREFERENCES`
`private PdfDictionary` `viewerPreferences` This dictionary holds the viewer preferences (other than page layout and page mode).
`private static int` `viewerPreferencesMask` The mask to decide if a ViewerPreferences dictionary is needed

### Constructor Summary

Constructors
Constructor and Description
`PdfViewerPreferencesImp()`

### Method Summary

Methods
`void` `addToCatalog(PdfDictionary catalog)` Adds the viewer preferences defined in the preferences parameter to a PdfDictionary (more specifically the root or catalog of a PDF file).
`void` `addViewerPreference(PdfName key, PdfObject value)` Sets the viewer preferences for printing.
`private int` `getIndex(PdfName key)` Given a key for a viewer preference (a PdfName object), this method returns the index in the VIEWER_PREFERENCES array.
`int` `getPageLayoutAndMode()` Returns the page layout and page mode value.
`PdfDictionary` `getViewerPreferences()` Returns the viewer preferences.
`static PdfViewerPreferencesImp` `getViewerPreferences(PdfDictionary catalog)`
`private boolean` `isPossibleValue(PdfName value, PdfName[] accepted)` Checks if some value is valid for a certain key.
`void` `setViewerPreferences(int preferences)` Sets the viewer preferences as the sum of several constants.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### VIEWER_PREFERENCES

    public static final PdfName[] VIEWER_PREFERENCES

#### NONFULLSCREENPAGEMODE_PREFERENCES

    public static final PdfName[] NONFULLSCREENPAGEMODE_PREFERENCES

A series of viewer preferences.

#### DIRECTION_PREFERENCES

    public static final PdfName[] DIRECTION_PREFERENCES

A series of viewer preferences.

#### PAGE_BOUNDARIES

    public static final PdfName[] PAGE_BOUNDARIES

A series of viewer preferences.

#### PRINTSCALING_PREFERENCES

    public static final PdfName[] PRINTSCALING_PREFERENCES

A series of viewer preferences

#### DUPLEX_PREFERENCES

    public static final PdfName[] DUPLEX_PREFERENCES

A series of viewer preferences.

#### pageLayoutAndMode

    private int pageLayoutAndMode

This value will hold the viewer preferences for the page layout and page mode.

#### viewerPreferences

    private PdfDictionary viewerPreferences

This dictionary holds the viewer preferences (other than page layout and page mode).

#### viewerPreferencesMask

    private static final int viewerPreferencesMask

The mask to decide if a ViewerPreferences dictionary is needed

See Also:
  Constant Field Values

### Constructor Detail

#### PdfViewerPreferencesImp

    public PdfViewerPreferencesImp()

### Method Detail

#### getPageLayoutAndMode

    public int getPageLayoutAndMode()

Returns the page layout and page mode value.

#### getViewerPreferences

    public PdfDictionary getViewerPreferences()

Returns the viewer preferences.

#### setViewerPreferences

    public void setViewerPreferences(int preferences)

Sets the viewer preferences as the sum of several constants.

Specified by:
  `setViewerPreferences` in interface `PdfViewerPreferences`
Parameters:
  `preferences` - the viewer preferences
See Also:
  `PdfViewerPreferences.setViewerPreferences(int)`

#### getIndex

    private int getIndex(PdfName key)

Given a key for a viewer preference (a PdfName object), this method returns the index in the VIEWER_PREFERENCES array.

Parameters:
  `key` - a PdfName referring to a viewer preference
Returns:
  an index in the VIEWER_PREFERENCES array

#### isPossibleValue

    private boolean isPossibleValue(PdfName value,
                          PdfName[] accepted)

Checks if some value is valid for a certain key.

#### addViewerPreference

    public void addViewerPreference(PdfName key,
                           PdfObject value)

Sets the viewer preferences for printing.

Specified by:
  `addViewerPreference` in interface `PdfViewerPreferences`
Parameters:
  `key` - the name of the viewer preference
  `value` - the value of the viewer preference
See Also:
  `PdfViewerPreferences.setViewerPreferences(int)`

#### addToCatalog

    public void addToCatalog(PdfDictionary catalog)

Adds the viewer preferences defined in the preferences parameter to a PdfDictionary (more specifically the root or catalog of a PDF file).

Parameters:
  `catalog` -

#### getViewerPreferences

    public static PdfViewerPreferencesImp getViewerPreferences(PdfDictionary catalog)