参考:http://blog.163.com/zhouchunping_99/blog/static/7837998820085114394716/

  1. 生成word文档

生成word文档

view plaincopy to clipboardprint?

  1. public class BiultReportForm
  2. {
  3. /// <SUMMARY></SUMMARY>
  4. /// word 应用对象
  5. ///
  6. private Microsoft.Office.Interop.Word.Application _wordApplication;
  7. /// <SUMMARY></SUMMARY>
  8. /// word 文件对象
  9. ///
  10. private Microsoft.Office.Interop.Word.Document _wordDocument;
  11. /// <SUMMARY></SUMMARY>
  12. /// 创建文档
  13. ///
  14. public void CreateAWord()
  15. {
  16. //实例化word应用对象
  17. this._wordApplication = new Microsoft.Office.Interop.Word.ApplicationClass();
  18. Object myNothing = System.Reflection.Missing.Value;
  19. this._wordDocument = this._wordApplication.Documents.Add(ref myNothing, ref myNothing, ref myNothing, ref myNothing);
  20. }
  21. /// <SUMMARY></SUMMARY>
  22. /// 添加页眉
  23. ///
  24. /// <PARAM name="pPageHeader" />
  25. public void SetPageHeader(string pPageHeader)
  26. {
  27. //添加页眉
  28. this._wordApplication.ActiveWindow.View.Type =Microsoft .Office .Interop .Word.WdViewType.wdOutlineView;
  29. this._wordApplication.ActiveWindow.View.SeekView = Microsoft.Office.Interop.Word.WdSeekView.wdSeekPrimaryHeader;
  30. this._wordApplication.ActiveWindow.ActivePane.Selection.InsertAfter(pPageHeader);
  31. //设置中间对齐
  32. this._wordApplication.Selection.ParagraphFormat.Alignment =Microsoft .Office .Interop.Word.WdParagraphAlignment.wdAlignParagraphCenter;
  33. //跳出页眉设置
  34. this._wordApplication.ActiveWindow.View.SeekView = Microsoft.Office.Interop.Word.WdSeekView.wdSeekMainDocument;
  35. }
  36. /// <SUMMARY></SUMMARY>
  37. /// 插入文字
  38. ///
  39. /// <PARAM name="pText" />文本信息
  40. /// <PARAM name="pFontSize" />字体打小
  41. /// <PARAM name="pFontColor" />字体颜色
  42. /// <PARAM name="pFontBold" />字体粗体
  43. /// <PARAM name="ptextAlignment" />方向
  44. public void InsertText(string pText, int pFontSize, Microsoft.Office.Interop.Word.WdColor pFontColor, int pFontBold, Microsoft.Office.Interop.Word.WdParagraphAlignment ptextAlignment)
  45. {
  46. //设置字体样式以及方向
  47. this._wordApplication.Application.Selection.Font.Size = pFontSize;
  48. this._wordApplication.Application.Selection.Font.Bold = pFontBold;
  49. this._wordApplication.Application.Selection.Font.Color= pFontColor;
  50. this._wordApplication.Application.Selection.ParagraphFormat.Alignment = ptextAlignment;
  51. this._wordApplication.Application.Selection.TypeText(pText);
  52. }
  53. /// <SUMMARY></SUMMARY>
  54. /// 换行
  55. ///
  56. public void NewLine()
  57. {
  58. //换行
  59. this._wordApplication.Application.Selection.TypeParagraph();
  60. }
  61. /// <SUMMARY></SUMMARY>
  62. /// 插入一个图片
  63. ///
  64. /// <PARAM name="pPictureFileName" />
  65. public void InsertPicture(string pPictureFileName)
  66. {
  67. object myNothing = System.Reflection.Missing.Value;
  68. //图片居中显示
  69. this._wordApplication.Selection.ParagraphFormat.Alignment = Microsoft.Office.Interop.Word.WdParagraphAlignment.wdAlignParagraphCenter;
  70. this._wordApplication.Application.Selection.InlineShapes.AddPicture(pPictureFileName, ref myNothing, ref myNothing, ref myNothing);
  71. }
  72. /// <SUMMARY></SUMMARY>
  73. /// 保存文件
  74. ///
  75. /// <PARAM name="pFileName" />保存的文件名
  76. public void SaveWord(string pFileName)
  77. {
  78. object myNothing = System.Reflection.Missing.Value;
  79. object myFileName = pFileName;
  80. object myWordFormatDocument =Microsoft .Office .Interop .Word.WdSaveFormat.wdFormatDocument;
  81. object myLockd = false;
  82. object myPassword = "";
  83. object myAddto = true;
  84. try
  85. {
  86. this._wordDocument.SaveAs(ref myFileName, ref myWordFormatDocument, ref myLockd, ref myPassword, ref myAddto, ref myPassword,
  87. ref myLockd, ref myLockd, ref myLockd, ref myLockd, ref myNothing, ref myNothing, ref myNothing,
  88. ref myNothing, ref myNothing, ref myNothing);
  89. }
  90. catch
  91. {
  92. throw new Exception("导出word文档失败!");
  93. }
  94. }
  95. }

