SharpVectors.Dom.Svg.SvgLength.NewValueSpecifiedUnits C# (CSharp) Method

NewValueSpecifiedUnits() public method

Reset the value as a number with an associated unitType, thereby replacing the values for all of the attributes on the object.
public NewValueSpecifiedUnits ( SvgLengthType unitType, double valueInSpecifiedUnits ) : void
unitType SvgLengthType The unitType for the value (e.g., MM).
valueInSpecifiedUnits double The new value
return void
        public void NewValueSpecifiedUnits(SvgLengthType unitType, double valueInSpecifiedUnits)
        {
            cssLength.SetFloatValue((CssPrimitiveType)unitType, valueInSpecifiedUnits);
        }

Usage Example

示例#1
0
        public void TestSettingValues()
        {
            length = new SvgLength(elm, "test", SvgLengthDirection.Horizontal, "10px");
            Assert.AreEqual(10, length.Value);
            Assert.AreEqual(SvgLengthType.Px, length.UnitType);
            Assert.AreEqual(10, length.ValueInSpecifiedUnits);
            Assert.AreEqual("10px", length.ValueAsString);

            length.ValueAsString = "10cm";
            Assert.AreEqual(10, length.ValueInSpecifiedUnits);
            length.Value = 200;
            double valueInCm = 200 / 96D * 2.54D;
            Assert.AreEqual(200, length.Value);
            Assert.AreEqual(valueInCm, length.ValueInSpecifiedUnits);
            Assert.AreEqual(valueInCm.ToString(SvgNumber.Format)+"cm", length.ValueAsString);

            // change px value
            length.ValueAsString = "2px";
            Assert.AreEqual(2, length.Value);
            Assert.AreEqual(2, length.ValueInSpecifiedUnits);
            Assert.AreEqual("2px", length.ValueAsString);

            // set to a CM value
            length.NewValueSpecifiedUnits(SvgLengthType.Cm, 23);
            Assert.AreEqual(23, length.ValueInSpecifiedUnits);
            Assert.AreEqual(23 / 2.54D * 96, length.Value);
            Assert.AreEqual("23cm", length.ValueAsString);
            Assert.AreEqual(SvgLengthType.Cm, length.UnitType);

            length.ConvertToSpecifiedUnits(SvgLengthType.Mm);
            Assert.AreEqual(230, length.ValueInSpecifiedUnits);
            Assert.AreEqual("230mm", length.ValueAsString);
            Assert.AreEqual(SvgLengthType.Mm, length.UnitType);
        }