学习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,布尔值类型。

参考文献

1https://github.com/dotnet/Open-XML-SDK

2https://learn.microsoft.com/zh-cn/office/open-xml/open-xml-sdk

3https://learn.microsoft.com/zh-cn/dotnet/api/documentformat.openxml.wordprocessing.style?view=openxml-3.0.1

4https://blog.csdn.net/i042416/article/details/126228816

5https://learn.microsoft.com/zh-cn/dotnet/api/documentformat.openxml.wordprocessing.writeprotection.cryptographicalgorithmsid?view=openxml-3.0.1

相关推荐
qq_5469372716 天前
Excel批量转PDF_Word_图片,支持自动合并报表,效率翻倍。
pdf·word·excel
(Charon)17 天前
【C++ 面试高频:内存管理、RAII 和智能指针详解】
java·开发语言·word
江畔柳前堤17 天前
github实战指南03-Pull Request 全流程实战
开发语言·人工智能·python·深度学习·github·word
2603_9541383917 天前
PDF 转 Word 工具深度评测:从参数解析到实战避坑
pdf·word
知南x18 天前
【DPDK例程学习】(4) l2fwd
学习·word
江畔柳前堤18 天前
github实战指南00-命令在哪里执行?
人工智能·线性代数·oracle·数据挖掘·github·word
江畔柳前堤18 天前
github实战指南05-Fork与开源协作
人工智能·线性代数·oracle·开源·github·word
yivifu18 天前
怎样将Word文档中脚注引用后面的空格轻松删除
word·vba
Sour19 天前
Word 文档翻译后保留格式的检查清单:标题、表格、图片、目录和批注
pdf·word·办公软件·office·文档翻译
qq_4221525720 天前
Word 文件太大怎么压缩?2026 年文档瘦身方案对比
开发语言·c#·word