Збереження документа

Більшість завдань, які необхідно виконати за допомогою Aspose.Words, пов’язані зі збереженням документа. Для збереження документа в Aspose.Words передбачено метод Save класу Document. Документ може бути збережений в будь-якому форматі збереження, підтримуваному Aspose.Words. Список всіх підтримуваних форматів збереження наведено в списку SaveFormat.

Зберегти у файл

Просто використовуйте метод Save з назвою файлу. Aspose.Words визначить формат збереження на основі вказаного вами розширення файлу.

Наступний приклад коду показує, як завантажити та зберегти документ у файл:

For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C
// The path to the documents directories.
System::String inputDataDir = GetInputDataDir_LoadingAndSaving();
System::String outputDataDir = GetOutputDataDir_LoadingAndSaving();
// Load the document from the absolute path on disk.
System::SharedPtr<Document> doc = System::MakeObject<Document>(inputDataDir + u"Document.docx");
System::String outputPath = outputDataDir + u"LoadAndSaveToDisk.docx";
// Save the document as DOC document.");
doc->Save(outputPath);

Зберегти в потоці

Передайте об’єкт stream методу Save. При збереженні в stream необхідно явно вказати формат збереження.

Наступний приклад коду показує, як завантажити та зберегти документ у потоці:

For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C
// The path to the documents directories.
System::String inputDataDir = GetInputDataDir_LoadingAndSaving();
System::String outputDataDir = GetOutputDataDir_LoadingAndSaving();
// Open the stream. Read only access is enough for Aspose.Words to load a document.
System::SharedPtr<System::IO::Stream> stream = System::IO::File::OpenRead(inputDataDir + u"Document.docx");
// Load the entire document into memory.
System::SharedPtr<Document> doc = System::MakeObject<Document>(stream);
// You can close the stream now, it is no longer needed because the document is in memory.
stream->Close();
// ... do something with the document
// Convert the document to a different format and save to stream.
System::SharedPtr<System::IO::MemoryStream> dstStream = System::MakeObject<System::IO::MemoryStream>();
doc->Save(dstStream, SaveFormat::Doc);
// Rewind the stream position back to zero so it is ready for the next reader.
dstStream->set_Position(0);
// Save the document from stream, to disk. Normally you would do something with the stream directly,
// For example writing the data to a database.
System::String outputPath = outputDataDir + u"LoadAndSaveToStream.docx";
System::IO::File::WriteAllBytes(outputPath, dstStream->ToArray());

Ви можете завантажити файл шаблону для цього прикладу з сайту Aspose.Words GitHub.

Зберегти в PCL

Aspose.Words підтримує збереження документа у форматі PCL (мова команд принтера). Aspose.Words дозволяє зберігати документи у форматі PCL 6 (розширений формат PCL 6 або формат PCL XL). Клас PclSaveOptions можна використовувати для вказівки додаткових параметрів при збереженні документа у форматі PCL.

Наступний приклад коду показує, як зберегти документ у PCL за допомогою параметрів збереження:

For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C
// The path to the documents directories.
System::String inputDataDir = GetInputDataDir_LoadingAndSaving();
System::String outputDataDir = GetOutputDataDir_LoadingAndSaving();
// Load the document from disk.
System::SharedPtr<Document> doc = System::MakeObject<Document>(inputDataDir + u"Test File (docx).docx");
System::SharedPtr<PclSaveOptions> saveOptions = System::MakeObject<PclSaveOptions>();
saveOptions->set_SaveFormat(SaveFormat::Pcl);
saveOptions->set_RasterizeTransformedElements(false);
// Export the document as an PCL file.
doc->Save(outputDataDir + u"ConvertDocumentToPCL.pcl", saveOptions);