c#生成word文档的更多相关文章

  1. Aspose.Words简单生成word文档

    Aspose.Words简单生成word文档 Aspose.Words.Document doc = new Aspose.Words.Document(); Aspose.Words.Documen ...

  2. ASP.NET生成WORD文档,服务器部署注意事项

    网上转的,留查备用,我服务器装的office2007所以修改的是Microsoft Office word97 - 2003 文档这一个. ASP.NET生成WORD文档服务器部署注意事项 1.Asp ...

  3. POI生成WORD文档

    h2:first-child, body>h1:first-child, body>h1:first-child+h2, body>h3:first-child, body>h ...

  4. PowerDesigner将PDM导出生成WORD文档

    PowerDesigner将PDM导出生成WORD文档 环境 PowerDesigner15 1.点击Report Temlates 制作模板 2.如果没有模板,单击New图标创建.有直接双击进入. ...

  5. velocity模板技术生成word文档

    本文介绍採用velocity技术在Java中生成word文档的方法. 1.新建一个word文档,编辑内容例如以下: 2.将上述word文档另存为htm格式的文件 3.新建一个Java Project项 ...

  6. 使用C#动态生成Word文档/Excel文档的程序测试通过后,部署到IIS服务器上,不能正常使用的问题解决方案

    使用C#动态生成Word文档/Excel文档的程序功能调试.测试通过后,部署到服务器上,不能正常使用的问题解决方案: 原因: 可能asp.net程序或iis访问excel组件时权限不够(Ps:Syst ...

  7. 用php生成word文档

    一.用windows里面自带的com,然后用php生成word文档 <?php $word= new COM("word.application") or die(" ...

  8. 将HTML导出生成word文档

    前言: 项目开发中遇到了需要将HTML页面的内容导出为一个word文档,所以有了这边随笔. 当然,项目开发又时间有点紧迫,第一时间想到的是用插件,所以百度了下.下面就介绍两个导出word文档的方法. ...

  9. POI生成word文档完整案例及讲解

    一,网上的API讲解 其实POI的生成Word文档的规则就是先把获取到的数据转成xml格式的数据,然后通过xpath解析表单式的应用取值,判断等等,然后在把取到的值放到word文档中,最后在输出来. ...

随机推荐

  1. hdu4453 Looploop 2012年杭州现场赛 Splay

    题意:维护一个圈,实现六个功能,给某位置起的一些数增加某值,反转某一段数,添加删除某些数,移动当前所指的位置, 简单的splay,把圈拆成链,对于每种操作,处理一下. #define inf 0x3f ...

  2. hdu4699 Editor 2013 多校训练第十场 D题 数列维护 splay | 线段树 | 栈!!!!!

    题意:维护一个文本编辑,并且查询最大前缀和. 写了splay,wa了13次 过了之后觉着特傻逼.发现题解两个栈就可以了,光标前后维护两个栈,维护前面的栈的前缀和 和 最大前缀和. 哎,傻逼,太弱了,还 ...

  3. JAXB 操作XML 与 Object

    Java Architecture for XML Binding) 是一个业界的标准,是一项能够依据XML Schema产生Java类的技术.是一种xml与object映射绑定技术标准. JDK5下 ...

  4. OCP读书笔记(25) - 题库(ExamE)

    401.Which of the following are correct about block media recovery? (Choose all that apply.)A. Physic ...

  5. Git提交代码的处理流程(转)

    Jerry 工作在wchar_support分支.他改变了名称的功能和测试后,他提交他的变化. [jerry@CentOS src]$ git branch master * wchar_suppor ...

  6. SSIS从理论到实战,再到应用

    原文:SSIS从理论到实战,再到应用 一,是什么(What?) 1.SSIS是Microsoft SQL Server Integration Services的简称,是生成高性能数据集成解决方案(包 ...

  7. 使用excel微调button调整日期

    笔者:iamlaosong excel提供了一个调整的数字button.用来调节单元格增加或减少数量.因为它需要值是0-30000.所以不能直接用其调节日期.但能够使用"初始日期+调节值&q ...

  8. 6.跑步者--并行编程框架 ForkJoin

    本文如果您已经了解一般并行编程知识.了解Java concurrent部分如ExecutorService等相关内容. 虽说是Java的ForkJoin并行框架.但不要太在意Java,当中的思想在其他 ...

  9. LeetCode——Flatten Binary Tree to Linked List

    Given a binary tree, flatten it to a linked list in-place. For example, Given 1 / \ 2 5 / \ \ 3 4 6 ...

  10. 【百度地图API】交你如何用百度地图搜索自己的数据!不需数据库!

    原文:[百度地图API]交你如何用百度地图搜索自己的数据!不需数据库! 摘要: 我有一定的房产数据,还有银行数据.我想在百度地图上标注出来,并且能搜索到我这些数据. 可是百度的数据库上并没有我的数据. ...