private static void smethod_12(Class857 A_0, Paragraph A_1, FieldType A_2, string A_3, string A_4, CharacterFormat A_5, Style A_6) { Field field; int num = 0x13; if (A_5 == null) { A_5 = A_1.BreakCharacterFormat; } if (A_2 == FieldType.FieldMergeField) { field = new MergeField(A_0.method_9()); } else { field = new Field(A_0.method_9()); } string str = A_3.Trim(); if (str.EndsWith(BookmarkStart.b("攸ᄺ", num))) { A_3 = str.Substring(0, str.Length - 2); } field.Code = A_3; if (A_2 == FieldType.FieldMergeField) { field.ParseFieldCode(field.Code); } field.ApplyCharacterFormat(A_5); field.Type = A_2; A_1.method_13(field); if (A_2 != FieldType.FieldMergeField) { FieldMark mark = new FieldMark(A_0.method_9(), FieldMarkType.FieldSeparator); mark.ApplyCharacterFormat(A_5); TextRange range = new TextRange(A_0.method_9()) { Text = A_4 }; range.ApplyCharacterFormat(A_5); FieldMark mark2 = new FieldMark(A_0.method_9(), FieldMarkType.FieldEnd); mark2.ApplyCharacterFormat(A_5); field.Separator = mark; field.End = mark2; A_1.method_13(mark); A_1.method_13(range); A_1.method_13(mark2); } field.UpdateFieldCode(field.Code); }
public static void AddHeading(this Document doc, string headingContent, Spire.Doc.Formatting.CharacterFormat characterFormat = null) { if (doc == null || string.IsNullOrWhiteSpace(headingContent)) { throw new ArgumentNullException($"some parameter is null - " + $"doc: {doc}, headingContent: {headingContent}."); } //create heading Section section = doc.Sections[0]; Paragraph para1 = section.AddParagraph(); para1.AppendText(headingContent); para1.ApplyStyle(BuiltinStyle.Heading1); if (characterFormat != null) { foreach (DocumentObject obj in para1.ChildObjects) { TextRange tr = obj as TextRange; tr.ApplyCharacterFormat(characterFormat); } } //Paragraph para2 = section.AddParagraph(); //para2.AppendText("3.1 Head2"); //para2.ApplyStyle(BuiltinStyle.Heading2); //foreach (DocumentObject obj in para2.ChildObjects) //{ // TextRange tr = obj as TextRange; // tr.ApplyCharacterFormat(format2); //} ////use self-defined style //Paragraph para3 = section.AddParagraph(); //para3.AppendText("3.1.1 Head3"); //para3.ApplyStyle(BuiltinStyle.Heading3); //foreach (DocumentObject obj in para3.ChildObjects) //{ // TextRange tr = obj as TextRange; // tr.CharacterFormat.FontSize = 10.0f; // tr.CharacterFormat.Bold = true; // tr.CharacterFormat.TextColor = format2.TextColor; //} }
private void button1_Click(object sender, EventArgs e) { //Load the document string input = @"..\..\..\..\..\..\Data\Sample.docx"; Document doc = new Document(); doc.LoadFromFile(input); //Get the first section Section s = doc.Sections[0]; //Get the second paragraph Paragraph p = s.Paragraphs[1]; //Create a characterFormat object CharacterFormat format = new CharacterFormat(doc); //Set font format.Font = new Font("Arial", 16); //Loop through the childObjects of paragraph foreach (DocumentObject childObj in p.ChildObjects) { if (childObj is TextRange) { //Apply character format TextRange tr = childObj as TextRange; tr.ApplyCharacterFormat(format); } } //Save and launch document string output = "SetFont.docx"; doc.SaveToFile(output, FileFormat.Docx); Viewer(output); }
private static void smethod_4(Class581 A_0, CharacterFormat A_1) { Class394 class2 = A_0.imethod_1(); if (class2.method_51().Length > 0) { TextRange range = null; string str2 = class2.method_51().ToString(); if (class2.method_57() is MergeField) { range = class2.method_57(); string str = str2; if (((A_1 != null) && A_1.Bidi) && (str != null)) { str = smethod_5(str); A_1.Bidi = false; } if (range.Text == string.Empty) { range.Text = str; range.ApplyCharacterFormat(A_1); } else { range.Text = range.Text + str; } class2.method_51().Length = 0; } else if (Class567.smethod_16(str2)) { range = new TextRange(A_0.Interface50.imethod_0(), str2, A_1); A_0.method_9(range); class2.method_51().Length = 0; } } }
private static void smethod_6(Class581 A_0, CharacterFormat A_1) { Class394 class2 = A_0.imethod_1(); string str = class2.method_1(); while (class2.method_10(str, XmlDocumentTextHandling.TextAndSignificant)) { string str2 = class2.method_3(); switch (str2) { case null: case string.Empty: return; } Field field = smethod_7(str2, A_0.Interface50.imethod_0()); if (!class2.bool_0 && (class2.method_57() != null)) { int index = -1; if ((class2.method_57() != null) && (class2.method_57().NextSibling == null)) { index = (A_0.method_13() as Paragraph).ChildObjects.IndexOf(class2.method_57()); } if (((class2.method_53() != FieldCharType.Seperate) && (index >= 0)) && (index == ((A_0.method_13() as Paragraph).ChildObjects.Count - 1))) { Field field3 = class2.method_57(); field3.Code = field3.Code + str2; if (class2.method_57().Type == FieldType.FieldUnknown) { Field field2 = class2.method_54().Pop(); (A_0.method_13() as Paragraph).method_20(field2); field2 = smethod_7(field2.Code, A_0.Interface50.imethod_0()); if (A_1 != null) { field2.ApplyCharacterFormat(A_1); } field2.IsLocked = class2.method_55(); class2.method_56(false); A_0.method_9(field2); if (class2.method_57() != field2) { class2.method_54().Push(field2); } } } else { TextRange range = new TextRange(A_0.Interface50.imethod_0()); if (A_1 != null) { range.ApplyCharacterFormat(A_1); } range.Text = str2; A_0.method_9(range); } return; } if (A_1 != null) { field.CharacterFormat.method_73(A_1); } field.IsLocked = class2.method_55(); class2.method_56(false); A_0.method_9(field); class2.method_54().Push(field); } }
public void fun() { //创建Word文档 Document document = new Document(); //添加section Section section = document.AddSection(); // DataTable dataTable = new DataTable(); dataTable.Columns.Add("订单编号"); dataTable.Columns.Add("客户名称"); dataTable.Columns.Add("型号"); dataTable.Columns.Add("种类"); dataTable.Columns.Add("颜色"); dataTable.Columns.Add("数量"); dataTable.Columns.Add("单价"); dataTable.Columns.Add("总金额"); dataTable.Columns.Add("其它"); for (int i = 0; i < 10; i++) { DataRow dr = dataTable.NewRow(); dr["订单编号"] = "12312312312"; dr["客户名称"] = "周杰伦"; dr["型号"] = "123141"; dr["种类"] = "123141"; dr["颜色"] = "123141"; dr["数量"] = 123141; dr["单价"] = 123141.99; dr["总金额"] = 123141.99; dr["其它"] = "123141"; dataTable.Rows.Add(dr); } Paragraph para1 = section.AddParagraph(); para1.AppendText("硕麒拉链码庄送货单"); para1.Format.HorizontalAlignment = HorizontalAlignment.Center; para1.AppendBreak(BreakType.LineBreak); ParagraphStyle style1 = new ParagraphStyle(document); style1.Name = "titleStyle"; style1.CharacterFormat.Bold = true; style1.CharacterFormat.TextColor = Color.Black; style1.CharacterFormat.FontName = "黑体"; style1.CharacterFormat.FontSize = 26f; style1.CharacterFormat.CharacterSpacing = document.Styles.Add(style1); para1.ApplyStyle("titleStyle"); // 添加表格 表格样式 Table table = section.AddTable(true); //指定表格的行数和列数() table.ResetCells(9 + dataTable.Rows.Count, 9); //固定项 样式 CharacterFormat charactertitle = new CharacterFormat(document); charactertitle.Bold = true; charactertitle.FontSize = 15; charactertitle.TextColor = Color.Black; charactertitle.FontName = "黑体"; TextRange range = table[0, 0].AddParagraph().AppendText("客户姓名"); range.ApplyCharacterFormat(charactertitle); TextRange range1 = table[1, 0].AddParagraph().AppendText("电话"); range1.ApplyCharacterFormat(charactertitle); TextRange range3 = table[0, 5].AddParagraph().AppendText("单号"); range3.ApplyCharacterFormat(charactertitle); TextRange range4 = table[1, 5].AddParagraph().AppendText("开票日期"); range4.ApplyCharacterFormat(charactertitle); TextRange ra1 = table[3, 0].AddParagraph().AppendText("序号"); ra1.ApplyCharacterFormat(charactertitle); TextRange ra2 = table[3, 1].AddParagraph().AppendText("系统编号"); ra2.ApplyCharacterFormat(charactertitle); TextRange ra3 = table[3, 2].AddParagraph().AppendText("型号"); ra3.ApplyCharacterFormat(charactertitle); TextRange ra4 = table[3, 3].AddParagraph().AppendText("种类"); ra4.ApplyCharacterFormat(charactertitle); TextRange ra5 = table[3, 4].AddParagraph().AppendText("颜色"); ra5.ApplyCharacterFormat(charactertitle); TextRange ra6 = table[3, 5].AddParagraph().AppendText("数量"); ra6.ApplyCharacterFormat(charactertitle); TextRange ra7 = table[3, 6].AddParagraph().AppendText("单价(元)"); ra7.ApplyCharacterFormat(charactertitle); TextRange ra8 = table[3, 7].AddParagraph().AppendText("总金额(元)"); ra8.ApplyCharacterFormat(charactertitle); TextRange ra9 = table[3, 8].AddParagraph().AppendText("备注"); ra9.ApplyCharacterFormat(charactertitle); // 空一行出来 table.ApplyHorizontalMerge(2, 0, 8); // 尾部 第一行3列 table.ApplyHorizontalMerge(dataTable.Rows.Count + 5, 2, 8); TextRange ra10 = table[dataTable.Rows.Count + 5, 0].AddParagraph().AppendText("未付款"); ra10.ApplyCharacterFormat(charactertitle); TextRange ra11 = table[dataTable.Rows.Count + 5, 1].AddParagraph().AppendText("合计"); ra11.ApplyCharacterFormat(charactertitle); // 总金额 —— 数字形式 TextRange ra12 = table[dataTable.Rows.Count + 5, 2].AddParagraph().AppendText("99999 (元)"); ra12.ApplyCharacterFormat(charactertitle); // 尾部第二行 2列 table.ApplyHorizontalMerge(dataTable.Rows.Count + 6, 0, 1); TextRange ra13 = table[dataTable.Rows.Count + 6, 0].AddParagraph().AppendText("大写金额"); ra13.ApplyCharacterFormat(charactertitle); // 待写入大写金额 ExportToWord word = new ExportToWord(); table.ApplyHorizontalMerge(dataTable.Rows.Count + 6, 2, 8); TextRange ra14 = table[dataTable.Rows.Count + 6, 2].AddParagraph().AppendText(word.ConvertSum("8888.88")); Console.WriteLine(word.ConvertSum("8888.88")); ra14.ApplyCharacterFormat(charactertitle); // 尾部第3行 1列 table.ApplyHorizontalMerge(dataTable.Rows.Count + 7, 0, 8); TextRange ra15 = table[dataTable.Rows.Count + 7, 0].AddParagraph().AppendText("地址: 汉川市新河汉正大道思嘉工业园 电话 : 0712-8105088"); ra15.ApplyCharacterFormat(charactertitle); // 尾部第4行 2列 table.ApplyHorizontalMerge(dataTable.Rows.Count + 8, 0, 4); table.ApplyHorizontalMerge(dataTable.Rows.Count + 8, 5, 8); TextRange ra16 = table[dataTable.Rows.Count + 8, 0].AddParagraph().AppendText("制单: "); ra16.ApplyCharacterFormat(charactertitle); TextRange ra17 = table[dataTable.Rows.Count + 8, 5].AddParagraph().AppendText("客户签名: "); ra17.ApplyCharacterFormat(charactertitle); // 待填充部分 // 姓名 table.ApplyHorizontalMerge(0, 1, 4); TextRange r1 = table[0, 1].AddParagraph().AppendText("周杰伦"); r1.ApplyCharacterFormat(charactertitle); // 单号 table.ApplyHorizontalMerge(0, 6, 8); TextRange r2 = table[0, 6].AddParagraph().AppendText("CL-2018-01-01"); r2.ApplyCharacterFormat(charactertitle); // 电话 table.ApplyHorizontalMerge(1, 1, 4); TextRange r3 = table[1, 1].AddParagraph().AppendText("15072464246"); r3.ApplyCharacterFormat(charactertitle); // 开票日期 table.ApplyHorizontalMerge(1, 6, 8); TextRange r4 = table[1, 6].AddParagraph().AppendText("2018-01-01"); r4.ApplyCharacterFormat(charactertitle); // 添加的数据完毕 for (int i = 0; i < dataTable.Rows.Count; i++) { table[i + 4, 0].AddParagraph().AppendText(i + ""); DataRow rows = dataTable.Rows[i]; int temp = 1; for (int j = 0; j < 9; j++) { if (j != 1) { table[i + 4, temp].AddParagraph().AppendText(rows[j].ToString()); temp++; } } } // 单元格样式 table[0, 0].CellFormat.FitText = true; table[5 + dataTable.Rows.Count, 0].CellFormat.FitText = true; // 未付款 //table[8 + dataTable.Rows.Count, 5].CellFormat.FitText = true; for (int i = 3; i < 5 + dataTable.Rows.Count; i++) { for (int j = 0; j < 9; j++) { table[i, j].CellFormat.FitText = true; table.DefaultRowHeight = 25; } } //保存文档 document.SaveToFile("C:\\Users\\answer\\Desktop\\Table.docx"); }
private void imethod_12(string A_0, CharacterFormat A_1) { int num = 0x11; Break @break = null; if (A_0.Length == 1) { switch (A_0[0]) { case '\v': case '\r': @break = new Break(this.document_0, BreakType.LineBreak) { TextRange = { Text = BookmarkStart.b("㰶", num) }, ClearType = (LineBreakClear)A_1.method_52(0x2d) }; if (A_0[0] == '\r') { @break.IsCrBreak = true; } break; case '\f': @break = new Break(this.document_0, BreakType.PageBreak); break; case '\x000e': @break = new Break(this.document_0, BreakType.ColumnBreak); break; } if (@break != null) { @break.TextRange.CharacterFormat.method_73(A_1); } } if ((this.stack_0.Count > 0) && (this.stack_0.Peek() is Field)) { Field entity = this.stack_0.Peek() as Field; int index = -1; if (entity.NextSibling == null) { index = this.documentObject_0.ChildObjects.IndexOf(entity); } if (((index > -1) && (index == (this.documentObject_0.ChildObjects.Count - 1))) && (this.fieldCharType_0 == FieldCharType.Begin)) { entity.Code = entity.Code + A_0; entity.CharacterFormat.method_25(A_1); } else if (entity.Type == FieldType.FieldMergeField) { TextRange range = entity; if (range.Text == string.Empty) { range.Text = A_0; range.ApplyCharacterFormat(A_1); } else { range.Text = range.Text + A_0; } } else { this.documentObject_0.method_13((@break == null) ? ((IDocumentObject) new TextRange(this.document_0, A_0, A_1)) : ((IDocumentObject)@break)); } } else { this.documentObject_0.method_13((@break == null) ? ((IDocumentObject) new TextRange(this.document_0, A_0, A_1)) : ((IDocumentObject)@break)); } }
private void imethod_17(CharacterFormat A_0, bool A_1, bool A_2) { Field field = this.stack_0.Peek() as Field; if (field.IsRuby) { Class2 class2 = new Class2(this.documentObject_0.Document); class2.method_60(field.Code); if ((this.documentObject_0.LastChild is Field) && (this.documentObject_0.LastChild as Field).IsRuby) { this.documentObject_0.method_20(this.documentObject_0.LastChild); } this.documentObject_0.method_13(class2); class2.ApplyCharacterFormat(A_0); this.stack_0.Pop(); } else { field.IsLocked = A_1; field.IsDirty = A_2; FieldType type = Class819.smethod_2(field.Code); if (type != FieldType.FieldUnknown) { field.Type = type; } if (((field.Type == FieldType.FieldNumPages) || (field.Type == FieldType.FieldPage)) && ((this.documentObject_0.ChildObjects.Count > 0) && (this.documentObject_0.LastChild == field))) { this.class764_0.method_43().imethod_16(A_0, null); TextRange range = new TextRange(this.documentObject_0.Document) { Text = string.Empty }; range.ApplyCharacterFormat(field.CharacterFormat); this.documentObject_0.method_13(range); } if (field.Type != FieldType.FieldMergeField) { FieldMark mark = new FieldMark(this.document_0, A_0, FieldMarkType.FieldEnd); this.documentObject_0.method_13(mark); field.End = mark; } field.UpdateFieldCode(field.Code); if ((field.Type == FieldType.FieldDate) || (field.Type == FieldType.FieldTime)) { field.method_49(); } this.stack_0.Pop(); this.fieldCharType_0 = FieldCharType.End; Class454 class3 = null; if (((field.Type == FieldType.FieldEmbed) || (field.Type == FieldType.FieldLink)) && (this.stack_2.Count > 0)) { if (this.stack_1.Count > 0) { class3 = this.stack_1.Pop(); } this.method_6(field, class3); } if (field.Type == FieldType.FieldShape) { this.method_5(field); } } }
// 客户名 总金额 public void ExportToWordFun(System.Data.DataTable dataTable, String name, double sum) { System.Windows.Forms.SaveFileDialog saveDia = new SaveFileDialog(); saveDia.Filter = "Word|*.docx"; saveDia.Title = "导出为Word文件"; saveDia.FileName = DateTime.Now.ToString("yyyyMMddhhss") + name; if (saveDia.ShowDialog() == System.Windows.Forms.DialogResult.OK && !string.Empty.Equals(saveDia.FileName)) { MysqlManager mysqlManager = new MysqlManager(); String phone = mysqlManager.getPhone(name); if (phone == null) { phone = "00000000000"; } //创建Word文档 Document document = new Document(); //添加section Section section = document.AddSection(); section.PageSetup.PageSize = new System.Drawing.SizeF(600, 420); //section.PageSetup.PageSize = PageSize.A4; section.PageSetup.Orientation = PageOrientation.Landscape; Paragraph para1 = section.AddParagraph(); para1.AppendText("硕麒拉链码庄送货单"); para1.Format.HorizontalAlignment = Spire.Doc.Documents.HorizontalAlignment.Center; para1.AppendBreak(BreakType.LineBreak); ParagraphStyle style1 = new ParagraphStyle(document); style1.Name = "titleStyle"; style1.CharacterFormat.Bold = true; style1.CharacterFormat.TextColor = Color.Black; style1.CharacterFormat.FontName = "黑体"; style1.CharacterFormat.FontSize = 18f; style1.CharacterFormat.CharacterSpacing = document.Styles.Add(style1); para1.ApplyStyle("titleStyle"); // 添加表格 表格样式 Table table = section.AddTable(true); //指定表格的行数和列数() table.ResetCells(9 + dataTable.Rows.Count, 9); //固定项 样式 CharacterFormat charactertitle = new CharacterFormat(document); charactertitle.Bold = true; charactertitle.FontSize = 13; charactertitle.TextColor = Color.Black; charactertitle.FontName = "黑体"; TextRange range = table[0, 0].AddParagraph().AppendText("客户姓名"); range.ApplyCharacterFormat(charactertitle); TextRange range1 = table[1, 0].AddParagraph().AppendText("客户电话"); range1.ApplyCharacterFormat(charactertitle); TextRange range3 = table[0, 5].AddParagraph().AppendText("单号"); range3.ApplyCharacterFormat(charactertitle); TextRange range4 = table[1, 5].AddParagraph().AppendText("开票日期"); range4.ApplyCharacterFormat(charactertitle); TextRange ra1 = table[3, 0].AddParagraph().AppendText("序号"); ra1.ApplyCharacterFormat(charactertitle); TextRange ra2 = table[3, 1].AddParagraph().AppendText("系统编号"); ra2.ApplyCharacterFormat(charactertitle); TextRange ra3 = table[3, 2].AddParagraph().AppendText("型号"); ra3.ApplyCharacterFormat(charactertitle); TextRange ra4 = table[3, 3].AddParagraph().AppendText("种类"); ra4.ApplyCharacterFormat(charactertitle); TextRange ra5 = table[3, 4].AddParagraph().AppendText("颜色"); ra5.ApplyCharacterFormat(charactertitle); TextRange ra6 = table[3, 5].AddParagraph().AppendText("数量"); ra6.ApplyCharacterFormat(charactertitle); TextRange ra7 = table[3, 6].AddParagraph().AppendText("单价(元)"); ra7.ApplyCharacterFormat(charactertitle); TextRange ra8 = table[3, 7].AddParagraph().AppendText("金额(元)"); ra8.ApplyCharacterFormat(charactertitle); TextRange ra9 = table[3, 8].AddParagraph().AppendText("备注"); ra9.ApplyCharacterFormat(charactertitle); // 空一行出来 table.ApplyHorizontalMerge(2, 0, 8); // 尾部 第一行3列 table.ApplyHorizontalMerge(dataTable.Rows.Count + 5, 2, 8); TextRange ra10 = table[dataTable.Rows.Count + 5, 0].AddParagraph().AppendText("未付款"); ra10.ApplyCharacterFormat(charactertitle); TextRange ra11 = table[dataTable.Rows.Count + 5, 1].AddParagraph().AppendText("合计金额"); ra11.ApplyCharacterFormat(charactertitle); // 待填入 总金额 —— 数字形式 TextRange ra12 = table[dataTable.Rows.Count + 5, 2].AddParagraph().AppendText(sum + "(元)"); ra12.ApplyCharacterFormat(charactertitle); // 尾部第二行 2列 table.ApplyHorizontalMerge(dataTable.Rows.Count + 6, 0, 1); TextRange ra13 = table[dataTable.Rows.Count + 6, 0].AddParagraph().AppendText("大写金额"); ra13.ApplyCharacterFormat(charactertitle); // 待填入 写入大写金额 ExportToWord word = new ExportToWord(); table.ApplyHorizontalMerge(dataTable.Rows.Count + 6, 2, 8); TextRange ra14 = table[dataTable.Rows.Count + 6, 2].AddParagraph().AppendText(word.ConvertSum(sum.ToString())); //Console.WriteLine(word.ConvertSum("8888.88")); ra14.ApplyCharacterFormat(charactertitle); // 尾部第3行 1列 table.ApplyHorizontalMerge(dataTable.Rows.Count + 7, 0, 8); TextRange ra15 = table[dataTable.Rows.Count + 7, 0].AddParagraph().AppendText("地址: 汉川市新河汉正大道思嘉工业园 电话 : 0712-8105088"); ra15.ApplyCharacterFormat(charactertitle); // 尾部第4行 2列 table.ApplyHorizontalMerge(dataTable.Rows.Count + 8, 0, 4); table.ApplyHorizontalMerge(dataTable.Rows.Count + 8, 5, 8); TextRange ra16 = table[dataTable.Rows.Count + 8, 0].AddParagraph().AppendText("制单: "); ra16.ApplyCharacterFormat(charactertitle); TextRange ra17 = table[dataTable.Rows.Count + 8, 5].AddParagraph().AppendText("客户签名: "); ra17.ApplyCharacterFormat(charactertitle); // 待填充部分 // 姓名 table.ApplyHorizontalMerge(0, 1, 4); TextRange r1 = table[0, 1].AddParagraph().AppendText(name); r1.ApplyCharacterFormat(charactertitle); // 单号 table.ApplyHorizontalMerge(0, 6, 8); Encoding gb2312 = Encoding.GetEncoding("GB2312"); String s = Pinyin.ConvertEncoding(name, Encoding.UTF8, gb2312); String s1 = Pinyin.GetInitials(s, gb2312); TextRange r2 = table[0, 6].AddParagraph().AppendText(s1 + "-" + DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day + "-" + mysqlManager.getGuestOrderCount(name)); r2.ApplyCharacterFormat(charactertitle); // 电话 table.ApplyHorizontalMerge(1, 1, 4); TextRange r3 = table[1, 1].AddParagraph().AppendText(phone); r3.ApplyCharacterFormat(charactertitle); // 开票日期 table.ApplyHorizontalMerge(1, 6, 8); TextRange r4 = table[1, 6].AddParagraph().AppendText(DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day + " " + DateTime.Now.Hour + ":" + DateTime.Now.Minute); r4.ApplyCharacterFormat(charactertitle); // 添加的数据完毕 for (int i = 0; i < dataTable.Rows.Count; i++) { table[i + 4, 0].AddParagraph().AppendText((i + 1) + ""); DataRow rows = dataTable.Rows[i]; int temp = 1; for (int j = 0; j < 9; j++) { if (j != 1) { table[i + 4, temp].AddParagraph().AppendText(rows[j].ToString()); temp++; } } } // 单元格样式 table[0, 0].CellFormat.FitText = true; table[5 + dataTable.Rows.Count, 0].CellFormat.FitText = true; // 未付款 // 单元格高度设定 //for (int i = 0; i < 9 + dataTable.Rows.Count; i++) { // table.Rows[i].Height = 30; //} for (int i = 3; i < 5 + dataTable.Rows.Count; i++) { for (int j = 0; j < 9; j++) { table[i, 1].CellFormat.FitText = true; } } try { //保存文档 document.SaveToFile(saveDia.FileName); //doc.SaveToFile(saveDia.FileName, FileFormat.Docx2013); MessageBox.Show("导出成功!"); } catch (Exception ex) { MessageBox.Show("导出文件时出错,文件可能正被打开!\n" + ex.Message); return; } } }