Укажите параметры сохранения

При сохранении документа вы можете задать некоторые дополнительные свойства. Aspose.Words предоставляет вам класс SaveOptions, который позволяет более точно контролировать процесс сохранения. Существуют перегрузки метода Save, которые принимают объект SaveOptions – это должен быть объект класса, производного от класса SaveOptions. Каждому формату сохранения соответствует класс, который содержит параметры сохранения для этого формата сохранения, например, есть PdfSaveOptions для сохранения в формате PDF, MarkdownSaveOptions для сохранения в формате Markdown или ImageSaveOptions для сохранения в изображение. В этой статье приведены примеры работы с некоторыми классами параметров, производными от SaveOptions.

В следующем примере кода показано, как настроить параметры сохранения перед сохранением документа в HTML:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(SpecifySaveOption.class);
String fileName = "TestFile RenderShape.docx";
// Load the document.
Document doc = new Document(dataDir + fileName);
// This is the directory we want the exported images to be saved to.
File imagesDir = new File(dataDir, "Images");
// The folder specified needs to exist and should be empty.
if (imagesDir.exists())
imagesDir.delete();
imagesDir.mkdir();
// Set an option to export form fields as plain text, not as HTML input elements.
HtmlSaveOptions options = new HtmlSaveOptions(SaveFormat.HTML);
options.setExportTextInputFormFieldAsText(true);
options.setImagesFolder(imagesDir.getPath());
dataDir = dataDir + Utils.GetOutputFilePath(fileName);
doc.save(dataDir, options);

В статье описано несколько свойств, которыми вы можете управлять при сохранении документа.

Зашифруйте документ с помощью пароля

Используйте свойство Password, чтобы получить или задать пароль для зашифрованного документа. Используйте свойство Password соответствующего класса для работы с выбранным форматом документа.

Например, при сохранении документа в формате DOC или DOT используйте свойство Password класса DocSaveOptions.

В следующем примере кода показано, как установить пароль для шифрования документа с использованием метода шифрования RC4:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java
Document doc = new Document(dataDir + "Document.doc");
DocSaveOptions docSaveOptions = new DocSaveOptions();
docSaveOptions.setPassword("password");
dataDir = dataDir + "Document.Password_out.doc";
doc.save(dataDir, docSaveOptions);

При сохранении документа в формате ODT используйте свойство Password класса OdtSaveOptions.

В следующем примере кода показано, как загрузить и сохранить OpenDocument в зашифрованном виде с помощью пароля:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java
Document doc = new Document(dataDir + "encrypted.odt", new com.aspose.words.LoadOptions("password"));
doc.save(dataDir + "out.odt", new OdtSaveOptions("newpassword"));

Не все форматы поддерживают шифрование и использование свойства Password.

Показывать уведомления о ходе сохранения документа

Aspose.Words предоставляет возможность использовать свойство ProgressCallback для получения уведомлений о ходе сохранения документа.

Теперь он доступен при сохранении в форматах DOCX, FlatOpc, DOCM, DOTM, DOTX, HTML, MHTML, EPUB, XamlFlow, XamlFlowPack, или TXT.

Обновите время создания документа

Aspose.Words предоставляет возможность использовать свойство CreatedTime для получения или установки даты создания документа в UTC. Вы также можете обновить это значение перед сохранением, используя параметр UpdateCreatedTimeProperty.

В следующем примере кода показано, как обновить время создания документа:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java
// For complete examples and data files, please go to //
// https://github.com/aspose-words/Aspose.Words-for-Java
// Open a document
Document doc = new Document(dataDir + "Rendering.doc");
PdfSaveOptions saveOptions = new PdfSaveOptions();
saveOptions.setUpdateLastPrintedProperty(false);
doc.save(dataDir + "PdfSaveOptions.UpdateIfLastPrinted.pdf", saveOptions);

Обновить последнее сохраненное свойство

Aspose.Words предоставляет возможность использовать свойство UpdateLastSavedTimeProperty для получения или установки значения, определяющего, будет ли свойство LastSavedTime обновлено перед сохранением.

В следующем примере кода показано, как установить это свойство и сохранить документ:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java
Document doc = new Document(dataDir + "Document.doc");
OoxmlSaveOptions ooxmlSaveOptions = new OoxmlSaveOptions();
ooxmlSaveOptions.setUpdateLastSavedTimeProperty(true);
dataDir = dataDir + "UpdateLastSavedTimeProperty_out.docx";
doc.save(dataDir, ooxmlSaveOptions);

Сохранение черно-белого изображения в формате Один бит на пиксель

Для управления параметрами сохранения изображений используется класс ImageSaveOptions. Например, вы можете использовать свойство PixelFormat, чтобы задать формат пикселей для создаваемых изображений. Пожалуйста, обратите внимание, что пиксельный формат выходного изображения может отличаться от заданного значения из-за работы GDI+.

В следующем примере кода показано, как сохранить черно-белое изображение в формате один бит на пиксель:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java
ImageSaveOptions opt = new ImageSaveOptions(SaveFormat.PNG);
opt.setPageSet(new PageSet(1));
opt.setImageColorMode(ImageColorMode.BLACK_AND_WHITE);
opt.setPixelFormat(ImagePixelFormat.FORMAT_1_BPP_INDEXED);
dataDir = dataDir + "Format1bppIndexed_Out.Png";
doc.save(dataDir, opt);