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

При сохранении документа вы можете установить некоторые расширенные свойства. 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-.NET
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir_LoadingAndSaving();
string fileName = "TestFile RenderShape.docx";
Document doc = new Document(dataDir + fileName);
// This is the directory we want the exported images to be saved to.
string imagesDir = Path.Combine(dataDir, "Images");
// The folder specified needs to exist and should be empty.
if (Directory.Exists(imagesDir))
Directory.Delete(imagesDir, true);
Directory.CreateDirectory(imagesDir);
// Set an option to export form fields as plain text, not as HTML input elements.
HtmlSaveOptions options = new HtmlSaveOptions(SaveFormat.Html);
options.ExportTextInputFormFieldAsText = true;
options.ImagesFolder = imagesDir;
dataDir = dataDir + "Document.SaveWithOptions_out.html";
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-.NET
Document doc = new Document(dataDir + "Document.docx");
DocSaveOptions docSaveOptions = new DocSaveOptions();
docSaveOptions.Password = "password";
dataDir = dataDir + "Document.Password_out.docx";
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-.NET
Document doc = new Document(dataDir + @"encrypted.odt", new Aspose.Words.LoadOptions("password"));
doc.Save(dataDir + "out.odt", new OdtSaveOptions("newpassword"));

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

Показать документ Сохранение уведомлений о прогрессе

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

Теперь он доступен при сохранении в DOCX, FlatOpc, DOCM. DOTМ, 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-.NET
Document doc = new Document(MyDir + "Rendering.docx");
PdfSaveOptions saveOptions = new PdfSaveOptions { UpdateLastPrintedProperty = true };
doc.Save(ArtifactsDir + "WorkingWithPdfSaveOptions.UpdateIfLastPrinted.pdf", saveOptions);

Обновление Last Saved Property

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

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

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

Управление внешними ресурсами при сохранении документа в HTML или SVG

Чтобы преобразовать HTML или SVG в PDF, просто вызовите Save Укажите имя файла с расширением “.PDF”. Если вы хотите загрузить изображения, CSS и т.д. Из внешних источников, вы можете использовать IResourceSavingCallback.

Следующий пример кода показывает, как конвертировать HTML в PDF и загружать изображения из внешних источников:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
public class ImageLoadingWithCredentialsHandler : IResourceLoadingCallback
{
public ImageLoadingWithCredentialsHandler()
{
mWebClient = new WebClient();
}
public ResourceLoadingAction ResourceLoading(ResourceLoadingArgs args)
{
if (args.ResourceType == ResourceType.Image)
{
Uri uri = new Uri(args.Uri);
if (uri.Host == "www.aspose.com")
mWebClient.Credentials = new NetworkCredential("User1", "akjdlsfkjs");
else
mWebClient.Credentials = new NetworkCredential("SomeOtherUserID", "wiurlnlvs");
// Download the bytes from the location referenced by the URI.
byte[] imageBytes = mWebClient.DownloadData(args.Uri);
args.SetData(imageBytes);
return ResourceLoadingAction.UserProvided;
}
else
{
return ResourceLoadingAction.Default;
}
}
private WebClient mWebClient;
}

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

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

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

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
ImageSaveOptions opt = new ImageSaveOptions(SaveFormat.Png);
PageSet pageSet = new PageSet(new PageRange(1, 1));
opt.PageSet = pageSet;
opt.ImageColorMode = ImageColorMode.BlackAndWhite;
opt.PixelFormat = ImagePixelFormat.Format1bppIndexed;
dataDir = dataDir + "Format1bppIndexed_Out.Png";
doc.Save(dataDir, opt);