IPageSavingCallback
Contenido
[
Ocultar
]IPageSavingCallback interface
Implemente esta interfaz si desea controlar cómo Aspose.Words guarda páginas separadas cuando guarda un documento en formatos de página fijos.
public interface IPageSavingCallback
Métodos
Nombre | Descripción |
---|---|
PageSaving(PageSavingArgs) | Se llama cuando Aspose.Words guarda una página separada en formatos de página fijos. |
Ejemplos
Muestra cómo utilizar una devolución de llamada para guardar un documento en HTML página por página.
public void PageFileNames()
{
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.Writeln("Page 1.");
builder.InsertBreak(BreakType.PageBreak);
builder.Writeln("Page 2.");
builder.InsertImage(ImageDir + "Logo.jpg");
builder.InsertBreak(BreakType.PageBreak);
builder.Writeln("Page 3.");
// Crea un objeto "HtmlFixedSaveOptions", que podemos pasar al método "Guardar" del documento
// para modificar cómo convertimos el documento a HTML.
HtmlFixedSaveOptions htmlFixedSaveOptions = new HtmlFixedSaveOptions();
// Guardaremos cada página de este documento en un archivo HTML independiente en el sistema de archivos local.
// Establece una devolución de llamada que nos permite nombrar cada documento HTML de salida.
htmlFixedSaveOptions.PageSavingCallback = new CustomFileNamePageSavingCallback();
doc.Save(ArtifactsDir + "SavingCallback.PageFileNames.html", htmlFixedSaveOptions);
string[] filePaths = Directory.GetFiles(ArtifactsDir).Where(
s => s.StartsWith(ArtifactsDir + "SavingCallback.PageFileNames.Page_")).OrderBy(s => s).ToArray();
Assert.AreEqual(3, filePaths.Length);
}
/// <summary>
/// Guarda todas las páginas en un archivo y directorio especificado dentro.
/// </summary>
private class CustomFileNamePageSavingCallback : IPageSavingCallback
{
public void PageSaving(PageSavingArgs args)
{
string outFileName = $"{ArtifactsDir}SavingCallback.PageFileNames.Page_{args.PageIndex}.html";
// A continuación se muestran dos formas de especificar dónde Aspose.Words guardará cada página del documento.
// 1 - Establece un nombre de archivo para el archivo de la página de salida:
args.PageFileName = outFileName;
// 2 - Crea una secuencia personalizada para el archivo de la página de salida:
args.PageStream = new FileStream(outFileName, FileMode.Create);
Assert.False(args.KeepPageStreamOpen);
}
}
Ver también
- espacio de nombres Aspose.Words.Saving
- asamblea Aspose.Words