//..................................................................... /// <summary> /// 使用常规的字符串生成一个分式(标准的、上下格式) /// </summary> /// <param name="upper"></param> /// <param name="lower"></param> /// <returns></returns> public static M.Fraction MakeFraction(string upper, string lower) { M.Fraction fraction = new M.Fraction( ); M.Numerator upperNUM = new M.Numerator( ); upperNUM.Append(OpenDocxMathExprs.MakeMathRun(upper)); M.Denominator lowerDEN = new M.Denominator( ); lowerDEN.Append(OpenDocxMathExprs.MakeMathRun(lower)); fraction.Append(OpenDocxMathExprs.MakeFractionProperties( )); fraction.Append(upperNUM); fraction.Append(lowerDEN); return(fraction); }
//..................................................................... /// <summary> /// /// </summary> /// <param name="upper"></param> /// <param name="lower"></param> /// <returns></returns> public static M.Fraction MakeFraction(OpenXmlElement upper, OpenXmlElement lower) { M.Fraction fraction = new M.Fraction( ); M.Numerator upperNUM = new M.Numerator( ); upperNUM.Append(upper); M.Denominator lowerDEN = new M.Denominator( ); lowerDEN.Append(lower); fraction.Append(OpenDocxMathExprs.MakeFractionProperties( )); fraction.Append(upperNUM); fraction.Append(lowerDEN); return(fraction); }
//..................................................................... /// <summary> /// 分子 /// </summary> /// <returns></returns> private OpxM.Numerator mathNumer_B_B2_4AC( ) { OpxM.Numerator numerator1 = new OpxM.Numerator( ); OpxM.Run run3 = mathMINUS( ); OpxM.Run run4 = mathB( ); OpxM.Run run5 = mathPM( ); //..................................................................... OpxM.Radical radical1 = new OpxM.Radical( ); OpxM.RadicalProperties radicalProperties1 = new OpxM.RadicalProperties( ); OpxM.HideDegree hideDegree1 = new OpxM.HideDegree( ) { Val = OpxM.BooleanValues.One }; OpxM.ControlProperties controlProperties2 = new OpxM.ControlProperties( ); //RunProperties runProperties10 = CambriaFont2( ); controlProperties2.Append(CambriaFont2( )); radicalProperties1.Append(hideDegree1); radicalProperties1.Append(controlProperties2); //--------------------------------------------- OpxM.Degree degree1 = new OpxM.Degree( ); OpxM.Base base1 = new OpxM.Base( ); OpxM.Superscript superscript1 = new OpxM.Superscript( ); OpxM.SuperscriptProperties superscriptProperties1 = new OpxM.SuperscriptProperties( ); OpxM.ControlProperties controlProperties3 = new OpxM.ControlProperties( ); //RunProperties runProperties11 = new RunProperties( ); //RunFonts runFonts = new RunFonts( ) { Ascii = "Cambria Math", HighAnsi = "Cambria Math", EastAsia = "Cambria Math" }; //runProperties11.Append( runFonts ); controlProperties3.Append(this.CambriaFont2( )); superscriptProperties1.Append(controlProperties3); OpxM.Base base2 = new OpxM.Base( ); //--------------------------------------------- OpxM.Run run6 = mathB2( ); base2.Append(run6); OpxM.SuperArgument superArgument1 = new OpxM.SuperArgument( ); //--------------------------------------------- OpxM.Run run7 = mathCP2( ); //--------------------------------------------- superArgument1.Append(run7); superscript1.Append(superscriptProperties1); superscript1.Append(base2); superscript1.Append(superArgument1); OpxM.Run run8 = mathCN4( ); OpxM.Run run9 = mathAC( ); //--------------------------------------------- base1.Append(superscript1); base1.Append(run8); base1.Append(run9); radical1.Append(radicalProperties1); radical1.Append(degree1); radical1.Append(base1); numerator1.Append(run3); numerator1.Append(run4); numerator1.Append(run5); numerator1.Append(radical1); return(numerator1); }