C#处理Word文档
如题,代码如下:
using System;
using System.Windows.Forms;
using Word = Microsoft.Office.Interop.Word;
using System.Runtime.InteropServices;
using Microsoft.Office.Core;namespace WindowsFormsApp1654
{public class WordTool{#region 公文内容格式设置/// <summary>/// 公文内容格式设置,传入Document对象/// </summary>/// <param name="doc">Document对象</param>public void docFormatSetting(Word.Document doc){/*属性Alignment 返回或设置一个 WdParagraphAlignment 常量,该常量代表指定段落的对齐方式。AutoAdjustRightIndent 设置为自动调整指定段落的右缩进(如果您指定了每行的字符数)。CharacterUnitFirstLineIndent 返回或设置首行或悬挂缩进的值 (以字符为单位)。 用正值设置首行缩进,并使用一个负值设置悬挂缩进。CharacterUnitLeftIndent 返回或设置指定段落的左缩进值 (以字符为单位)。CharacterUnitRightIndent 该属性返回或设置指定段落的右缩进量(以字符为单位)。FirstLineIndent 返回或设置首行的行或悬挂缩进的值 (以磅为单位)。 用正数设置首行缩进的尺寸,用负数设置悬挂缩进的尺寸。Hyphenation 如果指定段落的段包括在自动断字功能。 假 如果指定的段落不进行自动断字。 可以为 真 ,或者 wdUndefined 则 为 False 。LineSpacing 返回或设置指定段落的行距 (以磅为单位)。LineUnitAfter 返回或设置指定段落的段后间距 (以网格线)。LineUnitBefore 返回或设置指定段落的段前间距 (以网格线) 的数量。OutlineLevel 返回或设置指定段落的大纲级别。SpaceAfter 返回或设置指定段落的段后间距(以磅为单位)的量。SpaceBefore 返回或设置指定段落的段前间距 (以磅为单位)。方法CloseUp() 清除指定段落前的段落间距。
IndentFirstLineCharWidth(Int16) 将一个或多个段落的首行缩进指定的字符数。
Space15() 为指定段落设置 1.5 倍行距。 精确间距为各段内最大字符的字号加上 6 磅。
Space2() 为指定段落设置 2 倍行距。 精确间距为各段内最大字符的字号加上 12 磅。*/doc.Application.Selection.WholeStory();//全选内容doc.Application.Selection.ClearFormatting();//清除格式doc.Application.Selection.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphJustifyLow;//设置对齐方式为两端对齐doc.Application.Selection.ParagraphFormat.LineSpacing = 28.9f;//设置行间距为28.9磅doc.Application.Selection.ParagraphFormat.CharacterUnitFirstLineIndent = 2;//首行缩进2字符doc.Application.Selection.Font.Name = "仿宋_GB2312";//设置字体为"仿宋_GB2312"doc.Application.Selection.Font.Size =16;//设置字体为3号}#endregion#region 版面设置/// <summary>/// 文档版面设置/// </summary>/// <param name="doc">document对象</param>public void docPageSetup(Word.Document doc){doc.PageSetup.TopMargin = doc.Application.CentimetersToPoints(float.Parse("3.8"));//上页边距doc.PageSetup.BottomMargin = doc.Application.CentimetersToPoints(float.Parse("3.6"));//下页边距doc.PageSetup.LeftMargin = doc.Application.CentimetersToPoints(float.Parse("2.6"));//左页边距doc.PageSetup.RightMargin = doc.Application.CentimetersToPoints(float.Parse("2.6"));//右页边距}#endregion#region 图片设置/// <summary>/// 设置图片大小和对齐方式/// </summary>/// <param name="doc">传入document对象</param>/// <param name="h">要设置的图片高,单位为厘米</param>/// <param name="w">要设置的图片宽,单位为厘米</param>public void pictureSet(Word.Document doc,float h,float w){foreach (Word.Shape shape in doc.Shapes){Word.InlineShape inlineshape = shape.ConvertToInlineShape();}foreach (Word.InlineShape inlineshape in doc.InlineShapes){inlineshape.LockAspectRatio =Microsoft.Office.Core.MsoTriState.msoFalse;//改变大小时不保持纵横比inlineshape.Height = doc.Application.CentimetersToPoints(h);inlineshape.Width = doc.Application.CentimetersToPoints(w);inlineshape.Select();doc.Application.Selection.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphCenter;//设置图片居中对其}}#endregion}
}
参考:
https://www.cnblogs.com/arxive/p/7426588.html;
https://www.cnblogs.com/xh6300/p/5915717.html;
https://www.cnblogs.com/tianma3798/p/3558140.html
https://blog.csdn.net/lu930124/article/details/84743752
https://www.cnblogs.com/tianma3798/p/3558140.html
https://www.cnblogs.com/xh6300/p/5915717.html
https://www.php.cn/csharp-article-395632.html
C#处理Word文档相关推荐
- python操作word文档(python-docx)
python操作word文档(python-docx) 1. 效果图 1.1 python-docx文档标题段落(等级.加粗.斜体.居中)效果图 1.2 python-docx字体(加粗.斜体.居中. ...
- 计算机桌面分页,电脑word文档怎么快速分页?
电脑word文档怎么快速分页? word是我们经常使用的办公软件之一.今天小编给大家介绍的就是word实现文档快速分页的方法. 具体如下: 1. 首先我们打开一篇word文档.文档最好有多个段落. 2 ...
- php导出doc文件_PHP生成Word文档的方法
PHP生成Word文档的方法 首先,请确保在你的Windows系统中已经安装并配置好了一个典型的WAMP环境.由于Interop纯粹是一个Windows的特性,我们将在Windows平台下搭建Apac ...
- Word文档使用密码加密
Word文档使用密码加密 方法如下: 文件-->信息-->保护文档-->用密码进行加密-->设置密码
- 使用iText在word文档中插入复杂的Table表格
iText是著名的开放源码的站点sourceforge一个项目,是用于生成PDF文档和word文档的一个java类库.通过iText不仅可以生成PDF或rtf 的文档,而且可以将XML.Html文件转 ...
- vb 怎样指定 dll 引用路径_C#/VB.NET 比较两个Word文档差异
本文以C#和http://VB.NET代码为例,来介绍如何对比两个Word文档差异.程序中使用最新版的Spire.Doc for .NET 版本8.8.2.编辑代码前,先在VS程序中添加引用Spire ...
- java 流转文件_java 实现 word 文档的在线编辑以及流转
用 pageoffice 实现文档的在线编辑以及文档流转 1: 流程 用修改无痕迹模式起草文件,各个领导批注自己意见的时候使用强制留痕模式打开,文员清稿的时候用核稿模式打开,还有最后只读模式打开发布的 ...
- python批量提取word指定内容_使用python批量读取word文档并整理关键信息到excel表格的实例...
目标 最近实验室里成立了一个计算机兴趣小组 倡议大家多把自己解决问题的经验记录并分享 就像在CSDN写博客一样 虽然刚刚起步 但考虑到后面此类经验记录的资料会越来越多 所以一开始就要做好模板设计(如下 ...
- 扫描PDF转换成word文档如何操作
扫描PDF文件转换成word文档如何进行操作呢?作为一般的PDF文件介于它的文件大小都不够大,普通的转换功能都能进行操作,文件过大的话就需要用到扫描PDF转word这种操作,那么关于它的操作是怎样的呢 ...
- .NET 动态向Word文档添加数据
本文章主要用于在网页上填写数据动态填入Word模板中使用 首先要准备一个Word模板,然后在需要插入数据的位置插入书签,这样可以确定在网页上填入的数据可以插入到Word文档相应的位置. 在项目中要声明 ...
最新文章
- 深度学习遇上稀缺数据就无计可施?这里有几个好办法
- Webcast 系列课程 NET最全,最权威的学习资源
- Python ConfigParser 模块
- linux守护进程原理及创建详解
- 【CyberSecurityLearning 6】IIS之WEB服务器和FTP服务器
- .NET Core 3.0深入源码理解HttpClientFactory之实战
- linux网络是文件吗,linux网络配置文件是什么意思
- 【Elasticsearch】使用 Elasticsearch 轻松进行文本分类
- sc7cb27180 士兰微_供应 SILAN/士兰微 SC7A30E SC7A30 LGA10-3A 加速度计/三轴磁传感器
- excel range 判断日期型_EXCEL常用函数二
- 如果你是加勒比海盗首领,会选择哪种算法来使价值最大化?
- WordPress资源源码网站源码下载/整站打包【带1200数据】
- debian10编译安装mysql
- (生活篇)对恋爱谈心大事件的思考与反思——于五周年纪念日20211225
- Hexo butterfly 自定义文章封面 主页顶部图片更改
- 打乱mysql数据顺序_打乱数据库表内的数据顺序
- 杂谈:Perl6 树莓Pi Erlang win10 Clojure
- Java数组中插入元素
- python如何截长图_selenium定时爬取长截图
- 图像聚光灯 Image Spotlight for Vue