Package com.openhtmltopdf.util
Class ScalingOptions
java.lang.Object
com.openhtmltopdf.util.ScalingOptions
public class ScalingOptions extends Object
POJO used when calling
ImageUtil.getScaledInstance(ScalingOptions,java.awt.image.BufferedImage).
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 Summary
Constructors Constructor Description ScalingOptions()Default scaling options, nearest neighbor interpolation, and fast downscaling.ScalingOptions(int targetWidth, int targetHeight, int type, DownscaleQuality downscalingHint, Object hint)Constructor with all options.ScalingOptions(DownscaleQuality downscalingHint, Object interpolationHint)Constructor with all options. -
Method Summary
Modifier and Type Method Description voidapplyRenderingHints(Graphics2D g2)Applies any rendering hints configured for these ScalingOptions to a Graphics2D instance before image operations are called on it.DownscaleQualitygetDownscalingHint()ObjectgetRenderingHint()protected Map<RenderingHints.Key,Object>getRenderingHints()Returns a Map of image rendering hints applicable toGraphics2D.setRenderingHints(java.util.Map).intgetTargetHeight()intgetTargetWidth()voidsetTargetDimensions(Dimension dim)voidsetTargetHeight(int targetHeight)voidsetTargetWidth(int targetWidth)booleansizeMatches(int w, int h)Returns true if the target size specified by these options matches the size provided (e.g.booleansizeMatches(Image img)Returns true if the target size specified by these options matches the size provided (e.g.
-
Constructor Details
-
ScalingOptions
Constructor with all options.- Parameters:
downscalingHint- Directs downscaling quality. One of the enumerated types ofDownscaleQualitysuch asDownscaleQuality.FAST.interpolationHint- Hint for interpolation to AWT image renderer, one of the Object constants fromRenderingHintsusingRenderingHints.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, Object hint)Constructor with all options.- Parameters:
targetWidth- Target width in pixels of image once scaledtargetHeight- Target height in pixels of image once scaledtype- Type ofBufferedImageto create for output; see docs forBufferedImage(int,int,int)downscalingHint- Directs downscaling quality. One of the enumerated types ofDownscaleQualitysuch asDownscaleQuality.FAST.hint- Hint for interpolation to AWT image renderer, one of the Object constants fromRenderingHintsusingRenderingHints.KEY_INTERPOLATION
-
-
Method Details
-
getDownscalingHint
- Returns:
- the current scaling hint
-
getRenderingHint
- Returns:
- the current rendering hint
-
applyRenderingHints
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.
-
getRenderingHints
Returns a Map of image rendering hints applicable toGraphics2D.setRenderingHints(java.util.Map). By default, this will only include the interpolation hint specified for this ScalingOptions. Other hints could be added in a overridden version in a subclass.- Returns:
- Map of rendering hints.
-
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 widthh- an image height- Returns:
- true if image dimensions already match target size
-
sizeMatches
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
-