Class ScalingOptions


  • public class ScalingOptions
    extends java.lang.Object
    POJO used when calling org.xhtmlrenderer.util.ImageUtil#getScaledInstance(ScalingOptions,java.awt.Image). Encapsulates a set of parameters related to scaling quality and output. Values are final once constructed, except for target width and height, which can be change and the options instance reused. There is a default constructor for average quality and performance.
    • Constructor Detail

      • ScalingOptions

        public ScalingOptions​(DownscaleQuality downscalingHint,
                              java.lang.Object interpolationHint)
        Constructor with all options.
        Parameters:
        downscalingHint - Directs downscaling quality. One of the enumerated types of DownscaleQuality such as org.xhtmlrenderer.util.ImageUtil.DOWNSCALE_FAST.
        interpolationHint - Hint for interpolation to AWT image renderer, one of the Object constants from RenderingHints using java.awt.RenderingHints.KEY_INTERPOLATION
      • ScalingOptions

        public ScalingOptions()
        Default scaling options, nearest neighbor interpolation, and fast downscaling. This is fast, but not great quality.
      • ScalingOptions

        public ScalingOptions​(int targetWidth,
                              int targetHeight,
                              int type,
                              DownscaleQuality downscalingHint,
                              java.lang.Object hint)
        Constructor with all options.
        Parameters:
        targetWidth - Target width in pixels of image once scaled
        targetHeight - Target height in pixels of image once scaled
        type - Type of BufferedImage to create for output; see docs for BufferedImage(int,int,int)
        downscalingHint - Directs downscaling quality. One of the enumerated types of DownscaleQuality such as org.xhtmlrenderer.util.ImageUtil.DOWNSCALE_FAST.
        hint - Hint for interpolation to AWT image renderer, one of the Object constants from RenderingHints using java.awt.RenderingHints.KEY_INTERPOLATION
    • Method Detail

      • getDownscalingHint

        public DownscaleQuality getDownscalingHint()
        Returns:
        ScalingOptions#ScalingOptions(int,DownscaleQuality,Object) docs.
      • getRenderingHint

        public java.lang.Object getRenderingHint()
        Returns:
        ScalingOptions#ScalingOptions(int,DownscaleQuality,Object) docs.
      • applyRenderingHints

        public void applyRenderingHints​(java.awt.Graphics2D g2)
        Applies any rendering hints configured for these ScalingOptions to a Graphics2D instance before image operations are called on it. These might be
        Parameters:
        g2 - A Graphics2D instance on which scaled images will be rendered.
      • sizeMatches

        public boolean sizeMatches​(int w,
                                   int h)
        Returns true if the target size specified by these options matches the size provided (e.g. image is already at target size).
        Parameters:
        w - an image width
        h - an image height
        Returns:
        true if image dimensions already match target size
      • sizeMatches

        public boolean sizeMatches​(java.awt.Image img)
        Returns true if the target size specified by these options matches the size provided (e.g. image is already at target size).
        Parameters:
        img -
        Returns:
        true if image dimensions already match target size
      • getTargetWidth

        public int getTargetWidth()
      • getTargetHeight

        public int getTargetHeight()
      • setTargetWidth

        public void setTargetWidth​(int targetWidth)
      • setTargetHeight

        public void setTargetHeight​(int targetHeight)
      • setTargetDimensions

        public void setTargetDimensions​(java.awt.Dimension dim)