Especificar Opciones de Guardado

Al guardar un documento, puede establecer algunas propiedades avanzadas. Aspose.Words le proporciona la clase SaveOptions, que permite un control más preciso del proceso de guardado. Hay sobrecargas del método Save que aceptan un objeto SaveOptions; debe ser un objeto de una clase derivada de la clase SaveOptions. Cada formato de guardado tiene una clase correspondiente que contiene opciones de guardado para este formato de guardado; por ejemplo, hay PdfSaveOptions para guardar en formato PDF, MarkdownSaveOptions para guardar en formato Markdown o ImageSaveOptions para guardar en una imagen. Este artículo proporciona ejemplos de cómo trabajar con algunas clases de opciones derivadas de SaveOptions.

El siguiente ejemplo de código muestra cómo configurar las opciones de guardado antes de guardar el documento en 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);

El artículo describe algunas propiedades que puede controlar al guardar un documento.

Cifrar un Documento Con una Contraseña

Utilice la propiedad Password para obtener o establecer una contraseña para un documento cifrado. Utilice la propiedad Password de la clase correspondiente para trabajar con el formato de documento seleccionado.

Por ejemplo, al guardar un documento en formato DOC o DOT, use la propiedad Password de la clase DocSaveOptions.

El siguiente ejemplo de código muestra cómo establecer una contraseña para cifrar un documento utilizando el método de cifrado 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);

Al guardar un documento en formato ODT, use la propiedad Password de la clase OdtSaveOptions.

El siguiente ejemplo de código muestra cómo cargar y guardar OpenDocument cifrado con una contraseña:

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

No todos los formatos admiten el cifrado y el uso de la propiedad Password.

Mostrar Notificaciones de Progreso de Guardado de Documentos

Aspose.Words ofrece la posibilidad de utilizar la propiedad ProgressCallback para recibir notificaciones sobre el progreso del guardado de documentos.

Ahora está disponible al guardar en DOCX, FlatOpc, DOCM, DOTM, DOTX, HTML, MHTML, EPUB, XamlFlow, XamlFlowPack, o formatos TXT.

Actualizar la Hora de Creación del Documento

Aspose.Words proporciona la capacidad de usar la propiedad CreatedTime para obtener o establecer la fecha de creación del documento en UTC. También puede actualizar este valor antes de guardarlo utilizando la opción UpdateCreatedTimeProperty.

El siguiente ejemplo de código muestra cómo actualizar la hora de creación del documento:

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

Actualizar La Última Propiedad Guardada

Aspose.Words proporciona la capacidad de usar la propiedad UpdateLastSavedTimeProperty para obtener o establecer un valor que determine si la propiedad LastSavedTime se actualiza antes de guardarla.

El siguiente ejemplo de código muestra cómo establecer esta propiedad y guardar el documento:

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

Guarde la Imagen en Blanco y Negro con un Formato de Bit Por Píxel

Para controlar las opciones de guardado de imágenes, se utiliza la clase ImageSaveOptions. Por ejemplo, puede usar la propiedad PixelFormat para establecer el formato de píxeles de las imágenes generadas. Tenga en cuenta que el formato de píxeles de la imagen de salida puede diferir del valor establecido debido al trabajo de GDI+.

El siguiente ejemplo de código muestra cómo guardar una imagen en blanco y negro con un formato de bit por píxel:

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