org.w3c.css.properties.css1.CssFontVariantCSS2 Maven / Gradle / Ivy
// // $Id: CssFontVariantCSS2.java,v 1.5 2010-01-05 13:49:43 ylafon Exp $ // From Philippe Le Hegaret ([email protected]) // // (c) COPYRIGHT MIT and INRIA, 1997. // Please first read the full copyright statement in file COPYRIGHT.html package org.w3c.css.properties.css1; import org.w3c.css.parser.CssStyle; import org.w3c.css.properties.css.CssProperty; import org.w3c.css.util.ApplContext; import org.w3c.css.util.InvalidParamException; import org.w3c.css.values.CssExpression; import org.w3c.css.values.CssIdent; /** *
*/ public boolean isDefault() { return value == 0; } private static int[] hash_values; static { hash_values = new int[FONTVARIANT.length]; for (int i=0;i* 'font-variant' *
** Value: normal | small-caps
* Initial: normal
* Applies to: all elements
* Inherited: yes
* Percentage values: N/A
*Another type of variation within a font family is the small-caps. In a * small-caps font the lower case letters look similar to the uppercase ones, * but in a smaller size and with slightly different proportions. The * 'font-variant' property selects that font. *
A value of 'normal' selects a font that is not a small-caps font, * 'small-caps' selects a small-caps font. It is acceptable (but not required) * in CSS1 if the small-caps font is a created by taking a normal font and * replacing the lower case letters by scaled uppercase characters. As a last * resort, uppercase letters will be used as replacement for a small-caps * font. *
The following example results in an 'H3' element in small-caps, with * emphasized words in oblique small-caps: *
* H3 { font-variant: small-caps } * EM { font-style: oblique } **There may be other variants in the font family as well, such as fonts * with old-style numerals, small-caps numerals, condensed or expanded * letters, etc. CSS1 has no properties that select those. *
CSS1 core: insofar as this property causes text to be * transformed to uppercase, the same considerations as for 'text-transform' * apply * * @see CssFont * @see TextTransform * @version $Revision: 1.5 $ */ public class CssFontVariantCSS2 extends CssProperty implements CssFontConstantCSS2 { int value; /** * Create a new CssFontVariantCSS2 */ public CssFontVariantCSS2() { // nothing to do } /** * Creates a new CssFontVariantCSS2 * * @param expression the font variant * @exception InvalidParamException Values are incorrect */ public CssFontVariantCSS2(ApplContext ac, CssExpression expression, boolean check) throws InvalidParamException { if(check && expression.getCount() > 1) { throw new InvalidParamException("unrecognize", ac); } setByUser(); if (expression.getValue() instanceof CssIdent) { int hash = expression.getValue().hashCode(); for (int i=0; i