学习C#调用OpenXml操作word文档的基本用法(13:学习文档设置类)

OpenXml中使用DocumentSettingsPart类保存Word文档的文档级设置,例如文档保护、字段更新行为等信息。采用解压缩软件打开Word文档,其内的word文件夹中有独立的settings.xml文件,用于保存文档设置信息。
  1)WriteProtection属性:用于文档的写入保护设置。 写入保护是指无法编辑文档内容的模式,并且不能使用相同的文件名重新保存文档。类型为WriteProtection,其主要属性如下表所示:

序号 名称 说明
1 Recommended 在用户界面中推荐写入保护,OnOffValue类型
2 CryptographicProviderType 加密提供程序类型,从枚举值CryptProviderValues内取值,如RsaFull、Custom等
3 CryptographicAlgorithmClass 加密算法类,从枚举值CryptAlgorithmClassValues内取值,如Hash、Custom等
4 CryptographicAlgorithmType 加密算法类型,从枚举值CryptAlgorithmValues内取值,如TypeAny、Custom等
5 CryptographicAlgorithmSid 加密哈希算法,类型为Int32Value,如1(MD2)、2(MD4)、3(MD5)、4(SHA-1)等,详细介绍见参考文献5
6 CryptographicSpinCount 运行哈希算法的迭代次数,类型为UInt32Value
7 CryptographicProvider 加密提供程序,字符串类型
8 AlgorithmIdExtensibility 加密算法扩展性,此值应基于特性的值 algIdExtSource 进行解释,以确定使用的算法,
9 AlgorithmIdExtensibilitySource 算法扩展性源,指定定义特性指定的algIdExt算法值的应用程序
10 CryptographicProviderTypeExtensibility 加密提供程序类型扩展性,指定已使用Office Open XML标准版未定义的加密提供程序类型来生成随本文档一起存储的哈希值
11 CryptographicProviderTypeExtSource 提供程序类型扩展性源,指定定义由 cryptProviderTypeExt 特性指定的提供程序类型值的应用程序
12 Hash 密码哈希,指定随文档一起存储的密码的哈希值
13 Salt 密码验证程序
14 AlgorithmName 指定自定义加密算法的名称

2)View属性:用于文档视图设置,指定应用程序打开时应显示文档内容的方式,类型为View,从枚举值ViewValues内取值。

  3)Zoom属性:用于放大设置,指定应用程序显示文档时应应用于文档的放大级别,类型为Zoom,主要包括Percent 、Val,前者设置缩放百分比,后者从枚举值PresetZoomValues内取值。

  4)RemovePersonalInformation属性:设置是否从文档属性中删除个人信息,类型为RemovePersonalInformation,布尔值类型。
  5)RemoveDateAndTime属性:设置是否从批注中删除日期和时间,类型为RemoveDateAndTime,布尔值类型。
  6)DoNotDisplayPageBoundaries属性:设置是否显示页眉/页脚或页之间的视觉边界,类型为DoNotDisplayPageBoundaries,布尔值类型。
  7)DisplayBackgroundShape属性:设置是否显示文档时显示背景对象,类型为DisplayBackgroundShape,布尔值类型。
  8)PrintPostScriptOverText属性:设置是否使用文档文本打印PostScript代码,类型为PrintPostScriptOverText,布尔值类型。
  9)PrintFractionalCharacterWidth属性:设置是否打印小数字符宽度,类型为PrintFractionalCharacterWidth,布尔值类型。
  10)PrintFormsData属性:设置是否仅打印表单字段内容,类型为PrintFormsData,布尔值类型。
  11)EmbedTrueTypeFonts属性:设置是否嵌入TrueType字体,类型为EmbedTrueTypeFonts,布尔值类型。
  12)EmbedSystemFonts属性:设置是否嵌入通用系统字体,类型为EmbedSystemFonts,布尔值类型。
  13)SaveSubsetFonts属性:设置是否保存嵌入时的子集字体,类型为SaveSubsetFonts,布尔值类型。
  14)SaveFormsData属性:设置是否仅保存表单字段内容,类型为SaveFormsData,布尔值类型。
  15)MirrorMargins属性:设置是否启用镜像页边距,类型为MirrorMargins,布尔值类型。
  16)AlignBorderAndEdges属性:设置是否将段落边框和表格边框与页面边框对齐,类型为AlignBorderAndEdges,布尔值类型。
  17)BordersDoNotSurroundHeader属性:设置是否页面边框排除页眉,类型为BordersDoNotSurroundHeader,布尔值类型。
  18)BordersDoNotSurroundFooter属性:设置是否页面边框排除页脚,类型为BordersDoNotSurroundFooter,布尔值类型。
  19)GutterAtTop属性:设置是否将Gutter置于页面顶部,类型为GutterAtTop,布尔值类型。
  20)HideSpellingErrors属性:设置是否隐藏拼写错误的视觉指示,类型为HideSpellingErrors,布尔值类型。
  21)HideGrammaticalErrors属性:设置是否隐藏语法错误的视觉指示,类型为HideGrammaticalErrors,布尔值类型。

参考文献

1\]https://github.com/dotnet/Open-XML-SDK \[2\]https://learn.microsoft.com/zh-cn/office/open-xml/open-xml-sdk \[3\]https://learn.microsoft.com/zh-cn/dotnet/api/documentformat.openxml.wordprocessing.style?view=openxml-3.0.1 \[4\]https://blog.csdn.net/i042416/article/details/126228816 \[5\]https://learn.microsoft.com/zh-cn/dotnet/api/documentformat.openxml.wordprocessing.writeprotection.cryptographicalgorithmsid?view=openxml-3.0.1

相关推荐
trayvontang3 小时前
word格式原理与编号解析
word·word编号·word解析
huluang3 小时前
高性能Word文档批注处理器的设计与实现
开发语言·c#·word
gc_22995 小时前
学习C#调用OpenXml操作word文档的基本用法(12:读取文档字体表)
word·openxml·字体表
weixin_462446231 天前
【原创实践】Python 将 Markdown 文件转换为 Word(docx)完整实现
开发语言·python·word
_修铁路的1 天前
【Poi-tl】 Word模板填充导出
java·word·poi-tl
gc_22992 天前
学习C#调用OpenXml操作word文档的基本用法(11:操作文档缩略图)
word·缩略图·openxml
无敌的黑星星2 天前
office 批量word转pdf
pdf·word·vba
CodeCraft Studio2 天前
国产化Word处理控件Spire.Doc教程:使用C# 编程方式批量转换Word为RTF
开发语言·c#·word·spire.doc·word文档转换·word开发组件·word api库
console.log('npc')2 天前
vue3文件上传弹窗,图片pdf,word,结合预览kkview
前端·javascript·vue.js·pdf·word