/// <summary> /// 获取缩进值 /// </summary> /// <param name="nameType">字体名称</param> /// <param name="sizeType">字号大小</param> /// <param name="indentationPoints">缩进字符数</param> public static int GetIndentation(this XWPFParagraph pg, FontNameType nameType, FontSizeType sizeType, int indentationPoints) { string fontName = GetFontName(nameType); int fontSize = (int)GetFontSize(sizeType); int len = GetIndentation(fontName, fontSize, indentationPoints, FontStyle.Regular); return(len); }
/// <summary> /// 设置字体 /// </summary> /// <param name="run"></param> /// <param name="nameType"></param> public static void SetFontName(this XWPFRun run, FontNameType nameType) { string fontName = GetFontName(nameType); CT_R r = run.GetCTR(); CT_RPr rpr = r.IsSetRPr() ? r.rPr : r.AddNewRPr(); CT_Fonts fonts = rpr.IsSetRFonts() ? rpr.rFonts : rpr.AddNewRFonts(); fonts.ascii = fontName; if (string.IsNullOrEmpty(fonts.eastAsia)) { fonts.eastAsia = fontName; } if (string.IsNullOrEmpty(fonts.cs)) { fonts.cs = fontName; } if (string.IsNullOrEmpty(fonts.hAnsi)) { fonts.hAnsi = fontName; } }
/// <summary> /// 获取字体名称 /// </summary> /// <param name="nameType"></param> /// <returns></returns> private static string GetFontName(FontNameType nameType) { string fontName = string.Empty; switch (nameType) { case FontNameType.MingLiU_HKSCS_ExtB: fontName = "MingLiU_HKSCS-ExtB"; break; case FontNameType.MingLiU_ExtB: fontName = "MingLiU-ExtB"; break; case FontNameType.PMingLiU_ExtB: fontName = "PMingLiU-ExtB"; break; case FontNameType.SimSun_ExtB: fontName = "SimSun-ExtB"; break; case FontNameType.Modern_No20: fontName = "Modern No.20"; break; default: fontName = nameType.ToString().Replace("_", " "); break; } if (string.IsNullOrEmpty(fontName)) { fontName = FontNameType.宋体.ToString(); } return(fontName); }