Class JRBaseImage
- java.lang.Object
-
- net.sf.jasperreports.engine.base.JRBaseElement
-
- net.sf.jasperreports.engine.base.JRBaseGraphicElement
-
- net.sf.jasperreports.engine.base.JRBaseImage
-
- All Implemented Interfaces:
Serializable
,Cloneable
,JRChangeEventsSupport
,JRAnchor
,JRBoxContainer
,JRChild
,JRCloneable
,JRCommonElement
,JRCommonGraphicElement
,JRCommonImage
,JRElement
,JREvaluation
,JRGraphicElement
,JRHyperlink
,JRIdentifiable
,JRImage
,JRImageAlignment
,JRPenContainer
,JRPropertiesHolder
,JRStyleContainer
,JRVisitable
public class JRBaseImage extends JRBaseGraphicElement implements JRImage
The actual implementation of a graphic element representing an image.- Author:
- Teodor Danciu (teodord@users.sourceforge.net)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected JRExpression
anchorNameExpression
protected int
bookmarkLevel
The bookmark level for the anchor associated with this image.protected JRExpression
bookmarkLevelExpression
protected String
evaluationGroup
protected EvaluationTimeEnum
evaluationTime
protected JRExpression
expression
protected HorizontalImageAlignEnum
horizontalImageAlign
protected JRExpression
hyperlinkAnchorExpression
protected JRExpression
hyperlinkPageExpression
protected JRExpression
hyperlinkReferenceExpression
protected JRExpression
hyperlinkWhenExpression
protected boolean
isLazy
protected Boolean
isUsingCache
protected JRLineBox
lineBox
protected String
linkTarget
protected String
linkType
protected OnErrorTypeEnum
onErrorType
static String
PROPERTY_LAZY
static String
PROPERTY_ON_ERROR_TYPE
static String
PROPERTY_USING_CACHE
protected RotationEnum
rotation
protected ScaleImageEnum
scaleImage
protected VerticalImageAlignEnum
verticalImageAlign
-
Fields inherited from class net.sf.jasperreports.engine.base.JRBaseGraphicElement
fill, linePen
-
Fields inherited from class net.sf.jasperreports.engine.base.JRBaseElement
backcolor, defaultStyleProvider, elementGroup, forecolor, height, isPrintInFirstWholeBand, isPrintRepeatedValues, isPrintWhenDetailOverflows, isRemoveLineWhenBlank, key, mode, parentStyle, parentStyleNameReference, positionType, printWhenExpression, printWhenGroupChanges, PROPERTY_POSITION_TYPE, PROPERTY_PRINT_IN_FIRST_WHOLE_BAND, PROPERTY_PRINT_REPEATED_VALUES, PROPERTY_PRINT_WHEN_DETAIL_OVERFLOWS, PROPERTY_REMOVE_LINE_WHEN_BLANK, PROPERTY_STRETCH_TYPE, PROPERTY_WIDTH, PROPERTY_X, stretchType, styleExpression, uuid, width, x, y
-
Fields inherited from interface net.sf.jasperreports.engine.JRAnchor
NO_BOOKMARK
-
Fields inherited from interface net.sf.jasperreports.engine.JRElement
PROPERTY_ELEMENT_TEMPLATE_POPULATE_STYLE
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
JRBaseImage(JRImage image, JRBaseObjectFactory factory)
protected JRBaseImage() { super(); } /** Initializes properties that are specific to images.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Object
clone()
void
collectExpressions(JRExpressionCollector collector)
JRExpression
getAnchorNameExpression()
Returns an expression whose value represents the anchor name.int
getBookmarkLevel()
Returns the level of the bookmark corresponding to the anchor.JRExpression
getBookmarkLevelExpression()
Returns an expression whose value represents the bookmark level (starting from 1) corresponding to this anchor.Float
getDefaultLineWidth()
String
getEvaluationGroup()
Gets the evaluation group for this text field.EvaluationTimeEnum
getEvaluationTime()
Gets the evaluation time for this text field.JRExpression
getExpression()
HorizontalImageAlignEnum
getHorizontalImageAlign()
Gets the image horizontal alignment.JRExpression
getHyperlinkAnchorExpression()
Returns the expression whose value represents the anchor.JRExpression
getHyperlinkPageExpression()
Returns an integer representing the page index of the link.JRHyperlinkParameter[]
getHyperlinkParameters()
Returns the list of hyperlink parameters.JRExpression
getHyperlinkReferenceExpression()
Returns the expression whose value represents the hyperlink reference.HyperlinkTargetEnum
getHyperlinkTarget()
Retrieves the hyperlink target for the element.JRExpression
getHyperlinkTooltipExpression()
Returns the expression which will generate the hyperlink tooltip.HyperlinkTypeEnum
getHyperlinkType()
Retrieves the hyperlink type for the element.JRExpression
getHyperlinkWhenExpression()
Returns the expression that is evaluated in order to decide if the hyperlink should be displayed.JRLineBox
getLineBox()
String
getLinkTarget()
Returns the hyperlink target name.String
getLinkType()
Returns the hyperlink type.ModeEnum
getMode()
Returns the element transparency mode.OnErrorTypeEnum
getOnErrorType()
Indicates how the engine will treat a missing image.HorizontalImageAlignEnum
getOwnHorizontalImageAlign()
RotationEnum
getOwnRotation()
Gets the image own rotation.ScaleImageEnum
getOwnScaleImage()
Gets the image own scale type.VerticalImageAlignEnum
getOwnVerticalImageAlign()
RotationEnum
getRotation()
Gets the image rotation.ScaleImageEnum
getScaleImage()
Gets the image scale type.Boolean
getUsingCache()
Indicates if the engine is loading the current image from cache.VerticalImageAlignEnum
getVerticalImageAlign()
Gets the image vertical alignment.boolean
isLazy()
Indicates if the images will be loaded lazily or not.void
setHorizontalImageAlign(HorizontalImageAlignEnum horizontalImageAlign)
Sets the image horizontal alignment.void
setLazy(boolean isLazy)
Gives control over when the images are retrieved from their specified location.void
setOnErrorType(OnErrorTypeEnum onErrorType)
Specifies how the engine should treat a missing image.void
setRotation(RotationEnum rotation)
Sets the image rotation.void
setScaleImage(ScaleImageEnum scaleImage)
Sets the image scale type.void
setUsingCache(Boolean isUsingCache)
Specifies if the engine should be loading the current image from cache.void
setVerticalImageAlign(VerticalImageAlignEnum verticalImageAlign)
Gets the image vertical alignment.void
visit(JRVisitor visitor)
-
Methods inherited from class net.sf.jasperreports.engine.base.JRBaseGraphicElement
getDefaultLineColor, getFill, getLinePen, getOwnFill, setFill
-
Methods inherited from class net.sf.jasperreports.engine.base.JRBaseElement
clone, clone, getBackcolor, getBaseStyle, getDefaultStyleProvider, getElementGroup, getEventSupport, getForecolor, getHeight, getKey, getOwnBackcolor, getOwnForecolor, getOwnMode, getParentProperties, getPositionType, getPrintWhenExpression, getPrintWhenGroupChanges, getPropertiesMap, getPropertyExpressions, getStretchType, getStyle, getStyleExpression, getStyleNameReference, getStyleResolver, getUUID, getWidth, getX, getY, hasProperties, isPrintInFirstWholeBand, isPrintRepeatedValues, isPrintWhenDetailOverflows, isRemoveLineWhenBlank, setBackcolor, setForecolor, setMode, setPositionType, setPrintInFirstWholeBand, setPrintRepeatedValues, setPrintWhenDetailOverflows, setRemoveLineWhenBlank, setStretchType, setUUID, setWidth, setX
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.sf.jasperreports.engine.JRBoxContainer
getDefaultLineColor
-
Methods inherited from interface net.sf.jasperreports.engine.JRCommonElement
getBackcolor, getForecolor, getHeight, getKey, getOwnBackcolor, getOwnForecolor, getOwnMode, getWidth, setBackcolor, setForecolor, setMode
-
Methods inherited from interface net.sf.jasperreports.engine.JRCommonGraphicElement
getFill, getLinePen, getOwnFill, setFill
-
Methods inherited from interface net.sf.jasperreports.engine.JRElement
clone, getElementGroup, getPositionType, getPrintWhenExpression, getPrintWhenGroupChanges, getPropertyExpressions, getStretchType, getStyleExpression, getX, getY, isPrintInFirstWholeBand, isPrintRepeatedValues, isPrintWhenDetailOverflows, isRemoveLineWhenBlank, setPositionType, setPrintInFirstWholeBand, setPrintRepeatedValues, setPrintWhenDetailOverflows, setRemoveLineWhenBlank, setStretchType, setWidth, setX
-
Methods inherited from interface net.sf.jasperreports.engine.JRIdentifiable
getUUID
-
Methods inherited from interface net.sf.jasperreports.engine.JRPenContainer
getDefaultLineColor
-
Methods inherited from interface net.sf.jasperreports.engine.JRPropertiesHolder
getParentProperties, getPropertiesMap, hasProperties
-
Methods inherited from interface net.sf.jasperreports.engine.JRStyleContainer
getDefaultStyleProvider, getStyle, getStyleName, getStyleNameReference
-
-
-
-
Field Detail
-
PROPERTY_LAZY
public static final String PROPERTY_LAZY
- See Also:
- Constant Field Values
-
PROPERTY_ON_ERROR_TYPE
public static final String PROPERTY_ON_ERROR_TYPE
- See Also:
- Constant Field Values
-
PROPERTY_USING_CACHE
public static final String PROPERTY_USING_CACHE
- See Also:
- Constant Field Values
-
scaleImage
protected ScaleImageEnum scaleImage
-
rotation
protected RotationEnum rotation
-
horizontalImageAlign
protected HorizontalImageAlignEnum horizontalImageAlign
-
verticalImageAlign
protected VerticalImageAlignEnum verticalImageAlign
-
isUsingCache
protected Boolean isUsingCache
-
isLazy
protected boolean isLazy
-
onErrorType
protected OnErrorTypeEnum onErrorType
-
evaluationTime
protected EvaluationTimeEnum evaluationTime
-
linkType
protected String linkType
-
linkTarget
protected String linkTarget
-
lineBox
protected JRLineBox lineBox
-
evaluationGroup
protected String evaluationGroup
-
expression
protected JRExpression expression
-
anchorNameExpression
protected JRExpression anchorNameExpression
-
bookmarkLevelExpression
protected JRExpression bookmarkLevelExpression
-
hyperlinkReferenceExpression
protected JRExpression hyperlinkReferenceExpression
-
hyperlinkWhenExpression
protected JRExpression hyperlinkWhenExpression
-
hyperlinkAnchorExpression
protected JRExpression hyperlinkAnchorExpression
-
hyperlinkPageExpression
protected JRExpression hyperlinkPageExpression
-
bookmarkLevel
protected int bookmarkLevel
The bookmark level for the anchor associated with this image.- See Also:
JRAnchor.getBookmarkLevel()
-
-
Constructor Detail
-
JRBaseImage
protected JRBaseImage(JRImage image, JRBaseObjectFactory factory)
protected JRBaseImage() { super(); } /** Initializes properties that are specific to images. Common properties are initialized by its parent constructors.- Parameters:
image
- an element whose properties are copied to this element. Usually it is aJRDesignImage
that must be transformed into an JRBaseImage at compile time.factory
- a factory used in the compile process
-
-
Method Detail
-
getMode
public ModeEnum getMode()
Description copied from interface:JRCommonElement
Returns the element transparency mode. The default value depends on the type of the report element. Graphic elements like rectangles and lines are opaque by default, but the images are transparent. Both static texts and text fields are transparent by default, and so are the subreport elements.- Specified by:
getMode
in interfaceJRCommonElement
- Overrides:
getMode
in classJRBaseElement
-
getScaleImage
public ScaleImageEnum getScaleImage()
Description copied from interface:JRCommonImage
Gets the image scale type.- Specified by:
getScaleImage
in interfaceJRCommonImage
- Returns:
- a value representing one of the scale type constants in
ScaleImageEnum
-
getOwnScaleImage
public ScaleImageEnum getOwnScaleImage()
Description copied from interface:JRCommonImage
Gets the image own scale type.- Specified by:
getOwnScaleImage
in interfaceJRCommonImage
- Returns:
- a value representing one of the scale type constants in
ScaleImageEnum
-
setScaleImage
public void setScaleImage(ScaleImageEnum scaleImage)
Description copied from interface:JRCommonImage
Sets the image scale type.- Specified by:
setScaleImage
in interfaceJRCommonImage
- Parameters:
scaleImage
- a value representing one of the scale type constants inScaleImageEnum
-
getRotation
public RotationEnum getRotation()
Description copied from interface:JRCommonImage
Gets the image rotation.- Specified by:
getRotation
in interfaceJRCommonImage
- Returns:
- a value representing one of the image rotation constants in
RotationEnum
-
getOwnRotation
public RotationEnum getOwnRotation()
Description copied from interface:JRCommonImage
Gets the image own rotation.- Specified by:
getOwnRotation
in interfaceJRCommonImage
- Returns:
- a value representing one of the image rotation constants in
RotationEnum
-
setRotation
public void setRotation(RotationEnum rotation)
Description copied from interface:JRCommonImage
Sets the image rotation.- Specified by:
setRotation
in interfaceJRCommonImage
- Parameters:
rotation
- a value representing one of the image rotation constants inRotationEnum
-
getHorizontalImageAlign
public HorizontalImageAlignEnum getHorizontalImageAlign()
Description copied from interface:JRImageAlignment
Gets the image horizontal alignment.- Specified by:
getHorizontalImageAlign
in interfaceJRImageAlignment
- Returns:
- a value representing one of the horizontal image alignment constants in
HorizontalImageAlignEnum
-
getOwnHorizontalImageAlign
public HorizontalImageAlignEnum getOwnHorizontalImageAlign()
- Specified by:
getOwnHorizontalImageAlign
in interfaceJRImageAlignment
-
setHorizontalImageAlign
public void setHorizontalImageAlign(HorizontalImageAlignEnum horizontalImageAlign)
Description copied from interface:JRImageAlignment
Sets the image horizontal alignment.- Specified by:
setHorizontalImageAlign
in interfaceJRImageAlignment
- Parameters:
horizontalImageAlign
- a value representing one of the horizontal image alignment constants inHorizontalImageAlignEnum
-
getVerticalImageAlign
public VerticalImageAlignEnum getVerticalImageAlign()
Description copied from interface:JRImageAlignment
Gets the image vertical alignment.- Specified by:
getVerticalImageAlign
in interfaceJRImageAlignment
- Returns:
- a value representing one of the vertical image alignment constants in
VerticalImageAlignEnum
-
getOwnVerticalImageAlign
public VerticalImageAlignEnum getOwnVerticalImageAlign()
- Specified by:
getOwnVerticalImageAlign
in interfaceJRImageAlignment
-
setVerticalImageAlign
public void setVerticalImageAlign(VerticalImageAlignEnum verticalImageAlign)
Description copied from interface:JRImageAlignment
Gets the image vertical alignment.- Specified by:
setVerticalImageAlign
in interfaceJRImageAlignment
- Parameters:
verticalImageAlign
- a value representing one of the vertical image alignment constants inVerticalImageAlignEnum
-
getUsingCache
public Boolean getUsingCache()
Description copied from interface:JRImage
Indicates if the engine is loading the current image from cache. Implementations of this method return the actual value for the internal flag that was explicitly set on this image element.- Specified by:
getUsingCache
in interfaceJRImage
- Returns:
- Boolean.TRUE if the image should be loaded from cache, Boolean.FALSE otherwise or null in case the flag was never explicitly set on this image element
-
setUsingCache
public void setUsingCache(Boolean isUsingCache)
Description copied from interface:JRImage
Specifies if the engine should be loading the current image from cache. If set to Boolean.TRUE, the reporting engine will try to recognize previously loaded images using their specified source. For example, it will recognize an image if the image source is a file name that it has already loaded, or if it is the same URL.If set to null, the engine will rely on some default value which depends on the type of the image expression. The cache is turned on by default only for images that have java.lang.String objects in their expressions.
- Specified by:
setUsingCache
in interfaceJRImage
-
isLazy
public boolean isLazy()
Description copied from interface:JRImage
Indicates if the images will be loaded lazily or not.
-
setLazy
public void setLazy(boolean isLazy)
Description copied from interface:JRImage
Gives control over when the images are retrieved from their specified location. If set to true, the image is loaded from the specified location only when the document is viewed or exported to other formats. Otherwise it is loaded during the report filling process and stored in the resulting document.
-
getOnErrorType
public OnErrorTypeEnum getOnErrorType()
Description copied from interface:JRImage
Indicates how the engine will treat a missing image.- Specified by:
getOnErrorType
in interfaceJRImage
- Returns:
- a value representing one of the missing image handling constants in
OnErrorTypeEnum
-
setOnErrorType
public void setOnErrorType(OnErrorTypeEnum onErrorType)
Description copied from interface:JRImage
Specifies how the engine should treat a missing image.- Specified by:
setOnErrorType
in interfaceJRImage
- Parameters:
onErrorType
- a value representing one of the missing image handling constants inOnErrorTypeEnum
-
getEvaluationTime
public EvaluationTimeEnum getEvaluationTime()
Description copied from interface:JREvaluation
Gets the evaluation time for this text field.- Specified by:
getEvaluationTime
in interfaceJREvaluation
- Returns:
- one of the evaluation time constants in
JRExpression
-
getLineBox
public JRLineBox getLineBox()
- Specified by:
getLineBox
in interfaceJRBoxContainer
-
getHyperlinkType
public HyperlinkTypeEnum getHyperlinkType()
Description copied from interface:JRHyperlink
Retrieves the hyperlink type for the element.The actual hyperlink type is determined by
getLinkType()
. This method can is used to determine whether the hyperlink type is one of the built-in types or a custom type. When hyperlink is of custom type,CUSTOM
is returned.- Specified by:
getHyperlinkType
in interfaceJRHyperlink
- Returns:
- one of the hyperlink type constants
- See Also:
JRHyperlink.getLinkType()
-
getHyperlinkTarget
public HyperlinkTargetEnum getHyperlinkTarget()
Description copied from interface:JRHyperlink
Retrieves the hyperlink target for the element.The actual hyperlink target is determined by
getLinkTarget()
. This method can is used to determine whether the hyperlink target is one of the built-in target names or a custom one. When hyperlink has a custom target name,HyperlinkTargetEnum.CUSTOM
is returned.- Specified by:
getHyperlinkTarget
in interfaceJRHyperlink
- Returns:
- one of the hyperlink target constants
- See Also:
JRHyperlink.getLinkTarget()
-
getEvaluationGroup
public String getEvaluationGroup()
Description copied from interface:JREvaluation
Gets the evaluation group for this text field. Used only when evaluation time is group.- Specified by:
getEvaluationGroup
in interfaceJREvaluation
- See Also:
EvaluationTimeEnum.GROUP
-
getExpression
public JRExpression getExpression()
- Specified by:
getExpression
in interfaceJRImage
-
getAnchorNameExpression
public JRExpression getAnchorNameExpression()
Description copied from interface:JRAnchor
Returns an expression whose value represents the anchor name.- Specified by:
getAnchorNameExpression
in interfaceJRAnchor
-
getBookmarkLevelExpression
public JRExpression getBookmarkLevelExpression()
Description copied from interface:JRAnchor
Returns an expression whose value represents the bookmark level (starting from 1) corresponding to this anchor. When the expression is set and its value is not null, it will override the value of the bookmarkLevel attribute.- Specified by:
getBookmarkLevelExpression
in interfaceJRAnchor
-
getHyperlinkReferenceExpression
public JRExpression getHyperlinkReferenceExpression()
Description copied from interface:JRHyperlink
Returns the expression whose value represents the hyperlink reference. It is only used when the hyperlink type is reference or anchor- Specified by:
getHyperlinkReferenceExpression
in interfaceJRHyperlink
-
getHyperlinkWhenExpression
public JRExpression getHyperlinkWhenExpression()
Description copied from interface:JRHyperlink
Returns the expression that is evaluated in order to decide if the hyperlink should be displayed. This expression always returns a boolean value.- Specified by:
getHyperlinkWhenExpression
in interfaceJRHyperlink
-
getHyperlinkAnchorExpression
public JRExpression getHyperlinkAnchorExpression()
Description copied from interface:JRHyperlink
Returns the expression whose value represents the anchor. It is only used when the hyperlink type is anchor.- Specified by:
getHyperlinkAnchorExpression
in interfaceJRHyperlink
-
getHyperlinkPageExpression
public JRExpression getHyperlinkPageExpression()
Description copied from interface:JRHyperlink
Returns an integer representing the page index of the link. It is only used when the hyperlink type is page. If the expression does not evaluate to an integer, an exception will be thrown.- Specified by:
getHyperlinkPageExpression
in interfaceJRHyperlink
-
collectExpressions
public void collectExpressions(JRExpressionCollector collector)
- Specified by:
collectExpressions
in interfaceJRElement
-
visit
public void visit(JRVisitor visitor)
- Specified by:
visit
in interfaceJRVisitable
-
getBookmarkLevel
public int getBookmarkLevel()
Description copied from interface:JRAnchor
Returns the level of the bookmark corresponding to the anchor.- Specified by:
getBookmarkLevel
in interfaceJRAnchor
- Returns:
- the level of the bookmark corresponding to the anchor (starting from 1)
or
NO_BOOKMARK
if no bookmark should be created for this anchor
-
getDefaultLineWidth
public Float getDefaultLineWidth()
- Specified by:
getDefaultLineWidth
in interfaceJRPenContainer
- Overrides:
getDefaultLineWidth
in classJRBaseGraphicElement
-
getLinkType
public String getLinkType()
Description copied from interface:JRHyperlink
Returns the hyperlink type.The type can be one of the built-in types (Reference, LocalAnchor, LocalPage, RemoteAnchor, RemotePage), or can be an arbitrary type.
- Specified by:
getLinkType
in interfaceJRHyperlink
- Returns:
- the hyperlink type
-
getLinkTarget
public String getLinkTarget()
Description copied from interface:JRHyperlink
Returns the hyperlink target name.The type can be one of the built-in names (Self, Blank, Top, Parent), or can be an arbitrary name.
- Specified by:
getLinkTarget
in interfaceJRHyperlink
- Returns:
- the hyperlink target name
-
getHyperlinkParameters
public JRHyperlinkParameter[] getHyperlinkParameters()
Description copied from interface:JRHyperlink
Returns the list of hyperlink parameters.The parameters can be used by custom hyperlink types to generate dynamic links.
- Specified by:
getHyperlinkParameters
in interfaceJRHyperlink
- Returns:
- the list of hyperlink parameters
-
getHyperlinkTooltipExpression
public JRExpression getHyperlinkTooltipExpression()
Description copied from interface:JRHyperlink
Returns the expression which will generate the hyperlink tooltip.- Specified by:
getHyperlinkTooltipExpression
in interfaceJRHyperlink
- Returns:
- the expression which will generate the hyperlink tooltip
-
clone
public Object clone()
- Specified by:
clone
in interfaceJRCloneable
- Overrides:
clone
in classJRBaseGraphicElement
-
-