asp.net 按指定模板导出word,pdf实例代码
2013-09-10 00:00
971 查看
/// <summary> /// 导出word文件 /// </summary> /// <param name="templateFile">模板路径</param> /// <param name="fileNameWord">导出文件名称</param> /// <param name="fileNamePdf">pdf文件名称</param> /// <param name="bookmarks">模板内书签集合</param> /// <param name="invoiceline">发票条目列表</param> public static void GenerateWord(string templateFile, string fileNameWord, string fileNamePdf, Dictionary<string, string> bookmarks, List<InvoiceLineView> invoiceline) { Microsoft.Office.Interop.Word.Application app = new Microsoft.Office.Interop.Word.Application(); File.Copy(templateFile, fileNameWord, true); Microsoft.Office.Interop.Word.Document doc = new Microsoft.Office.Interop.Word.Document(); object Obj_FileName = fileNameWord; object Visible = false; object ReadOnly = false; object missing = System.Reflection.Missing.Value; doc = app.Documents.Open(ref Obj_FileName, ref missing, ref ReadOnly, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref Visible, ref missing, ref missing, ref missing, ref missing); doc.Activate(); foreach (string bookmarkName in bookmarks.Keys) { object BookMarkName = bookmarkName;//获得书签名 Range range = doc.Bookmarks.get_Item(ref BookMarkName).Range;//表格插入位置 range.Text = bookmarks[bookmarkName]; } object IsSave = true; object FileName = fileNamePdf; object FileFormat = Microsoft.Office.Interop.Word.WdSaveFormat.wdFormatPDF; object LockComments = false; object AddToRecentFiles = true; object ReadOnlyRecommended = false; object EmbedTrueTypeFonts = false; object SaveNativePictureFormat = true; object SaveFormsData = false; object SaveAsAOCELetter = false; object Encoding = Microsoft.Office.Core.MsoEncoding.msoEncodingSimplifiedChineseGB18030; object InsertLineBreaks = false; object AllowSubstitutions = false; object LineEnding = Microsoft.Office.Interop.Word.WdLineEndingType.wdCRLF; object AddBiDiMarks = false; doc.SaveAs(ref FileName, ref FileFormat, ref LockComments, ref missing, ref AddToRecentFiles, ref missing, ref ReadOnlyRecommended, ref EmbedTrueTypeFonts, ref SaveNativePictureFormat, ref SaveFormsData, ref SaveAsAOCELetter, ref Encoding, ref InsertLineBreaks, ref AllowSubstitutions, ref LineEnding, ref AddBiDiMarks); doc.Close(ref IsSave, ref missing, ref missing); }
调用
Dictionary<string, string> bookmarks = new Dictionary<string, string>(); bookmarks.Add("ContractDueDateTime", invoice.InvoiceTime.AddDays(invoice.ContractDueDate).ToString("D")); bookmarks.Add("CustomContactEmail", invoice.CustomContactEmail); bookmarks.Add("CustomContactName", invoice.CustomContactName); bookmarks.Add("ContractDueDate", invoice.ContractDueDate.ToString()); bookmarks.Add("CustomContactTel", invoice.CustomContactTel); bookmarks.Add("CustomAddress", invoice.CustomAddress); bookmarks.Add("InvoiceTime", invoice.InvoiceTime.ToString()); bookmarks.Add("InvoiceID", invoice.InvoiceID); bookmarks.Add("CustomName", invoice.CustomName); bookmarks.Add("CustomName2", invoice.CustomName); bookmarks.Add("total", invoice.TotalPrice.ToString("C")); bookmarks.Add("total1", invoice.TotalPrice.ToString("C")); bookmarks.Add("totalTax", invoice.TotalTax.ToString("C")); bookmarks.Add("totalPrice", (invoice.TotalPrice + invoice.TotalTax).ToString("C")); bookmarks.Add("totalPrice1", (invoice.TotalPrice + invoice.TotalTax).ToString("C")); bookmarks.Add("totalPrice2", (invoice.TotalPrice + invoice.TotalTax).ToString("C")); bookmarks.Add("totalPrice3", (invoice.TotalPrice + invoice.TotalTax).ToString("C")); bookmarks.Add("totalPrice4", (invoice.TotalPrice + invoice.TotalTax).ToString("C")); Utility.GenerateWord(templateFile, fileNameWord, fileNamePdf, bookmarks, invoiceline);
新建一个word,在需要替换的位置插入书签,使用以上方法即可将书签处替换为指定内容,并且另存为pdf
相关文章推荐
- asp.net 按指定模板导出word,pdf实例代码
- asp.net导出excel-一行代码实现excel、xml、pdf、word、html、csv等7种格式文件导出功能而且美观-SNF快速开发平台
- Asp.net开发经验-利用Aspose.Words按模板导出Word
- asp.net网页中导出EXCEL,WORD的环境设置验证实例
- ASP.NET将word文档转换成pdf的代码
- asp.net将word文档转换成pdf的代码
- asp.net导出excel和打印指定内容的简单代码
- 【转】ASP.NET导出word和excel通用代码
- Asp.net通过模板(.dot/Html)导出Word,同时导出图片
- ASP.NET将word文档转换成pdf的代码
- asp.net页面指定控件导出为Word 或excel 文档
- ASP.NET导出word和excel通用代码
- Asp.net开发经验-利用Aspose.Words按模板导出Word(注:Excel可以使用Aspose.Excel)
- asp.net页面指定控件导出为Word 或excel 文档
- ASP.NET将word文档转换成pdf的代码
- Asp.net开发经验-利用Aspose.Words按模板导出Word
- ASP.NET导出word实例
- 原创-Asp.net导出word的方法总结(利用response.write方式将html模板导出word,和dsoframer导出word)
- ASP.NET将word文档转换成pdf的代码
- ASP.NET利用DOC模板导出Word