LowCodeImageSaveOptions.SaveOptionsProvider
LowCodeImageSaveOptions.SaveOptionsProvider property
Provider of save options for saving generated images.
public AbstractLowCodeSaveOptionsProvider SaveOptionsProvider { get; set; }
Remarks
The output(OutputFile or OutputStream) specified by this instance will take no effect when this property is specified. Instead the output of every generated image will be specified by the provider.
Examples
namespace AsposeCellsExamples
{
using Aspose.Cells;
using Aspose.Cells.LowCode;
using Aspose.Cells.Rendering;
using System;
public class LowCodeImageSaveOptionsPropertySaveOptionsProviderDemo
{
public static void Run()
{
// Create a new workbook
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.Worksheets[0];
// Add sample data
worksheet.Cells["A1"].PutValue("Sample Image Data");
// Create LowCodeImageSaveOptions instance
LowCodeImageSaveOptions saveOptions = new LowCodeImageSaveOptions();
saveOptions.SaveFormat = SaveFormat.Png;
saveOptions.ImageOptions = new ImageOrPrintOptions();
// Create a custom SaveOptionsProvider
CustomSaveOptionsProvider provider = new CustomSaveOptionsProvider();
saveOptions.SaveOptionsProvider = provider;
// Display current SaveOptionsProvider
Console.WriteLine("Current SaveOptionsProvider: " + (saveOptions.SaveOptionsProvider != null ? "Custom Provider" : "null"));
// Demonstrate effect by saving with different options
workbook.Save("output_with_provider.png", saveOptions.SaveFormat);
// Change to null provider
saveOptions.SaveOptionsProvider = null;
Console.WriteLine("Changed SaveOptionsProvider to: " + (saveOptions.SaveOptionsProvider != null ? "Custom Provider" : "null"));
workbook.Save("output_without_provider.png", saveOptions.SaveFormat);
}
}
public class CustomSaveOptionsProvider : AbstractLowCodeSaveOptionsProvider
{
public override LowCodeSaveOptions GetSaveOptions(SplitPartInfo part)
{
// Return custom save options for each part
return new LowCodeImageSaveOptions()
{
SaveFormat = SaveFormat.Jpg, // Changed from Jpeg to Jpg
ImageOptions = new ImageOrPrintOptions()
{
Quality = 90,
HorizontalResolution = 300,
VerticalResolution = 300
}
};
}
public override void Finish(LowCodeSaveOptions part)
{
// Perform any cleanup after saving
Console.WriteLine("Finished saving part with custom options");
}
}
}
See Also
- class AbstractLowCodeSaveOptionsProvider
- class LowCodeImageSaveOptions
- namespace Aspose.Cells.LowCode
- assembly Aspose.Cells