Class CssVariableUtil
- java.lang.Object
-
- com.itextpdf.styledxmlparser.util.CssVariableUtil
-
public class CssVariableUtil extends java.lang.ObjectUtility class for resolving css variables in declarations.
-
-
Field Summary
Fields Modifier and Type Field Description private static org.slf4j.LoggerLOGGERprivate static intMAX_CSS_VAR_COUNTMax count of css var expressions in single declaration.
-
Constructor Summary
Constructors Modifier Constructor Description privateCssVariableUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static booleancontainsVarExpression(java.lang.String expression)Checks for var expression.private static java.util.List<CssDeclaration>expandShorthand(CssDeclaration declaration)static booleanisCssVariable(java.lang.String property)Checks property for css variable.static voidresolveCssVariables(java.util.Map<java.lang.String,java.lang.String> styles)Resolve all css variables in style mapprivate static CssDeclarationresolveSingleVar(java.lang.String key, java.lang.String expression, java.util.Map<java.lang.String,java.lang.String> styles)Resolve single css var expression recursivelyprivate static java.lang.StringresolveVarExpression(java.lang.String varExpression, java.util.Map<java.lang.String,java.lang.String> styles)Resolve css variable expression, if there is a fallback value and primary value is null, default value will be returned.private static java.lang.StringresolveVarRecursively(java.lang.String expression, java.util.Map<java.lang.String,java.lang.String> styles, int level)Resolves variables without taking into account default values
-
-
-
Field Detail
-
LOGGER
private static final org.slf4j.Logger LOGGER
-
MAX_CSS_VAR_COUNT
private static final int MAX_CSS_VAR_COUNT
Max count of css var expressions in single declaration.- See Also:
- Constant Field Values
-
-
Method Detail
-
resolveCssVariables
public static void resolveCssVariables(java.util.Map<java.lang.String,java.lang.String> styles)
Resolve all css variables in style map- Parameters:
styles- css styles map
-
containsVarExpression
public static boolean containsVarExpression(java.lang.String expression)
Checks for var expression.- Parameters:
expression- css expression to check- Returns:
- true if there is a var expression, false otherwise
-
isCssVariable
public static boolean isCssVariable(java.lang.String property)
Checks property for css variable.- Parameters:
property- css property to check- Returns:
- true if it is a css variable, false otherwise
-
expandShorthand
private static java.util.List<CssDeclaration> expandShorthand(CssDeclaration declaration)
-
resolveSingleVar
private static CssDeclaration resolveSingleVar(java.lang.String key, java.lang.String expression, java.util.Map<java.lang.String,java.lang.String> styles)
Resolve single css var expression recursively- Parameters:
key- css style propertyexpression- css expressionstyles- css styles map- Returns:
- resolved var expression if present or null if none found
-
resolveVarRecursively
private static java.lang.String resolveVarRecursively(java.lang.String expression, java.util.Map<java.lang.String,java.lang.String> styles, int level)Resolves variables without taking into account default values- Parameters:
expression- var valuestyles- element styleslevel- current var expression nesting level- Returns:
- resolved var expression
-
resolveVarExpression
private static java.lang.String resolveVarExpression(java.lang.String varExpression, java.util.Map<java.lang.String,java.lang.String> styles)Resolve css variable expression, if there is a fallback value and primary value is null, default value will be returned.- Parameters:
varExpression- expression as the following: var(.+?(?:,.*?)?)styles- map of styles containing resolved variables- Returns:
- resolved var expression
-
-