社区
C#
帖子详情
C#怎样生成固定文章格式word文档
傻瓜打蠢驴
2013-09-01 10:46:22
给出文章的标题、二级标题、正文以及表格,怎么样生成一个word文档,是否需要对word文档内部xml文件进行解析,把内容存入再输出? 这个过程是怎么样的,请求帮忙
...全文
274
5
打赏
收藏
C#怎样生成固定文章格式word文档
给出文章的标题、二级标题、正文以及表格,怎么样生成一个word文档,是否需要对word文档内部xml文件进行解析,把内容存入再输出? 这个过程是怎么样的,请求帮忙
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Sundays
2013-09-03
打赏
举报
回复
先在word里写出你的想要的格式(标题、二级标题、正文以及表格),然后查看对应的宏语言,将其转为C#语言就可以了(不过内容要自己在中间输入)
人生导师
2013-09-02
打赏
举报
回复
参考:
http://www.cnblogs.com/hyl8218/archive/2010/08/02/1790677.html
全栈极简
2013-09-01
打赏
举报
回复
创建一个模版,在里面创建好相应的占位符,然后读取数据替换即可。 refer:
http://blog.csdn.net/chinacsharper/article/details/8980456
threenewbee
2013-09-01
打赏
举报
回复
设定一个模板,设好各种样式的格式。用这个模板创建文档,根据你的要求,应用这些样式。这是最简单的。
qizhf3
2013-09-01
打赏
举报
回复
System.Type wordType = System.Type.GetTypeFromProgID("Word.Application"); //创建word对象 Object word = System.Activator.CreateInstance(wordType); wordType.InvokeMember("Visible", BindingFlags.SetProperty, null, word, new Object[] { true }); //让Word.Application可见; Object documents = wordType.InvokeMember("Documents", BindingFlags.GetProperty, null, word, null); Object document = documents.GetType().InvokeMember("Add", BindingFlags.InvokeMethod, null, documents, new Object[] { Application.StartupPath + "\\空.dot" }); //新增一个文档,用New代替Add不行 Object tables = document.GetType().InvokeMember("Tables", BindingFlags.GetProperty, null, document, null); Object selection = wordType.InvokeMember("Selection", BindingFlags.GetProperty, null, word, null); //================================================================================================= const int wdAlignParagraphCenter = 1, wdAlignParagraphJustify = 3, wdCellAlignVerticalCenter = 1; Object paragraphFormat = selection.GetType().InvokeMember("ParagraphFormat", BindingFlags.GetProperty, null, selection, null); paragraphFormat.GetType().InvokeMember("Alignment", BindingFlags.SetProperty, null, paragraphFormat, new Object[] { wdAlignParagraphCenter }); //注意这里是SetProperty Object font = selection.GetType().InvokeMember("Font", BindingFlags.GetProperty, null, selection, null); font.GetType().InvokeMember("Size", BindingFlags.SetProperty, null, font, new Object[] { 15 }); font.GetType().InvokeMember("Bold", BindingFlags.SetProperty, null, font, new Object[] { true }); selection.GetType().InvokeMember("TypeText", BindingFlags.InvokeMethod, null, selection, new Object[] { " 的C# Word报表" }); selection.GetType().InvokeMember("TypeParagraph", BindingFlags.InvokeMethod, null, selection, null); Object range = selection.GetType().InvokeMember("Range", BindingFlags.GetProperty, null, selection, null); Object[] arg = new Object[3]; arg[0] = range; arg[1] = this.dataGridView1.RowCount + 2; //表格行数 arg[2] = this.dataGridView1.ColumnCount; //表格列数 Object table = tables.GetType().InvokeMember("Add", BindingFlags.InvokeMethod, null, tables, arg); //创建新表格,最后一个参数直接用new Object[] { range, 2, 5 }也是可以的; for (int i = 0; i < dataGridView1.ColumnCount; i++) { Object cell = table.GetType().InvokeMember("Cell", BindingFlags.InvokeMethod, null, table, new Object[] { 1, i + 1 }); //访问表格第1行,第1列,注意这里不是GetProperty Object cellRange = cell.GetType().InvokeMember("Range", BindingFlags.GetProperty, null, cell, null); cellRange.GetType().InvokeMember("Bold", BindingFlags.SetProperty, null, cellRange, new Object[] { 1 }); Object row = rows.GetType().InvokeMember("Item", BindingFlags.InvokeMethod, null, rows, new Object[] { 1 }); Object rowCells = row.GetType().InvokeMember("Cells", BindingFlags.GetProperty, null, row, null); rowCells.GetType().InvokeMember("VerticalAlignment", BindingFlags.SetProperty, null, rowCells, new Object[] { wdCellAlignVerticalCenter }); cellRange.GetType().InvokeMember("InsertAfter", BindingFlags.InvokeMethod, null, cellRange, new Object[] { dataGridView1.Columns[i].Name }); }
C#
操作Word模拟解析HTML标记输出带
格式
的文本
本文介绍如何在
C#
中通过解析HTML标记动态设置
Word文档
中文本的
格式
。利用正则表达式提取样式信息,并结合Word Interop对字符级范围进行字体、颜色等
格式
化操作,解决了模板中多样化文本样式的输出需求。
如何使用
C#
高效删除 Word 文档中的指定页或空白页
本文介绍如何使用
C#
结合Spire.Doc库自动化删除
Word文档
中的空白页及指定页。涵盖库安装、删除空白页与特定页的完整流程、关键API调用(如RemoveBlankPages、RemovePage)、页面索引处理机制,以及删除操作中关于索引准确性、
格式
兼容性、资源释放和文档备份等核心注意事项。
Word处理控件Aspose.Words功能演示:使用
C#
拆分 MS Word 文档
本文介绍了如何使用Aspose.Wordsfor.NETAPI来拆分MS
Word文档
。这个高级API支持按部分、页面或页面范围拆分文档,无需依赖MicrosoftWord。
文章
提供了
C#
代码示例,展示了如何实现按部分、逐页以及按页面范围拆分
Word文档
。
C#
中操作Word组件的完全指南
本文介绍在
C#
中使用COM组件操作Word应用程序的方法。先阐述
C#
与COM组件交互的方式,接着说明Word COM组件在企业自动化办公、文档批量处理等场景的应用,还讲解在Visual Studio中操作Word对象库的步骤,最后介绍创建Word实例、文档高级操作及异常处理等内容。
Word处理控件Aspose.Words功能演示:使用
C#
在 Word 文档中创建和修改 VBA 宏
Aspose.Words是一个高级API,用于在不依赖MicrosoftWord的情况下处理
Word文档
,包括VBA宏的添加和修改。
文章
提供了
C#
代码示例,展示如何在文档中创建和修改VBA宏,以及如何利用API创建重复节内容控件,使用XML、JSON和CSV数据源
生成
LINQ报告,并将自定义文档属性链接到书签。
C#
111,129
社区成员
642,541
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章