原創|其它|編輯:郝浩|2012-10-09 14:45:35.000|閱讀 2053 次
概述:對于Aspose.Words模板打印功能進行了詳細描述,附代碼。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
Aspose.Words模板說明:書簽必須在文字前面
String modelFile = context.Server.MapPath("~/WordModel/ODO.docx"); Document doc = new Document(modelFile);//加載模板 doc.Protect(ProtectionType.ReadOnly); doc.Range.Bookmarks["lblcompany"].Text = "";//獲取模板書簽并復制 //動態生成表格 DocumentBuilder docBuilder = new DocumentBuilder(doc); nt count = 0; //記錄要顯示多少列 for (int i = 0; i < MyTable.Columns.Count; i++) { if (doc.Range.Bookmarks[MyTable.Columns[i].ColumnName.Trim()] != null) { Bookmark mark = doc.Range.Bookmarks[MyTable.Columns[i].ColumnName.Trim()]; mark.Text = ""; count++; } } Hashtable ht = new Hashtable();//單元格寬度 System.Collections.Generic.List<string> listcolumn = new System.Collections.Generic.List<string>(count); for (int i = 0; i < count; i++) { docBuilder.MoveToCell(0, 0, i, 0); //移動單元格 if (docBuilder.CurrentNode.NodeType == NodeType.BookmarkStart) { listcolumn.Add((docBuilder.CurrentNode as BookmarkStart).Name); ht.Add((docBuilder.CurrentNode as BookmarkStart).Name, docBuilder.CellFormat.Width); } } docBuilder.MoveToBookmark("lblgoods"); //開始添加值 for (int m = 0; m < MyTable.Rows.Count; m++) { for (int i = 0; i < listcolumn.Count; i++) { docBuilder.InsertCell();// 添加一個單元格 docBuilder.CellFormat.Borders.LineStyle = LineStyle.Single; docBuilder.CellFormat.Borders.Color = System.Drawing.Color.Black; docBuilder.CellFormat.Width = (double)ht[listcolumn[i]]; docBuilder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; docBuilder.Write(MyTable.Rows[m][listcolumn[i]].ToString()); if (m == 0) { docBuilder.CellFormat.Borders.Top.LineStyle = LineStyle.None; docBuilder.CellFormat.Borders.LineWidth = 0; } if (m == MyTable.Rows.Count - 1) { docBuilder.CellFormat.Borders.Bottom.LineStyle = LineStyle.None; docBuilder.CellFormat.Borders.LineWidth = 0; } } docBuilder.EndRow(); } doc.Range.Bookmarks["lblgoods"].Text = ""; // 清掉標示 if (extension.Equals(".docx")) { fileName += DateTime.Now.ToString("yyyyMMddHHmmssfffff") + ".doc"; doc.Save(fileName, SaveFormat.Doc, SaveType.OpenInWord, context.Response); }
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:睦木的163博客