Открыть документ, доступный только для чтения
Иногда у вас может быть документ, который нуждается в проверке, но вы не хотите, чтобы рецензенты произвольно изменяли ваше содержимое. Aspose.Words позволяет настроить разрешение вашего документа только для чтения, чтобы содержимое можно было копировать или читать, но не изменять. Это предотвратит удаление или добавление содержимого в ваш документ.
В этой статье объясняется, как сделать документ доступным только для чтения.
Сделайте документ доступным только для чтения
Aspose.Words имеет открытый класс WriteProtection, который определяет параметры защиты документа от записи. Экземпляры этого класса не создаются напрямую.
Защита от записи показывает, рекомендовал ли автор открыть документ только для чтения и/или требуется ли пароль для изменения документа.
Aspose.Words позволяет сделать документ доступным только для чтения, чтобы ограничить редактирование, используя свойство read_only_recommended и метод set_password.
В Microsoft Word вы можете создать документ, доступный только для чтения, аналогичным образом, используя оба:
- “Всегда открывать только для чтения” (Файл → Информация → Защитить документ)
- “Пароль для изменения” (Сохранить как → Инструменты → Общие параметры → Пароль)
Пользователи также могут ограничить редактирование документа, выбрав ProtectionType в качестве READ_ONLY, но это еще одна функция, предоставляющая более расширенные возможности защиты. Такая функция есть в Microsoft Word, соответственно, она реализована в Aspose.Words.
ProtectionType будет подробно описано в одной из следующих статей – “Ограничение редактирования документа”.
Свойство read_only_recommended защищено паролем, поэтому, если вы не зададите пароль перед применением свойства read_only_recommended, другие пользователи смогут просто открыть документ, как если бы он был незащищенным. Вы получаете доступ к настройкам защиты документа и устанавливаете пароль для защиты от записи с помощью метода set_password.
Если вам нужно проверить, установлен ли в документе пароль для защиты от записи, который запрещает его редактирование, вы можете использовать свойство is_write_protected.
В следующем примере кода показано, как сделать документ доступным только для чтения:
import aspose.words as aw
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
builder.write("Open document as read-only")
# Enter a password that's up to 15 characters long.
doc.write_protection.set_password("MyPassword")
# Make the document as read-only.
doc.write_protection.read_only_recommended = True
# Apply write protection as read-only.
doc.protect(aw.ProtectionType.READ_ONLY)
doc.save(docs_base.artifacts_dir + "DocumentProtection.ReadOnlyProtection.docx")
Снять ограничение только для чтения
Если вы не хотите, чтобы пользователь открывал ваш документ только для чтения, вы можете просто задать свойству read_only_recommended значение False
или выбрать ProtectionType как NO_PROTECTION.
В следующем примере кода показано, как отключить доступ к документу только для чтения:
import aspose.words as aw
doc = aw.Document()
# Enter a password that's up to 15 characters long.
doc.write_protection.set_password("MyPassword")
# Remove the read-only option.
doc.write_protection.read_only_recommended = False
# Apply write protection without any protection.
doc.protect(aw.ProtectionType.NO_PROTECTION)
doc.save(docs_base.artifacts_dir + "DocumentProtection.RemoveReadOnlyRestriction.docx")