net.sf.jasperreports.engine.export

## Class JRPdfExporter

- java.lang.Object
- - net.sf.jasperreports.engine.JRAbstractExporter<PdfReportConfiguration,PdfExporterConfiguration,OutputStreamExporterOutput,JRPdfExporterContext>
  - - net.sf.jasperreports.engine.export.JRPdfExporter

- All Implemented Interfaces:
    JRExporter<ExporterInput,PdfReportConfiguration,PdfExporterConfiguration,OutputStreamExporterOutput>, Exporter<ExporterInput,PdfReportConfiguration,PdfExporterConfiguration,OutputStreamExporterOutput>

      public class JRPdfExporter
      extends JRAbstractExporter<PdfReportConfiguration,PdfExporterConfiguration,OutputStreamExporterOutput,JRPdfExporterContext>

  Exports a JasperReports document to PDF format. It has binary output type and exports the document to a free-form layout.

  As its name indicates, PDF is a very precise and complex document format that ensures documents will look and print the same on all platforms. This is why the PDF exporter implemented by the `JRPdfExporter` class in JasperReports is one of the best exporters. The output it produces is almost of the same quality as that produced by the `JRGraphics2DExporter`, which is always the reference.

  The `JRPdfExporter` implementation uses iText, which is a specialized PDF-generating library. PDF is a binary document format that allows absolute positioning of the elements inside a page, so the existing PDF exporter does not have the limitations of a grid exporter.

  It also works very well in batch mode because it allows concatenation of multiple documents within the same PDF file, even if the files have different page sizes.

  ### Font Mappings

  Exporting to PDF requires mapping the fonts using three attributes: `pdfFontName`, `pdfEncoding` and `isPdfEmbedded`. Even though these three attributes are still supported in JRXML and the API, we recommend making the PDF font mappings at export time using font extensions.

  When exporting documents to PDF, for each combination of the three `fontName`, `isBold`, and `isItalic` font attributes, there must be an equivalent combination of the PDF-related font attributes `pdfFontName`, `pdfEncoding` and `isPdfEmbedded`.

  Equivalent combination means one that causes the text elements to be rendered exactly the same (or at least as closely as possible) in PDF and the built-in Graphics2D exporter, which is the reference.

  In some cases, there is no font file available to use with the pdfFontName attribute in order to render bold and italic text exactly like the Graphics2D exporter renders it in AWT. Those fonts might only have a normal style variant and no variants for bold and italic. In such cases, the PDF exporter (the iText library, to be more precise) is able to simulate those styles by applying transformations to the normal font glyphs. The `JRPdfExporter` internally acquires the needed PDF font based on the font extension mechanism (see the `getFont(Map, Locale, boolean)` method.

  ### Batch Mode Bookmarks

  When several JasperPrint documents must be concatenated in the same PDF file by batch export, one can introduce PDF bookmarks in the resulting PDF document to mark the beginning of each individual document that was part of the initial document list.

  These bookmarks have the same name as the original JasperPrint document as specified by the `jasperPrint.getName()` property. However, users can turn on and off the creation of those bookmarks by turning on or off the `isCreatingBatchModeBookmarks()` exporter configuration setting. The exporter does not create such bookmarks by default.

  ### Encrypted PDF

  In some cases, users might want to encrypt the PDF documents generated by JasperReports so that only authorized viewers can have access to those documents. There are five exporter configuration settings for this (see `PdfExporterConfiguration`):
  - `isEncrypted()`
  - `is128BitKey()`
  - `getUserPassword()`
  - `getOwnerPassword()`
  - `getPermissions()`

  ### PDF Version and Compression

  Some applications require marking the generated files with a particular PDF specifications version. Related export configuration settings are the following (see `PdfExporterConfiguration`):
  - `getPdfVersion()`
  - `isCompressed()`
  Since version 1.5, the PDF format supports compression. By default, the PDF exporter in JasperReports does not create compressed PDF documents, but this feature can be turned on using the `isCompressed()` exporter configuration setting. Note that because compressed PDFs are available only since PDF version 1.5, the PDF version of the resulting document is set to 1.5 automatically if compression is turned on.

  ### Word Wrap and Line Break Policy

  By default, the PDF exporter does not guarantee that text with the same style properties will be rendered exactly as it is using AWT. The word wrap and line break policy is slightly different, and in some cases it might cause portions of text to disappear at the end of longer text paragraphs.

  To make sure this does not happen, one can configure the PDF exporter to use the AWT word wrap and line break policy by setting the `isForceLineBreakPolicy()` exporter configuration setting to true. Note that this feature is not turned on by default, because it affects the exporter performance. This default behavior that applies in the absence of the mentioned export parameter can be controlled using the `net.sf.jasperreports.export.pdf.force.linebreak.policy` configuration property

  ### JavaScript Actions

  The PDF specifications provide a means for the automation of various processes, such as the automatic printing of the document when it is opened. PDF viewer applications are able to execute Acrobat JavaScript code that is embedded in the PDF and associated with different events.

  JasperReports only allows inserting Acrobat JavaScript code. This code gets executed when the PDF document is opened in the viewer. This can be achieved using the `getPdfJavaScript()` configuration setting, which retrieve the Acrobat JavaScript source code. Note that Acrobat JavaScript is a programming language based on JavaScript. More details about this can be found in the iText documentation.

  ### Metadata Information

  PDF documents can store metadata information such as the author of the document, its title, and keywords. JasperReports exposes this feature of PDF through special exporter configuration settings available in the `PdfExporterConfiguration` class. They are all listed following:
  - `getMetadataAuthor()`
  - `getMetadataCreator()`
  - `getMetadataKeywords()`
  - `getMetadataSubject()`
  - `getMetadataTitle()`

  ### Rendering SVG Using Shapes

  The `isForceSvgShapes()` flag is used to force the rendering of SVG images using shapes on the PDF `Graphics2D` context. This allows fonts to be rendered as shapes, thus avoiding any font mapping issues that might cause Unicode text to not show up properly; however, it has the disadvantage of producing larger PDF files.

  By default, the flag is set to true, mainly due to backward-compatibility reasons. To reduce PDF file size for documents containing SVG images such as charts, this flag should be set to false. However, in such a case, the accuracy of the text content rendered by the SVG element in PDF depends on the correct PDF font information being available in the SVG implementation itself.

  In JasperReports, SVG elements are rendered using `Renderable` implementations, which are most likely subclasses of the `JRAbstractSvgRenderer` class. SVG renderer implementations should be concerned only with implementing the

  `public void render(JasperReportsContext jasperReportsContext, Graphics2D grx, Rectangle2D rectangle)`

  method, which should contain all the code required for rendering the SVG on a Graphics2D context. Correct PDF font information means that the `java.awt.Font` objects used to draw text on the `Graphics2D` context should have PDF-related text attributes embedded so that when rendered on a PDF `Graphics2D` context, the exporter can make use of them. Embedding PDF-related text attributes into the SVG means using the following text attributes when creating `java.awt.Font` to render text in the SVG renderer implementation:
  - `PDF_FONT_NAME`
  - `PDF_ENCODING`
  - `IS_PDF_EMBEDDED`

  The built-in chart component in JasperReports hides this complexity of dealing with fonts in a SVG renderer by exposing to the end user the usual three PDF-specific font attributes (`pdfFontName`, `pdfEncoding`, and `isPdfEmbedded`) to be set along with the normal font attributes every time a font setting is made for the chart title, subtitle, chart legend, or axis. This feature can be controlled system-wide using the `net.sf.jasperreports.export.pdf.force.svg.shapes` configuration property. The `isForceSvgShapes()` export configuration setting overrides the configuration property value, if present.

  ### Section 508 Compliance

  PDF files can contain hidden tags that describe the structure of the document. Some of the tags are used by the automated reader tool that reads PDF documents aloud to people with disabilities.

  The PDF tags feature of JasperReports allows adding hidden PDF tags to the files generated by the JasperReports PDF exporter. The resulting files comply with the requirements of the Section 508 of the U.S. Rehabilitation Act (http://www.section508.gov/).

  ### Producing Tagged PDF Files

  By default, the JasperReports exporter does not put any hidden structural tags inside its generated PDF files. In order to turn on the creation of hidden structural tags, any of the following can be used:
  - setting to true the `isTagged()` configuration flag
  - setting to true the `net.sf.jasperreports.export.pdf.tagged` configuration property.

  ### Setting the PDF File Language

  When a full accessibility check is requested from Acrobat Professional, among the things it determines is whether the PDF file or the various pieces of content inside it have a language set. JasperReports allows setting the language for the entire content by doing any one of the following:
  - using the `getTagLanguage()` configuration setting to retrieve the language as a `java.lang.String` value;
  - using the `net.sf.jasperreports.export.pdf.tag.language` configuration property globally or at report level

  ### Alternate Text for Images

  In tagged PDF files, image elements can be described in alternate text that is read by the automated reader. The text is specified using the `hyperlinkTooltipExpression` property of the image element in JRXML.

  For more information about tagged PDF documents in JasperReports, please consult the `JRPdfExporterTagHelper` class.
  Version:
    $Id: JRPdfExporter.java 7086 2014-05-12 08:47:33Z shertage $
  Author:
    Teodor Danciu (teodord@users.sourceforge.net)
  See Also:
    `PdfExporterConfiguration`, `PdfReportConfiguration`, `JRTextAttribute.IS_PDF_EMBEDDED`, `JRTextAttribute.PDF_ENCODING`, `JRTextAttribute.PDF_FONT_NAME`

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `protected static class` | `JRPdfExporter.Bookmark`
    `protected static class` | `JRPdfExporter.BookmarkStack`
    `protected class` | `JRPdfExporter.ExporterContext`

    - ### Nested classes/interfaces inherited from class net.sf.jasperreports.engine.JRAbstractExporter

      `JRAbstractExporter.BaseExporterContext, JRAbstractExporter.PageRange`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected com.lowagie.text.Document` | `document`
    `protected static boolean` | `fontsRegistered`
    `protected com.lowagie.text.Document` | `imageTesterDocument`
    `protected com.lowagie.text.pdf.PdfContentByte` | `imageTesterPdfContentByte`
    `protected static java.lang.String` | `JR_PAGE_ANCHOR_PREFIX`
    `protected java.util.Map<Renderable,com.lowagie.text.Image>` | `loadedImagesMap`
    `static java.lang.String` | `PDF_EXPORTER_KEY` The exporter key, as used in `GenericElementHandlerEnviroment.getElementHandler(JRGenericElementType, String)`.
    `static java.lang.String` | `PDF_EXPORTER_PROPERTIES_PREFIX`
    `static java.lang.String` | `PDF_FONT_DIRS_PREFIX` Prefix of properties that specify font directories for the PDF exporter.
    `static java.lang.String` | `PDF_FONT_FILES_PREFIX` Prefix of properties that specify font files for the PDF exporter.
    `protected com.lowagie.text.pdf.PdfContentByte` | `pdfContentByte`
    `protected com.lowagie.text.pdf.PdfWriter` | `pdfWriter`
    `protected int` | `permissions`
    `static java.lang.String` | `PROPERTY_IGNORE_HYPERLINK` Deprecated. Replaced by `PdfReportConfiguration.PROPERTY_IGNORE_HYPERLINK`.
    `protected com.lowagie.text.Image` | `pxImage`
    `protected int` | `reportIndex`
    `protected JRPdfExporterTagHelper` | `tagHelper`

    - ### Fields inherited from class net.sf.jasperreports.engine.JRAbstractExporter

      `allSelector, crtCompositeConfiguration, crtCompositeItemConfiguration, crtItem, dateFormatCache, EXCEPTION_MESSAGE_KEY_END_PAGE_INDEX_OUT_OF_RANGE, EXCEPTION_MESSAGE_KEY_PAGE_INDEX_OUT_OF_RANGE, EXCEPTION_MESSAGE_KEY_START_PAGE_INDEX_OUT_OF_RANGE, exporterConfiguration, exporterContext, exporterInput, exporterOutput, filter, itemConfiguration, jasperPrint, jasperReportsContext, noBackcolorSelector, noneSelector, numberFormatCache, parameters, propertiesUtil, PROPERTY_DEFAULT_FILTER_FACTORY, PROPERTY_SUFFIX_DEFAULT_FILTER_FACTORY, styledTextUtil`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JRPdfExporter()`
    `JRPdfExporter(JasperReportsContext jasperReportsContext)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `addBookmark(int level, java.lang.String title, int x, int y)`
    `protected void` | `ensureOutput()`
    `protected void` | `exportBottomPen(JRPen leftPen, JRPen bottomPen, JRPen rightPen, JRPrintElement element)`
    `protected void` | `exportBox(JRLineBox box, JRPrintElement element)`
    `protected void` | `exportElements(java.util.Collection<JRPrintElement> elements)`
    `protected void` | `exportEllipse(JRPrintEllipse ellipse)`
    `void` | `exportFrame(JRPrintFrame frame)`
    `protected void` | `exportGenericElement(JRGenericPrintElement element)`
    `void` | `exportImage(JRPrintImage printImage)`
    `protected void` | `exportLeftPen(JRPen topPen, JRPen leftPen, JRPen bottomPen, JRPrintElement element)`
    `protected void` | `exportLine(JRPrintLine line)`
    `protected void` | `exportPage(JRPrintPage page)`
    `protected void` | `exportPen(JRPen pen, JRPrintElement element)`
    `protected void` | `exportRectangle(JRPrintRectangle rectangle)`
    `void` | `exportReport()` Performs the export.
    `protected void` | `exportReportToStream(java.io.OutputStream os)`
    `protected void` | `exportRightPen(JRPen topPen, JRPen bottomPen, JRPen rightPen, JRPrintElement element)`
    `void` | `exportText(JRPrintText text)`
    `protected void` | `exportTopPen(JRPen topPen, JRPen leftPen, JRPen rightPen, JRPrintElement element)`
    `protected com.lowagie.text.Chunk` | `getChunk(java.util.Map<java.text.AttributedCharacterIterator.Attribute,java.lang.Object> attributes, java.lang.String text, java.util.Locale locale)`
    `protected java.lang.Class<PdfExporterConfiguration>` | `getConfigurationInterface()`
    `java.lang.String` | `getExporterKey()`
    `java.lang.String` | `getExporterPropertiesPrefix()` Returns the properties prefix for the current exporter.
    `protected com.lowagie.text.Font` | `getFont(java.util.Map<java.text.AttributedCharacterIterator.Attribute,java.lang.Object> attributes, java.util.Locale locale, boolean setFontLines)` Creates a PDF font.
    `static int` | `getIntegerPermissions(java.lang.String permissions)`
    `protected java.lang.Class<PdfReportConfiguration>` | `getItemConfigurationInterface()`
    `protected com.lowagie.text.Phrase` | `getPhrase(java.text.AttributedString as, java.lang.String text, JRPrintText textElement)`
    `protected com.lowagie.text.Image` | `getPxImage()`
    `protected boolean` | `hasStrikethrough(java.util.Map<java.text.AttributedCharacterIterator.Attribute,java.lang.Object> textAttributes)`
    `protected boolean` | `hasUnderline(java.util.Map<java.text.AttributedCharacterIterator.Attribute,java.lang.Object> textAttributes)`
    `protected void` | `initBookmarks()`
    `protected void` | `initExport()`
    `protected void` | `initReport()`
    `protected static void` | `registerFonts()`
    `protected void` | `setAnchor(com.lowagie.text.Chunk chunk, JRPrintAnchor anchor, JRPrintElement element)`
    `protected void` | `setHyperlinkInfo(com.lowagie.text.Chunk chunk, JRPrintHyperlink link)`
    `protected void` | `setPageSize(JRPrintPage page)`
    `protected void` | `writePageAnchor(int pageIndex)`

    - ### Methods inherited from class net.sf.jasperreports.engine.JRAbstractExporter

      `createFilter, defaultParseNumber, ensureInput, ensureJasperReportsContext, getBooleanCellValue, getCurrentConfiguration, getCurrentItemConfiguration, getCurrentJasperPrint, getCustomHandler, getDateCellValue, getDateFormat, getExporterContext, getExporterInput, getExporterOutput, getHyperlinkProducer, getJasperReportsContext, getLocale, getNumberCellValue, getNumberFormat, getOffsetX, getOffsetY, getPageRange, getParameter, getParameters, getPropertiesUtil, getReportContext, getStyledText, getStyledText, getTextFormatFactoryClass, getTextLocale, getTextTimeZone, getTextValue, getTextValueString, reset, resetClassLoader, resetExportContext, restoreElementOffsets, setClassLoader, setConfiguration, setConfiguration, setCurrentExporterInputItem, setExporterInput, setExporterOutput, setFrameElementsOffset, setJasperPrint, setJasperReportsContext, setOffset, setOffset, setParameter, setParameters, setReportContext`

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

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

- - ### Field Detail

    - #### PDF_EXPORTER_PROPERTIES_PREFIX

          public static final java.lang.String PDF_EXPORTER_PROPERTIES_PREFIX

      See Also:
        Constant Field Values

    - #### PROPERTY_IGNORE_HYPERLINK

          public static final java.lang.String PROPERTY_IGNORE_HYPERLINK

      Deprecated. Replaced by `PdfReportConfiguration.PROPERTY_IGNORE_HYPERLINK`.
      See Also:
        Constant Field Values

    - #### PDF_FONT_FILES_PREFIX

          public static final java.lang.String PDF_FONT_FILES_PREFIX

      Prefix of properties that specify font files for the PDF exporter.
      See Also:
        Constant Field Values

    - #### PDF_FONT_DIRS_PREFIX

          public static final java.lang.String PDF_FONT_DIRS_PREFIX

      Prefix of properties that specify font directories for the PDF exporter.
      See Also:
        Constant Field Values

    - #### PDF_EXPORTER_KEY

          public static final java.lang.String PDF_EXPORTER_KEY

      The exporter key, as used in `GenericElementHandlerEnviroment.getElementHandler(JRGenericElementType, String)`.
      See Also:
        Constant Field Values

    - #### JR_PAGE_ANCHOR_PREFIX

          protected static final java.lang.String JR_PAGE_ANCHOR_PREFIX

      See Also:
        Constant Field Values

    - #### fontsRegistered

          protected static boolean fontsRegistered

    - #### document

          protected com.lowagie.text.Document document

    - #### pdfContentByte

          protected com.lowagie.text.pdf.PdfContentByte pdfContentByte

    - #### pdfWriter

          protected com.lowagie.text.pdf.PdfWriter pdfWriter

    - #### imageTesterDocument

          protected com.lowagie.text.Document imageTesterDocument

    - #### imageTesterPdfContentByte

          protected com.lowagie.text.pdf.PdfContentByte imageTesterPdfContentByte

    - #### tagHelper

          protected JRPdfExporterTagHelper tagHelper

    - #### reportIndex

          protected int reportIndex

    - #### permissions

          protected int permissions

    - #### loadedImagesMap

          protected java.util.Map<Renderable,com.lowagie.text.Image> loadedImagesMap

    - #### pxImage

          protected com.lowagie.text.Image pxImage

  - ### Constructor Detail

    - #### JRPdfExporter

          public JRPdfExporter()

      See Also:
        `JRPdfExporter(JasperReportsContext)`

    - #### JRPdfExporter

          public JRPdfExporter(JasperReportsContext jasperReportsContext)

  - ### Method Detail

    - #### getConfigurationInterface

          protected java.lang.Class<PdfExporterConfiguration> getConfigurationInterface()

      Specified by:
        `getConfigurationInterface` in class `JRAbstractExporter<PdfReportConfiguration,PdfExporterConfiguration,OutputStreamExporterOutput,JRPdfExporterContext>`

    - #### getItemConfigurationInterface

          protected java.lang.Class<PdfReportConfiguration> getItemConfigurationInterface()

      Specified by:
        `getItemConfigurationInterface` in class `JRAbstractExporter<PdfReportConfiguration,PdfExporterConfiguration,OutputStreamExporterOutput,JRPdfExporterContext>`

    - #### ensureOutput

          protected void ensureOutput()

      Specified by:
        `ensureOutput` in class `JRAbstractExporter<PdfReportConfiguration,PdfExporterConfiguration,OutputStreamExporterOutput,JRPdfExporterContext>`

    - #### getPxImage

          protected com.lowagie.text.Image getPxImage()

    - #### exportReport

          public void exportReport()
                            throws JRException

      Description copied from interface: `Exporter`
      Performs the export.
      Specified by:
        `exportReport` in interface `Exporter<ExporterInput,PdfReportConfiguration,PdfExporterConfiguration,OutputStreamExporterOutput>`
      Specified by:
        `exportReport` in class `JRAbstractExporter<PdfReportConfiguration,PdfExporterConfiguration,OutputStreamExporterOutput,JRPdfExporterContext>`
      Throws:
        `JRException`

    - #### initExport

          protected void initExport()

      Overrides:
        `initExport` in class `JRAbstractExporter<PdfReportConfiguration,PdfExporterConfiguration,OutputStreamExporterOutput,JRPdfExporterContext>`

    - #### initReport

          protected void initReport()

      Overrides:
        `initReport` in class `JRAbstractExporter<PdfReportConfiguration,PdfExporterConfiguration,OutputStreamExporterOutput,JRPdfExporterContext>`

    - #### exportReportToStream

          protected void exportReportToStream(java.io.OutputStream os)
                                       throws JRException

      Throws:
        `JRException`

    - #### writePageAnchor

          protected void writePageAnchor(int pageIndex)
                                  throws com.lowagie.text.DocumentException

      Throws:
        `com.lowagie.text.DocumentException`

    - #### setPageSize

          protected void setPageSize(JRPrintPage page)
                              throws JRException,
                                     com.lowagie.text.DocumentException,
                                     java.io.IOException

      Throws:
        `JRException`
        `com.lowagie.text.DocumentException`
        `java.io.IOException`

    - #### exportPage

          protected void exportPage(JRPrintPage page)
                             throws JRException,
                                    com.lowagie.text.DocumentException,
                                    java.io.IOException

      Throws:
        `JRException`
        `com.lowagie.text.DocumentException`
        `java.io.IOException`

    - #### exportElements

          protected void exportElements(java.util.Collection<JRPrintElement> elements)
                                 throws com.lowagie.text.DocumentException,
                                        java.io.IOException,
                                        JRException

      Throws:
        `com.lowagie.text.DocumentException`
        `java.io.IOException`
        `JRException`

    - #### exportLine

          protected void exportLine(JRPrintLine line)

    - #### exportRectangle

          protected void exportRectangle(JRPrintRectangle rectangle)

    - #### exportEllipse

          protected void exportEllipse(JRPrintEllipse ellipse)

    - #### exportImage

          public void exportImage(JRPrintImage printImage)
                           throws com.lowagie.text.DocumentException,
                                  java.io.IOException,
                                  JRException

      Throws:
        `com.lowagie.text.DocumentException`
        `java.io.IOException`
        `JRException`

    - #### setHyperlinkInfo

          protected void setHyperlinkInfo(com.lowagie.text.Chunk chunk,
                              JRPrintHyperlink link)

    - #### getPhrase

          protected com.lowagie.text.Phrase getPhrase(java.text.AttributedString as,
                                          java.lang.String text,
                                          JRPrintText textElement)

    - #### getChunk

          protected com.lowagie.text.Chunk getChunk(java.util.Map<java.text.AttributedCharacterIterator.Attribute,java.lang.Object> attributes,
                                        java.lang.String text,
                                        java.util.Locale locale)

    - #### hasUnderline

          protected boolean hasUnderline(java.util.Map<java.text.AttributedCharacterIterator.Attribute,java.lang.Object> textAttributes)

    - #### hasStrikethrough

          protected boolean hasStrikethrough(java.util.Map<java.text.AttributedCharacterIterator.Attribute,java.lang.Object> textAttributes)

    - #### getFont

          protected com.lowagie.text.Font getFont(java.util.Map<java.text.AttributedCharacterIterator.Attribute,java.lang.Object> attributes,
                                      java.util.Locale locale,
                                      boolean setFontLines)

      Creates a PDF font.
      Parameters:
        `attributes` - the text attributes of the font
        `locale` - the locale for which to create the font
        `setFontLines` - whether to set underline and strikethrough as font style
      Returns:
        the PDF font for the specified attributes

    - #### exportText

          public void exportText(JRPrintText text)
                          throws com.lowagie.text.DocumentException

      Throws:
        `com.lowagie.text.DocumentException`

    - #### exportBox

          protected void exportBox(JRLineBox box,
                       JRPrintElement element)

    - #### exportPen

          protected void exportPen(JRPen pen,
                       JRPrintElement element)

    - #### exportTopPen

          protected void exportTopPen(JRPen topPen,
                          JRPen leftPen,
                          JRPen rightPen,
                          JRPrintElement element)

    - #### exportLeftPen

          protected void exportLeftPen(JRPen topPen,
                           JRPen leftPen,
                           JRPen bottomPen,
                           JRPrintElement element)

    - #### exportBottomPen

          protected void exportBottomPen(JRPen leftPen,
                             JRPen bottomPen,
                             JRPen rightPen,
                             JRPrintElement element)

    - #### exportRightPen

          protected void exportRightPen(JRPen topPen,
                            JRPen bottomPen,
                            JRPen rightPen,
                            JRPrintElement element)

    - #### registerFonts

          protected static void registerFonts()

    - #### initBookmarks

          protected void initBookmarks()

    - #### addBookmark

          protected void addBookmark(int level,
                         java.lang.String title,
                         int x,
                         int y)

    - #### setAnchor

          protected void setAnchor(com.lowagie.text.Chunk chunk,
                       JRPrintAnchor anchor,
                       JRPrintElement element)

    - #### exportFrame

          public void exportFrame(JRPrintFrame frame)
                           throws com.lowagie.text.DocumentException,
                                  java.io.IOException,
                                  JRException

      Throws:
        `com.lowagie.text.DocumentException`
        `java.io.IOException`
        `JRException`

    - #### exportGenericElement

          protected void exportGenericElement(JRGenericPrintElement element)

    - #### getExporterKey

          public java.lang.String getExporterKey()

      Specified by:
        `getExporterKey` in class `JRAbstractExporter<PdfReportConfiguration,PdfExporterConfiguration,OutputStreamExporterOutput,JRPdfExporterContext>`

    - #### getExporterPropertiesPrefix

          public java.lang.String getExporterPropertiesPrefix()

      Description copied from class: `JRAbstractExporter`
      Returns the properties prefix for the current exporter.
      Specified by:
        `getExporterPropertiesPrefix` in class `JRAbstractExporter<PdfReportConfiguration,PdfExporterConfiguration,OutputStreamExporterOutput,JRPdfExporterContext>`
      Returns:
        the properties prefix for the current exporter

    - #### getIntegerPermissions

          public static int getIntegerPermissions(java.lang.String permissions)

© 2001-2010 Jaspersoft Corporation www.jaspersoft.com