GetEmHeight() 공개 메소드

Gets the height of the font in the specified units
public GetEmHeight ( ) : float
리턴 float
예제 #1
0
 public static float ConvertToPxWithFontAdjust(CssLength length, float hundredPercent, CssBox box)
 {
     //Return zero if no length specified, zero specified     
     switch (length.UnitOrNames)
     {
         case CssUnitOrNames.EmptyValue:
             return 0;
         case CssUnitOrNames.Percent:
             return (length.Number / 100f) * hundredPercent;
         case CssUnitOrNames.Ems:
             return length.Number * box.GetEmHeight();
         case CssUnitOrNames.Ex:
             return length.Number * (box.GetEmHeight() / 2);
         case CssUnitOrNames.Pixels:
             //atodo: check support for hi dpi
             return length.Number * (72f / 96f); //font adjust
         case CssUnitOrNames.Milimeters:
             return length.Number * 3.779527559f; //3 pixels per millimeter      
         case CssUnitOrNames.Centimeters:
             return length.Number * 37.795275591f; //37 pixels per centimeter 
         case CssUnitOrNames.Inches:
             return length.Number * 96f; //96 pixels per inch 
         case CssUnitOrNames.Points:
             return length.Number * (96f / 72f); // 1 point = 1/72 of inch   
         case CssUnitOrNames.Picas:
             return length.Number * 16f; // 1 pica = 12 points 
         default:
             return 0;
     }
 }
예제 #2
0
        public static float ConvertToPxWithFontAdjust(CssLength length, float hundredPercent, CssBox box)
        {
            //Return zero if no length specified, zero specified
            switch (length.UnitOrNames)
            {
            case CssUnitOrNames.EmptyValue:
                return(0);

            case CssUnitOrNames.Percent:
                return((length.Number / 100f) * hundredPercent);

            case CssUnitOrNames.Ems:
                return(length.Number * box.GetEmHeight());

            case CssUnitOrNames.Ex:
                return(length.Number * (box.GetEmHeight() / 2));

            case CssUnitOrNames.Pixels:
                //atodo: check support for hi dpi
                return(length.Number * (72f / 96f));    //font adjust

            case CssUnitOrNames.Milimeters:
                return(length.Number * 3.779527559f);    //3 pixels per millimeter

            case CssUnitOrNames.Centimeters:
                return(length.Number * 37.795275591f);    //37 pixels per centimeter

            case CssUnitOrNames.Inches:
                return(length.Number * 96f);    //96 pixels per inch

            case CssUnitOrNames.Points:
                return(length.Number * (96f / 72f));    // 1 point = 1/72 of inch

            case CssUnitOrNames.Picas:
                return(length.Number * 16f);    // 1 pica = 12 points

            default:
                return(0);
            }
        }
예제 #3
0
        public override void CustomRecomputedValue(CssBox containingBlock)
        {
            var svgElement = this.SvgSpec;
            //recompute value if need  
            var cnode = svgElement.GetFirstNode();
            ReEvaluateArgs reEvalArgs = new ReEvaluateArgs(
                containingBlock.VisualWidth,
                100,
                containingBlock.GetEmHeight());
            while (cnode != null)
            {
                cnode.Value.ReEvaluateComputeValue(ref reEvalArgs);
                cnode = cnode.Next;
            }

            this.SetVisualSize(500, 500);
        }
예제 #4
0
        public override void CustomRecomputedValue(CssBox containingBlock)
        {
            var svgElement = this.SvgSpec;
            //recompute value if need
            var            cnode      = svgElement.GetFirstNode();
            ReEvaluateArgs reEvalArgs = new ReEvaluateArgs(
                containingBlock.VisualWidth,
                100,//temp
                containingBlock.GetEmHeight());

            while (cnode != null)
            {
                cnode.Value.ReEvaluateComputeValue(ref reEvalArgs);
                cnode = cnode.Next;
            }

            this.SetVisualSize(500, 500);
        }