文档彩票走势图>>Aspose中文文档>>打开文档以进行只读访问
打开文档以进行只读访问
Aspose.Words是一种高级Word文档处理API,用于执行各种文档管理和操作任务。API支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsoft Word。
Aspose API支持流行文件格式处理,并允许将各类文档导出或转换为固定布局文件格式和最常用的图像/多媒体格式。
有时您想要打开文档来检查或检索某些信息,并且希望以文档保持不变的方式执行此操作。在这些情况下,您希望以只读方式打开文档。
使用 Aspose.WordsAspose.Words 具有公共类WriteProtection,用于指定文档的写保护设置。使用ReadOnlyRecommended属性和SetPassword方法将文档设置为只读以限制编辑。
以下代码示例展示了如何将文档设置为只读:
// For complete examples and data files, please go to //github.com/aspose-words/Aspose.Words-for-.NET Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); builder.Write("Open document as read-only"); // Enter a password that's up to 15 characters long. doc.WriteProtection.SetPassword("MyPassword"); // Make the document as read-only. doc.WriteProtection.ReadOnlyRecommended = true; // Apply write protection as read-only. doc.Protect(ProtectionType.ReadOnly); doc.Save(ArtifactsDir + "DocumentProtection.ReadOnlyProtection.docx");
您还可以使用 Open XML SDK 执行相同的操作。同时请注意,它看起来有些更复杂、更麻烦。下面的代码示例显示了如何添加一些文本并尝试保存更改以显示访问权限是只读的。一旦您有权访问主文档部分的正文,您就可以通过添加Paragraph、Run 和 Text类的实例来添加文本。这会生成所需的WordprocessingML标记。
以下代码示例展示了如何将文档设置为只读:
public void OpenReadOnlyAccessFeature() { // Open a WordprocessingDocument based on a filepath. using (WordprocessingDocument wordDocument = WordprocessingDocument.Open(MyDir + "Open readonly access.docx", false)) { // Assign a reference to the existing document body. Body body = wordDocument.MainDocumentPart.Document.Body; // Attempt to add some text. Paragraph para = body.AppendChild(new Paragraph()); Run run = para.AppendChild(new Run()); run.AppendChild(new Text("Append text in body, but text is not saved - Open wordprocessing document readonly")); // Call the "Save" method to generate an exception and show that access is read-only. using (Stream stream = File.Create(ArtifactsDir + "Open readonly access - OpenXML.docx")) { wordDocument.MainDocumentPart.Document.Save(stream); } } }下载此示例的示例文件。