public class Captcha extends Image
Captcha requires an implementation of an engine (CaptchaEngine
).
The default engine is based on JHLabs and available in ZK PE and ZK EE.
Image.ExtraCtrl
AbstractComponent.Children
_zclass
APPLICATION_SCOPE, COMPONENT_SCOPE, DESKTOP_SCOPE, PAGE_SCOPE, REQUEST_SCOPE, SESSION_SCOPE, SPACE_SCOPE
AFTER_CHILD_ADDED, AFTER_CHILD_REMOVED, AFTER_PAGE_ATTACHED, AFTER_PAGE_DETACHED, CE_BUSY_IGNORE, CE_DUPLICATE_IGNORE, CE_IMPORTANT, CE_NON_DEFERRABLE, CE_REPEAT_IGNORE
Constructor and Description |
---|
Captcha() |
Modifier and Type | Method and Description |
---|---|
void |
addFont(java.awt.Font font)
Add fonts into fonts list.
|
java.lang.String |
getBgColor()
Get the background color of the captcha box (in string as #RRGGBB).
|
int |
getBgRGB()
Get the background color in int array (0: red, 1: green, 2:blue).
|
CaptchaEngine |
getCaptchaEngine()
Get the captcha engine.
|
java.awt.Font[] |
getDefaultFonts()
Gets the default font list.
|
java.lang.String |
getExclude()
Get exclude characters.
|
java.awt.Font |
getFont(int j)
Get nth Font.
|
java.lang.String |
getFontColor()
Gets font color.
|
int |
getFontRGB()
Get the font color in int array (0: red, 1: green, 2:blue).
|
java.util.List<java.awt.Font> |
getFonts()
Gets fonts list, default provide two fonts.
|
int |
getIntHeight()
Get the captcha int height in pixel; to be used by the derived subclass.
|
int |
getIntWidth()
Get the captcha int width in pixel; to be used by the derived subclass.
|
int |
getLength()
Get length of the autogenerated text value; default to 5.
|
java.lang.String |
getValue()
Returns the text value of this captcha.
|
boolean |
isBorder()
Deprecated.
As of release 5.0.4, use
isFrame() instead. |
boolean |
isFrame()
Returns whether generate border.
|
boolean |
isNoise()
Returns whether generate noise; default to false.
|
protected CaptchaEngine |
newCaptchaEngine()
Instantiates the default captcha engine.
|
java.lang.String |
randomValue()
Regenerates new captcha text value and redraw.
|
void |
setBgColor(java.lang.String color)
Set the background color of the chart.
|
void |
setBorder(boolean b)
Deprecated.
As of release 5.0.4, use
setFrame(boolean) instead. |
void |
setEngine(CaptchaEngine engine)
Set the captcha engine.
|
void |
setEngine(java.lang.String clsnm)
Sets the captcha engine by use of a class name.
|
void |
setExclude(java.lang.String exclude)
Set exclude characters that will not be generated.
|
void |
setFontColor(java.lang.String color)
Set font color.
|
void |
setFrame(boolean frame)
Sets whether generate border.
|
void |
setHeight(java.lang.String h)
Override super class to prepare the int height.
|
void |
setHflex(java.lang.String flex)
Overrides the method in HtmlBasedComponent, not to check using hflex and width at the same time
|
void |
setLength(int len)
Set length of the autogenerated text value; default to 5.
|
void |
setNoise(boolean b)
Sets whether generate noise; default to false.
|
void |
setValue(java.lang.String text)
Sets the text value to be shown as the distortion captcha.
|
void |
setVflex(java.lang.String flex)
Overrides the method in HtmlBasedComponent, not to check using vflex and height at the same time
|
void |
setWidth(java.lang.String w)
Override super class to prepare the int width.
|
protected void |
smartDrawCaptcha()
mark a draw flag to inform that this Chart needs update.
|
getAlign, getBorder, getContent, getExtraCtrl, getHover, getHspace, getSrc, getVspace, isChildable, renderProperties, setAlign, setBorder, setContent, setContent, setHover, setHoverContent, setHoverContent, setHspace, setSrc, setVspace
clone, getContext, getCtrlKeys, getPopup, getPropertyAccess, getTooltip, setContext, setContext, setContextAttributes, setCtrlKeys, setPopup, setPopup, setPopupAttributes, setTooltip, setTooltip, setTooltipAttributes
focus, getAction, getDraggable, getDroppable, getHeight, getHflex, getLeft, getRenderdefer, getSclass, getStyle, getTabindex, getTabindexInteger, getTooltiptext, getTop, getVflex, getWidth, getZclass, getZindex, getZIndex, service, setAction, setClass, setDraggable, setDroppable, setFocus, setHeight0, setHeightDirectly, setHflex0, setHflexDirectly, setLeft, setLeftDirectly, setRenderdefer, setSclass, setStyle, setTabindex, setTabindex, setTooltiptext, setTop, setTopDirectly, setVflex0, setVflexDirectly, setWidth0, setWidthDirectly, setZclass, setZindex, setZIndex, setZIndexDirectly
addAnnotation, addAnnotation, addCallback, addClientEvent, addEventHandler, addEventListener, addEventListener, addForward, addForward, addForward, addForward, addMoved, addRedrawCallback, addScopeListener, addShadowRoot, addShadowRootBefore, addSharedEventHandlerMap, appendChild, applyProperties, beforeChildAdded, beforeChildRemoved, beforeParentChanged, detach, didActivate, didActivate, didDeserialize, didDeserialize, disableBindingAnnotation, disableClientUpdate, enableBindingAnnotation, equals, getAnnotatedProperties, getAnnotatedPropertiesBy, getAnnotation, getAnnotation, getAnnotations, getAnnotations, getAnnotations, getAttribute, getAttribute, getAttribute, getAttributeOrFellow, getAttributes, getAttributes, getAuService, getAutag, getCallback, getChildren, getClientAttribute, getClientDataAttribute, getClientEvents, getDefaultMold, getDefinition, getDesktop, getEventHandler, getEventHandlerNames, getEventListenerMap, getEventListeners, getFellow, getFellow, getFellowIfAny, getFellowIfAny, getFellows, getFirstChild, getId, getLastChild, getListenerIterator, getMold, getNextSibling, getPage, getParent, getPreviousSibling, getRedrawCallback, getRoot, getShadowFellowIfAny, getShadowRoots, getShadowVariable, getShadowVariable, getShadowVariable0, getSpaceOwner, getSpecialRendererOutput, getStubonly, getSubBindingAnnotationCount, getTemplate, getTemplateNames, getUuid, getWidgetAttribute, getWidgetAttributeNames, getWidgetClass, getWidgetListener, getWidgetListenerNames, getWidgetOverride, getWidgetOverrideNames, hasAttribute, hasAttribute, hasAttribute, hasAttributeOrFellow, hasBindingAnnotation, hasFellow, hasFellow, hasSubBindingAnnotation, insertBefore, invalidate, isInvalidated, isListenerAvailable, isVisible, onChildAdded, onChildRemoved, onPageAttached, onPageDetached, onWrongValue, query, queryAll, redraw, redrawChildren, removeAttribute, removeAttribute, removeAttribute, removeCallback, removeChild, removeEventListener, removeForward, removeForward, removeRedrawCallback, removeScopeListener, removeShadowRoot, render, render, render, replace, response, response, response, service, sessionDidActivate, sessionWillPassivate, setAttribute, setAttribute, setAttribute, setAuService, setAutag, setClientAttribute, setClientDataAttribute, setDefinition, setDefinition, setId, setMold, setPage, setPageBefore, setParent, setStubonly, setStubonly, setSubBindingAnnotationCount, setTemplate, setVisible, setVisibleDirectly, setWidgetAttribute, setWidgetClass, setWidgetListener, setWidgetOverride, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdateWidgetListener, smartUpdateWidgetOverride, toString, updateByClient, updateSubBindingAnnotationCount, willPassivate, willPassivate, willSerialize, willSerialize
public java.util.List<java.awt.Font> getFonts()
public java.awt.Font[] getDefaultFonts()
public java.awt.Font getFont(int j)
public void addFont(java.awt.Font font)
public void setFontColor(java.lang.String color)
public java.lang.String getFontColor()
public int getFontRGB()
public void setBgColor(java.lang.String color)
color
- in #RRGGBB format (hexadecimal).public java.lang.String getBgColor()
public int getBgRGB()
public void setWidth(java.lang.String w)
setWidth
in class HtmlBasedComponent
HtmlBasedComponent.setWidthDirectly(java.lang.String)
,
AbstractComponent.disableClientUpdate(boolean)
public void setHflex(java.lang.String flex)
setHflex
in class HtmlBasedComponent
flex
- horizontal flex hint of this component.HtmlBasedComponent.setVflex(java.lang.String)
,
HtmlBasedComponent.getHflex()
public int getIntWidth()
public void setHeight(java.lang.String h)
setHeight
in class HtmlBasedComponent
public void setVflex(java.lang.String flex)
setVflex
in class HtmlBasedComponent
flex
- the vertical flex hint.HtmlBasedComponent.setHflex(java.lang.String)
,
HtmlBasedComponent.getVflex()
public int getIntHeight()
public java.lang.String getValue()
Default: an empty string.
Deriving class can override it to return whatever it wants other than null.
public void setValue(java.lang.String text) throws WrongValueException
text
- the captcha text valueWrongValueException
public void setLength(int len)
public int getLength()
public void setExclude(java.lang.String exclude)
public java.lang.String getExclude()
public void setNoise(boolean b)
public boolean isNoise()
public void setBorder(boolean b)
setFrame(boolean)
instead.Default to false.
public boolean isBorder()
isFrame()
instead.Default to false.
public void setFrame(boolean frame)
Default to false.
public boolean isFrame()
Default to false.
public java.lang.String randomValue()
public void setEngine(java.lang.String clsnm) throws java.lang.ClassNotFoundException, java.lang.NoSuchMethodException, java.lang.IllegalAccessException, java.lang.InstantiationException, java.lang.reflect.InvocationTargetException
java.lang.ClassNotFoundException
java.lang.NoSuchMethodException
java.lang.IllegalAccessException
java.lang.InstantiationException
java.lang.reflect.InvocationTargetException
public void setEngine(CaptchaEngine engine)
public CaptchaEngine getCaptchaEngine() throws UiException
UiException
- if failed to load the engine.protected CaptchaEngine newCaptchaEngine() throws UiException
setEngine(java.lang.String)
is not called with non-null
engine.
By default, it looks up the library property called
org.zkoss.zul.captcha.engine.class.
If found, the value is assumed to be
the class name of the captcha engine (it must implement
CaptchaEngine
.
If not found, UiException
is thrown.
Derived class might override this method to provide your own default class.
UiException
- if failed to instantiate the engineprotected void smartDrawCaptcha()
Copyright © 2005-2018 Potix Corporation. All Rights Reserved.