java.lang.Object
org.sejda.sambox.rendering.PDFRenderer
Renders a PDF document to an AWT BufferedImage. This class may be overridden in order to perform
custom rendering.
- Author:
- John Hewson
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected PageDrawercreatePageDrawer(PageDrawerParameters parameters) Returns a new PageDrawer instance, using the given parameters.Return the AnnotationFilter.Get the rendering hints.booleanIndicates whether an optional content group is enabled.booleanValue indicating if the renderer is allowed to subsample images before drawing, according to image dimensions and requested scale.renderImage(int pageIndex) Returns the given page as an RGB image at 72 DPIrenderImage(int pageIndex, float scale) Returns the given page as an RGB image at the given scale.renderImage(int pageIndex, float scale, ImageType imageType) Returns the given page as an RGB or ARGB image at the given scale.renderImage(int pageIndex, float scale, ImageType imageType, RenderDestination destination) Returns the given page as an RGB or ARGB image at the given scale.renderImageWithDPI(int pageIndex, float dpi) Returns the given page as an RGB image at the given DPI.renderImageWithDPI(int pageIndex, float dpi, ImageType imageType) Returns the given page as an RGB image at the given DPI.voidrenderPageToGraphics(int pageIndex, Graphics2D graphics) Renders a given page to an AWT Graphics2D instance.voidrenderPageToGraphics(int pageIndex, Graphics2D graphics, float scale) Renders a given page to an AWT Graphics2D instance.voidrenderPageToGraphics(int pageIndex, Graphics2D graphics, float scaleX, float scaleY) Renders a given page to an AWT Graphics2D instance.voidrenderPageToGraphics(int pageIndex, Graphics2D graphics, float scaleX, float scaleY, RenderDestination destination) Renders a given page to an AWT Graphics2D instance.voidsetAnnotationsFilter(AnnotationFilter annotationsFilter) Set the AnnotationFilter.voidsetDefaultDestination(RenderDestination defaultDestination) voidsetRenderingHints(RenderingHints renderingHints) Set the rendering hints.voidsetSubsamplingAllowed(boolean subsamplingAllowed) Sets a value instructing the renderer whether it is allowed to subsample images before drawing.
-
Field Details
-
document
-
-
Constructor Details
-
PDFRenderer
Creates a new PDFRenderer.- Parameters:
document- the document to render
-
-
Method Details
-
getAnnotationsFilter
Return the AnnotationFilter.- Returns:
- the AnnotationFilter
-
setAnnotationsFilter
Set the AnnotationFilter.Allows to only render annotation accepted by the filter.
- Parameters:
annotationsFilter- the AnnotationFilter
-
isSubsamplingAllowed
public boolean isSubsamplingAllowed()Value indicating if the renderer is allowed to subsample images before drawing, according to image dimensions and requested scale.Subsampling may be faster and less memory-intensive in some cases, but it may also lead to loss of quality, especially in images with high spatial frequency.
- Returns:
- true if subsampling of images is allowed, false otherwise.
-
setSubsamplingAllowed
public void setSubsamplingAllowed(boolean subsamplingAllowed) Sets a value instructing the renderer whether it is allowed to subsample images before drawing. The subsampling frequency is determined according to image size and requested scale.Subsampling may be faster and less memory-intensive in some cases, but it may also lead to loss of quality, especially in images with high spatial frequency.
- Parameters:
subsamplingAllowed- The new value indicating if subsampling is allowed.
-
getDefaultDestination
- Returns:
- the defaultDestination
-
setDefaultDestination
- Parameters:
defaultDestination- the defaultDestination to set
-
getRenderingHints
Get the rendering hints.- Returns:
- the rendering hints or null if none are set.
-
setRenderingHints
Set the rendering hints. Use this to influence rendering quality and speed. If you don't set them yourself or pass null, PDFBox will decide at runtime depending on the destination.- Parameters:
renderingHints-
-
renderImage
Returns the given page as an RGB image at 72 DPI- Parameters:
pageIndex- the zero-based index of the page to be converted.- Returns:
- the rendered page image
- Throws:
IOException- if the PDF cannot be read
-
renderImage
Returns the given page as an RGB image at the given scale. A scale of 1 will render at 72 DPI.- Parameters:
pageIndex- the zero-based index of the page to be convertedscale- the scaling factor, where 1 = 72 DPI- Returns:
- the rendered page image
- Throws:
IOException- if the PDF cannot be read
-
renderImageWithDPI
Returns the given page as an RGB image at the given DPI.- Parameters:
pageIndex- the zero-based index of the page to be converteddpi- the DPI (dots per inch) to render at- Returns:
- the rendered page image
- Throws:
IOException- if the PDF cannot be read
-
renderImageWithDPI
public BufferedImage renderImageWithDPI(int pageIndex, float dpi, ImageType imageType) throws IOException Returns the given page as an RGB image at the given DPI.- Parameters:
pageIndex- the zero-based index of the page to be converteddpi- the DPI (dots per inch) to render atimageType- the type of image to return- Returns:
- the rendered page image
- Throws:
IOException- if the PDF cannot be read
-
renderImage
public BufferedImage renderImage(int pageIndex, float scale, ImageType imageType) throws IOException Returns the given page as an RGB or ARGB image at the given scale.- Parameters:
pageIndex- the zero-based index of the page to be convertedscale- the scaling factor, where 1 = 72 DPIimageType- the type of image to return- Returns:
- the rendered page image
- Throws:
IOException- if the PDF cannot be read
-
renderImage
public BufferedImage renderImage(int pageIndex, float scale, ImageType imageType, RenderDestination destination) throws IOException Returns the given page as an RGB or ARGB image at the given scale.- Parameters:
pageIndex- the zero-based index of the page to be convertedscale- the scaling factor, where 1 = 72 DPIimageType- the type of image to returndestination- controlling visibility of optional content groups- Returns:
- the rendered page image
- Throws:
IOException- if the PDF cannot be read
-
renderPageToGraphics
Renders a given page to an AWT Graphics2D instance.- Parameters:
pageIndex- the zero-based index of the page to be convertedgraphics- the Graphics2D on which to draw the page- Throws:
IOException- if the PDF cannot be read
-
renderPageToGraphics
public void renderPageToGraphics(int pageIndex, Graphics2D graphics, float scale) throws IOException Renders a given page to an AWT Graphics2D instance.- Parameters:
pageIndex- the zero-based index of the page to be convertedgraphics- the Graphics2D on which to draw the pagescale- the scale to draw the page at- Throws:
IOException- if the PDF cannot be read
-
renderPageToGraphics
public void renderPageToGraphics(int pageIndex, Graphics2D graphics, float scaleX, float scaleY) throws IOException Renders a given page to an AWT Graphics2D instance.- Parameters:
pageIndex- the zero-based index of the page to be convertedgraphics- the Graphics2D on which to draw the pagescaleX- the scale to draw the page at for the x-axisscaleY- the scale to draw the page at for the y-axis- Throws:
IOException- if the PDF cannot be read
-
renderPageToGraphics
public void renderPageToGraphics(int pageIndex, Graphics2D graphics, float scaleX, float scaleY, RenderDestination destination) throws IOException Renders a given page to an AWT Graphics2D instance.Known problems:
- rendering of PDF files with transparencies is not supported on Ubuntu, see PDFBOX-4581 and JDK-6689349. Rendering will not abort, but the pages will be rendered incorrectly.
- Clipping the Graphics2D will not work properly, see PDFBOX-4583.
renderImagemethods.- Parameters:
pageIndex- the zero-based index of the page to be convertedgraphics- the Graphics2D on which to draw the pagescaleX- the scale to draw the page at for the x-axis, where 1 = 72 DPIscaleY- the scale to draw the page at for the y-axis, where 1 = 72 DPIdestination- controlling visibility of optional content groups- Throws:
IOException- if the PDF cannot be read
-
isGroupEnabled
Indicates whether an optional content group is enabled.- Parameters:
group- the group- Returns:
- true if the group is enabled
-
createPageDrawer
Returns a new PageDrawer instance, using the given parameters. May be overridden.- Throws:
IOException
-