Guardar um documento

A maioria das tarefas que você precisa executar com Aspose.Words envolve salvar um documento. Para salvar um documento, Aspose.Words fornece o método Save da classe Document. O documento pode ser guardado em qualquer formato de gravação suportado por Aspose.Words. Para obter a lista de todos os formatos de gravação suportados, consulte a enumeração SaveFormat.

Salvar em um arquivo

Basta usar o método Save com um nome de arquivo. Aspose.Words irá determinar o formato de gravação da extensão de ficheiro que especificar.

O exemplo de código a seguir mostra como carregar e salvar um documento em um arquivo:

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);

Salvar em um fluxo

Passe um objeto stream para o método Save. É necessário especificar explicitamente o formato de salvamento ao salvar em um fluxo.

O exemplo de código a seguir mostra como carregar e salvar um documento em um fluxo:

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());

Você pode baixar o arquivo de modelo deste exemplo em Aspose.Words GitHub.

Salvar em PCL

Aspose.Words suporta a gravação de um documento em PCL (Linguagem de comando da Impressora). Aspose.Words pode salvar documentos em PCL 6 (PCL 6 Formato melhorado ou PCL XL). A classe PclSaveOptions pode ser usada para especificar opções adicionais ao salvar um documento no formato PCL.

O exemplo de código a seguir mostra como salvar um documento em PCL usando as opções salvar:

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);