com.lowagie.text.pdf

Class PdfLayer

public class PdfLayer extends PdfDictionary implements PdfOCG

An optional content group is a dictionary representing a collection of graphics that can be made visible or invisible dynamically by users of viewer applications. In iText they are referenced as layers.

Author: Paulo Soares (psoares@consiste.pt)

Field Summary
protected ArrayListchildren
booleanon
Holds value of property on.
booleanonPanel
Holds value of property onPanel.
protected PdfLayerparent
protected PdfIndirectReferenceref
protected Stringtitle
Constructor Summary
PdfLayer(String title)
PdfLayer(String name, PdfWriter writer)
Creates a new layer.
Method Summary
voidaddChild(PdfLayer child)
Adds a child layer.
static PdfLayercreateTitle(String title, PdfWriter writer)
Creates a title layer.
ArrayListgetChildren()
Gets the children layers.
PdfLayergetParent()
Gets the parent layer.
PdfObjectgetPdfObject()
Gets the dictionary representing the layer.
PdfIndirectReferencegetRef()
Gets the PdfIndirectReference that represents this layer.
StringgetTitle()
PdfDictionarygetUsage()
booleanisOn()
Gets the initial visibility of the layer.
booleanisOnPanel()
Gets the layer visibility in Acrobat's layer panel
voidsetCreatorInfo(String creator, String subtype)
Used by the creating application to store application-specific data associated with this optional content group.
voidsetExport(boolean export)
Specifies the recommended state for content in this group when the document (or part of it) is saved by a viewer application to a format that does not support optional content (for example, an earlier version of PDF or a raster image format).
voidsetLanguage(String lang, boolean preferred)
Specifies the language of the content controlled by this optional content group
voidsetName(String name)
Sets the name of this layer.
voidsetOn(boolean on)
Sets the initial visibility of the layer.
voidsetOnPanel(boolean onPanel)
Sets the visibility of the layer in Acrobat's layer panel.
voidsetPrint(String subtype, boolean printstate)
Specifies that the content in this group is intended for use in printing
voidsetView(boolean view)
Indicates that the group should be set to that state when the document is opened in a viewer application.
voidsetZoom(float min, float max)
Specifies a range of magnifications at which the content in this optional content group is best viewed.

Field Detail

children

protected ArrayList children

on

private boolean on
Holds value of property on.

onPanel

private boolean onPanel
Holds value of property onPanel.

parent

protected PdfLayer parent

ref

protected PdfIndirectReference ref

title

protected String title

Constructor Detail

PdfLayer

PdfLayer(String title)

PdfLayer

public PdfLayer(String name, PdfWriter writer)
Creates a new layer.

Parameters: name the name of the layer writer the writer

Method Detail

addChild

public void addChild(PdfLayer child)
Adds a child layer. Nested layers can only have one parent.

Parameters: child the child layer

createTitle

public static PdfLayer createTitle(String title, PdfWriter writer)
Creates a title layer. A title layer is not really a layer but a collection of layers under the same title heading.

Parameters: title the title text writer the PdfWriter

Returns: the title layer

getChildren

public ArrayList getChildren()
Gets the children layers.

Returns: the children layers or null if the layer has no children

getParent

public PdfLayer getParent()
Gets the parent layer.

Returns: the parent layer or null if the layer has no parent

getPdfObject

public PdfObject getPdfObject()
Gets the dictionary representing the layer. It just returns this.

Returns: the dictionary representing the layer

getRef

public PdfIndirectReference getRef()
Gets the PdfIndirectReference that represents this layer.

Returns: the PdfIndirectReference that represents this layer

getTitle

String getTitle()

getUsage

private PdfDictionary getUsage()

isOn

public boolean isOn()
Gets the initial visibility of the layer.

Returns: the initial visibility of the layer

isOnPanel

public boolean isOnPanel()
Gets the layer visibility in Acrobat's layer panel

Returns: the layer visibility in Acrobat's layer panel

setCreatorInfo

public void setCreatorInfo(String creator, String subtype)
Used by the creating application to store application-specific data associated with this optional content group.

Parameters: creator a text string specifying the application that created the group subtype a string defining the type of content controlled by the group. Suggested values include but are not limited to Artwork, for graphic-design or publishing applications, and Technical, for technical designs such as building plans or schematics

setExport

public void setExport(boolean export)
Specifies the recommended state for content in this group when the document (or part of it) is saved by a viewer application to a format that does not support optional content (for example, an earlier version of PDF or a raster image format).

Parameters: export the export state

setLanguage

public void setLanguage(String lang, boolean preferred)
Specifies the language of the content controlled by this optional content group

Parameters: lang a language string which specifies a language and possibly a locale (for example, es-MX represents Mexican Spanish) preferred used by viewer applications when there is a partial match but no exact match between the system language and the language strings in all usage dictionaries

setName

public void setName(String name)
Sets the name of this layer.

Parameters: name the name of this layer

setOn

public void setOn(boolean on)
Sets the initial visibility of the layer.

Parameters: on the initial visibility of the layer

setOnPanel

public void setOnPanel(boolean onPanel)
Sets the visibility of the layer in Acrobat's layer panel. If false the layer cannot be directly manipulated by the user. Note that any children layers will also be absent from the panel.

Parameters: onPanel the visibility of the layer in Acrobat's layer panel

setPrint

public void setPrint(String subtype, boolean printstate)
Specifies that the content in this group is intended for use in printing

Parameters: subtype a name specifying the kind of content controlled by the group; for example, Trapping, PrintersMarks and Watermark printstate indicates that the group should be set to that state when the document is printed from a viewer application

setView

public void setView(boolean view)
Indicates that the group should be set to that state when the document is opened in a viewer application.

Parameters: view the view state

setZoom

public void setZoom(float min, float max)
Specifies a range of magnifications at which the content in this optional content group is best viewed.

Parameters: min the minimum recommended magnification factors at which the group should be ON. A negative value will set the default to 0 max the maximum recommended magnification factor at which the group should be ON. A negative value will set the largest possible magnification supported by the viewer application