ParagraphFormat 对象【精品】
代表段落的所有格式。
Class ParagraphFormat
说明
ParagraphFormat 对象能从以下对象返回:Paragraph(s),Range,Selection,Find,Replacement,Style。
ParagraphFormat 对象代表指定段落的所有格式。可通过设置 ParagraphFormat 对象来设置指定段落的格式。
ParagraphFormat 对象的大部分属性与“格式”菜单中的“段落”命令中的选项内容对应。
段落属性可以为相对值或者绝对值(段前、段后间距;左、右缩进;首行缩进),二者之间的关系比较复杂的,经分析得出结论用伪代码表示如下:
说明: NABS表示相对值,ABS表示绝对值。
设置NABS
if (value == 0)
return;
else //each Paragraph in Areas all set nabs;-->m_pAreas->ParaPropProxy->SetProp
{
fAbs = FALSE;
nValue = value;
}
设置ABS
for (each paragraph in Areas's paragraphs)
{
Reset all abs;
Ignore all nabs;
}
Remark:
1.分析 Word 得出:
其对话框在设置段落属性时其行为和Api行为有差异,如果先前选中区域中有的段落属性被设置成相对值,再设置绝对值时,Api中具有相对值属性的段落会拒绝再被设置成绝对值的操作。但是对话框却允许,经分析认为,对话框在这种情况下,会先把段落的相对值清空(即把fAbs标志位置为True,nValue置为0),设想Word是通过调用内部函数来实现。故WPS中亦会如此,将会专门提供一个内部函数用于将段落属性的值清空,提供给对话框使用。
2.取属性:
取绝对值属性时,如果fAbs为False,则将nValue的值转换为绝对值返回,否则直接返回。
取相对值属性时,如果fAbs为True,则返回0,否则直接返回。
3.取属性操作的数据来源:
取属性时,会跟Word不一样。Word中,Api返回值来自于选中区域的主选块,而对话框中则来自于整个选中区域的信息。WPS中会统一遵循WORD对话框的行为原则,即从整个选中区域中取属性。
4.重点补充:
如果照Word的规则实现,WPS内部实现改动牵涉面太大,故暂且不遵循Word的行为准则。简单实现如下:
设置属性时,则选中区域统一设置,如果设置绝对值,则统一设置为绝对值,取相对值时,将绝对值转换为相对值返回,不再理睬之前的属性是为相对还是绝对。设置相对值亦然。
获取属性时,属性信息来源于整个选中区域,而非主选块。
属性列表
| 属性 | 描述 |
|---|---|
| AddSpaceBetweenFarEastAndAlpha | 该属性值返回或设置是否在指定段落中自动调整中文与西文之间的间距。Long 类型,可读写。 |
| AddSpaceBetweenFarEastAndDigit | 该属性返回或设置是否在指定段落中自动调整中文与数字之间的间距。Long 类型,可读写。 |
| Alignment | 该属性返回或设置指定段落的对齐方式。WpsParagraphAlignment 类型,可读写。 |
| BaseLineAlignment | 该属性返回或设置段落行中文本的对齐方式。WpsBaselineAlignment 类型,可读写。 |
| Borders | 该属性返回一个 Borders 集合,该集合代表指定段落的所有边框。Borders 类型,只读。 |
| CharacterUnitFirstLineIndent | 该属性返回或设置指定段落的首行缩进量或悬挂缩进量(以字符为单位)。Single类型,可读写。 |
| CharacterUnitLeftIndent | 该属性返回或设置指定段落的缩进量(以字符为单位)。Single类型,可读写。 |
| CharacterUnitRightIndent | 该属性返回或设置指定段落的右缩进量(以字符为单位)。Single类型,可读写。 |
| DisableLineHeightGrid | 该属性返回或设置当指定每页的行数时,是否将指定段落中的字符与行网格对齐。Long 类型,可读写。 |
| Duplicate | 该属性返回一个 ParagraphFormat 对象,代表指定段落的段落格式。ParagraphFormat 类型,只读。 |
| FarEastLineBreakControl | 该属性返回或设置是否将东亚语言文字的换行规则应用于指定的段落。Long 类型,可读写。 |
| FirstLineIndent | 该属性返回或设置首行缩进或悬挂缩进的大小(以磅值表示)。Single 类型,可读写。 |
| KeepTogether | 该属性返回或设置在对文档重新分页时,指定段落中的所有行是否保持在同一页上。Long 类型,可读写。 |
| KeepWithNext | 该属性返回或设置在对文档重新分页时,指定段落与下一段的所有行是否保持在同一页。Long 类型,可读写。 |
| LeftIndent | 该属性返回或设置指定段落的绝对左缩进量(以磅为单位)。Single 类型,可读写。 |
| LineSpacing | 该属性返回或设置指定段落的行距(以磅为单位)。Single 类型,可读写。 |
| LineSpacingRelative | 该属性返回或设置指定段落的行间距(以行为单位)。Single 类型,可读写。 |
| LineSpacingRule | 该属性返回设置指定段落的行距。WpsLineSpacing 类型,可读写。 |
| LineUnitAfter | 该属性返回或设置指定段落的段后间距(以网格线为单位)。Single类型,可读写。 |
| LineUnitBefore | 该属性返回或设置指定段落的段前间距(以网格线为单位)。Single类型,可读写。 |
| OutlineLevel | 该属性返回或设置指定段落的大纲级别。wpsOutlineLevel 类型,可读写。 |
| PageBreakBefore | 该属性返回后设置是否在指定段落前插入分页符。Long 类型,可读写。 |
| RightIndent | 该属性返回或设置指定段落的绝对右缩进量(以磅为单位)。Single 类型,可读写。 |
| Shading | 该属性返回代表指定段落底纹格式的 Shading 对象。Shading 类型,只读。 |
| SpaceAfter | 该属性返回或设置指定段落的段后间距(以磅为单位)。Single 类型,可读写。 |
| SpaceAfterAuto | 该属性返回或设置是否自动设置指定段落的段后间距。Long 类型,可读写。 |
| SpaceAfterRelative | 该属性返回或设置指定段落的段后间距(以行为单位)。Single 类型,可读写。 |
| SpaceBefore | 该属性返回或设置指定段落的段前间距(以磅为单位)。Single 类型,可读写。 |
| SpaceBeforeAuto | 该属性返回或设置是否自动设置指定段落的段前间距。Long 类型,可读写。 |
| SpaceBeforeRelative | 该属性返回或设置指定段落的段前间距(以行为单位)。Single类型,可读写。 |
| TabStops | 该属性返回指定段落中所有的自定义制表位。TabStops 类型,只读。 |
| WidowControl | 该属性返回或设置当重新分页时段的首行和末行是否与段内其他各行位于同页。Long 类型,可读写。 |
| WordWrap | 该属性返回或设置是否在指定段落的西文单词中间断字换行。Long 类型,可读写。 |
方法列表
| 方法 | 描述 |
|---|---|
| CloseUp | 该方法用于清除指定段落的段前间距。 |
| IndentCharWidth | 该方法将指定段落的缩进量增加指定的量(以字符为单位)。 |
| IndentFirstLineCharWidth | 该方法将指定段落的首行缩进量增加指定的量(以字符为单位)。 |
| OpenOrCloseUp | 当各指定段落的段前间距等于 0 时,则该方法将其更改为 12 磅;当各指定段落的段前间距大于 0 时,则该方法将其更改为 0。 |
| OpenUp | 该方法为指定段落设置 12 磅的段前间距。 |
| Reset | 该方法用于删除手动设置的段落格式。 |
| Space1 | 该方法设置指定段落的行距为单倍行距。 |
| Space15 | 该方法设置指定段落的行距为 1.5 倍行距。 |
| Space2 | 该方法设置指定段落的行距为 2 倍行距。 |
| TabHangingIndent | 该方法设置段落的悬挂缩进量(以制表位为单位)。 |
| TabIndent | 该方法用于设置段落的左缩进量(以制表位为单位)。 |
ParagraphFormat 对象【精品】的更多相关文章
- Paragraph 对象'代表所选内容、范围或文档中的一个段落。Paragraph 对象是 Paragraphs 集合的一个成员。Paragraphs 集合包含所选内容、范围或文档中的所有段落。
Paragraph 对象'代表所选内容.范围或文档中的一个段落.Paragraph 对象是 Paragraphs 集合的一个成员.Paragraphs 集合包含所选内容.范围或文档中的所有段落. 方法 ...
- .net使用AsposeWord导出word table表格
本文为原创,转载请注明出处 1.前言 .net平台下导出word文件还可以使用Microsoft.Office.Interop和NPOI,但是这两者都有缺点,微软的Office.Interop组件需要 ...
- VBA在WORD应用中如何将格式应用于选定内容
下列示例使用 Selection 属性将字符和段落格式应用于选定文本.使用 Font 属性获得字体格式的属性和方法,使用 ParagraphFormat 属性获得段落格式的属性和方法. Sub For ...
- [转载]Java生成Word文档
在开发文档系统或办公系统的过程中,有时候我们需要导出word文档.在网上发现了一个用PageOffice生成word文件的功能,就将这块拿出来和大家分享. 生成word文件与我们编辑word文档本质上 ...
- Delphi对Word一些进阶操作
利用VBA 编程,可以使许多日常的任务自动完成,使用户的工作更有效率. 1.在启动时显示打开对话框 一般情况下启动Word,Word 会认为是创建一个新文档.如果只是想打开一个旧文档进行编辑,在Wor ...
- [转载]Java动态生成word文档(图文并茂)
很多情况下,软件开发者需要从数据库读取数据,然后将数据动态填充到手工预先准备好的Word模板文档里,这对于大批量生成拥有相同格式排版的正式文件非常有用,这个功能应用PageOffice的基本动态填充功 ...
- [原创]Java动态生成word文档(图文并茂)
很多情况下,软件开发者需要从数据库读取数据,然后将数据动态填充到手工预先准备好的Word模板文档里,这对于大批量生成拥有相同格式排版的正式文件非常有用,这个功能应用PageOffice的基本动态填充功 ...
- [原创]Java生成Word文档
在开发文档系统或办公系统的过程中,有时候我们需要导出word文档.在网上发现了一个用PageOffice生成word文件的功能,就将这块拿出来和大家分享. 生成word文件与我们编辑word文档本质上 ...
- Aspose.Word 的常见使用(2018-12-26 更新版)
Aspose.Word 的常见使用 起因 因项目需要,而且使用html转Word的时候,样式不兼容问题,于是只能使用Aspose.Word通过代码生成.下面是通过DocumentBuilder来设计W ...
随机推荐
- ScaleIO 1.2 基础
The ScaleIO virtual SAN consists of 3 software components =================== Meta Data Manager (MDM ...
- 修改elementUI组件样式无效的问题研究
问题背景:el-tabs的选项卡默认字体是14px,大了,想改成12px,结果在style里面加样式总是不生效. 解决:样式放到app.vue里面,样式就生效了 .panel-content .el- ...
- Node.js:Buffer(缓冲区)介绍及常用方法
JavaScript 语言自身只有字符串数据类型,没有二进制数据类型. 但在处理像TCP流或文件流时,必须使用到二进制数据.因此在 Node.js中,定义了一个 Buffer 类,该类用来创建一个专门 ...
- hadoop中InputFormat 接口的设计与实现
InputFormat 主要用于描述输入数据的格式, 它提供以下两个功能.❑数据切分:按照某个策略将输入数据切分成若干个 split, 以便确定 Map Task 个数以及对应的 split.❑为 M ...
- Android -- 使用主题配置文件,去掉程序启动界面的短暂黑屏
关于黑屏 默认的情况下,程序启动时,会有一个黑屏的时期,原因是,首个activity会加载一些数据,比如初始化列表数据等. 去除步骤 1./res/values/styles.xml 在 Theme ...
- 【算法】Logistic regression (逻辑回归) 概述
Logistic regression (逻辑回归)是当前业界比较常用的机器学习方法,用于估计某种事物的可能性.比如某用户购买某商品的可能性,某病人患有某种疾病的可能性,以及某广告被用户点击的可能性等 ...
- Thinkphp学习笔记-删除缓存
Thinkphp的缓存数据在Cach文件夹下的Home文件夹下的文临时文件 清除方法:将缓存文件删除就可以了
- .NET-MVC站点部署到windows server2008r2服务器404错误
iis站点搭建 产生原因: 由于服务器上的.net4.0没有进行注册导致的 解决方法: 注册.net 4.0 打开运行-cmd-输入如下命令: C:\WINDOWS\Microsoft.NET\Fra ...
- 为pc编译配置安装当前最新的内核
搜索公众号:itxxgh (IT学习干货),全公益.免费.定期,提供,<IT学习教程>.不会骚扰大家,仅仅需轻点关注,也会传播<中华传统文化>传播正能量. 或扫描二维码 1 ...
- webpack CommonsChunkPlugin 提取公共代码
1.项目结构 2.部分代码 module.js console.log('module.js'); index文件夹下的index.js require('../module.js'); consol ...