Controlla il caricamento di Risorse Esterne nel Lavoro MS Excel mentre viene convertito in PDF

Possibili Scenari di Utilizzo

Il tuo file Excel potrebbe contenere risorse esterne come immagini o oggetti collegati. Quando converti il tuo file Excel in PDF, Aspose.Cells recupera queste risorse esterne e le rende in PDF. Ma a volte, non vuoi caricare queste risorse esterne e, inoltre, vuoi manipolarle. Puoi farlo usando WorkbookSettings.StreamProvider che implementa l’interfaccia IStreamProvider.

Controlla il caricamento di Risorse Esterne nel Lavoro MS Excel mentre viene convertito in PDF

Il codice di esempio seguente spiega come utilizzare WorkbookSettings.StreamProvider per controllare il caricamento di risorse esterne e manipolarle. Si prega di controllare il file Excel di esempio utilizzato all’interno del codice e il PDF di output generato dal codice. Lo screenshot mostra come la vecchia immagine esterna nel file Excel di esempio è stata sostituita con una nuova immagine nel PDF di output.

todo:image_alt_text

Codice di Esempio

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
//Implement IStreamProvider
class MyStreamProvider : IStreamProvider
{
public void CloseStream(StreamProviderOptions options)
{
System.Diagnostics.Debug.WriteLine("-----Close Stream-----");
}
public void InitStream(StreamProviderOptions options)
{
string sourceDir = RunExamples.Get_SourceDirectory();
System.Diagnostics.Debug.WriteLine("-----Init Stream-----");
//Read the new image in a memory stream and assign it to Stream property
byte[] bts = File.ReadAllBytes(sourceDir + "newPdfSaveOptions_StreamProvider.png");
MemoryStream ms = new MemoryStream(bts);
options.Stream = ms;
}
}
public static void Run()
{
//Source directory
string sourceDir = RunExamples.Get_SourceDirectory();
//Output directory
string outputDir = RunExamples.Get_OutputDirectory();
//Load source Excel file containing external image
Workbook wb = new Workbook(sourceDir + "samplePdfSaveOptions_StreamProvider.xlsx");
//Specify Pdf Save Options - Stream Provider
PdfSaveOptions opts = new PdfSaveOptions();
opts.OnePagePerSheet = true;
wb.Settings.ResourceProvider = new MyStreamProvider();
//Save the workbook to Pdf
wb.Save(outputDir + "outputPdfSaveOptions_StreamProvider.pdf", opts);
Console.WriteLine("ControlLoadingOfExternalResourcesInExcelToPDF executed successfully.\r\n");
}