Modifiche all API pubblica in Aspose.Cells 8.7.0
API aggiunte
Supporto per la firma digitale del progetto VBA, rilevamento ed estrazione
Questa release di Aspose.Cells for .NET ha esposto alcune nuove proprietà e metodi per aiutare gli utenti nelle attività come la firma digitale di un progetto VBA, il rilevamento se un progetto VBA è firmato e valido. Inoltre, la nuova API consente di estrarre il certificato come dati grezzi dal progetto VBA firmato digitalmente in Workbook.
Firma digitalmente il progetto VBA
Aspose.Cells for .NET 8.7.0 ha esposto il metodo VbaProject.Sign che può essere utilizzato per firmare digitalmente il progetto VBA in un Workbook. Il suddetto metodo accetta un’istanza della classe DigitalSignature che risiede nello spazio dei nomi Aspose.Cells.DigitalSignatures.
Di seguito è riportato il semplice scenario d’uso.
C#
//Create an instance of Workbook
//Optionally load an existing spreadsheet
var book = new Workbook();
//Access the VbaProject from the Workbook
var vbaProject = book.VbaProject;
//Sign the VbaProject using the X509Certificate
vbaProject.Sign(new DigitalSignature(new System.Security.Cryptography.X509Certificates.X509Certificate2(cert), "Comments", DateTime.Now));
Rilevamento del progetto VBA firmato digitalmente
La nuova proprietà VbaProject.IsSigned esposta può essere utilizzata per rilevare se il progetto VBA in un Workbook è firmato digitalmente. La proprietà VbaProject.IsSigned è di tipo Boolean, che restituisce true se il progetto VBA è firmato digitalmente e viceversa.
Di seguito è riportato il semplice scenario d’uso.
C#
//Create an instance of Workbook and load an existing spreadsheet
var book = new Workbook(inFilePath);
//Access the VbaProject from the Workbook
var vbaProject = book.VbaProject;
//Check if VbaProject is digitally signed
if (vbaProject.IsSigned)
{
Console.WriteLine("VbaProject is digitally signed");
}
else
{
Console.WriteLine("VbaProject is not digitally signed");
}
Estrazione della firma digitale dal progetto VBA
Questa revisione dell’API ha esposto anche la proprietà VbaProject.CertRawData che consente di estrarre i dati grezzi del certificato digitale dal progetto VBA. La proprietà VbaProject.CertRawData è di tipo array di byte, che conterrà i dati grezzi del certificato se il progetto VBA è firmato digitalmente, altrimenti la suddetta proprietà sarà nulla.
Di seguito è riportato il semplice scenario d’uso.
C#
//Create an instance of Workbook and load an existing spreadsheet
var book = new Workbook(inFilePath);
//Access the VbaProject from the Workbook
var vbaProject = book.VbaProject;
//Extract digital signature in an array of bytes
var cert = vbaProject.CertRawData;
Convalida della firma digitale del progetto VBA
Un’altra aggiunta all’API pubblica è la proprietà VbaProject.IsValidSigned che potrebbe essere utile nel validare la firma digitale del progetto VBA. La suddetta proprietà restituisce true se la firma digitale è valida e false se la firma è non valida.
Di seguito è riportato il semplice scenario d’uso.
C#
//Create an instance of Workbook and load an existing spreadsheet
var book = new Workbook(inFilePath);
//Access the VbaProject from the Workbook
var vbaProject = book.VbaProject;
//Check if VbaProject is digitally signed
if (vbaProject.IsSigned)
{
//Check if signature is valid
if (vbaProject.IsValidSigned)
{
Console.WriteLine("VbaProject is digitally signed & signature is valid");
}
}
Aggiunto il metodo Protection.VerifyPassword
Aspose.Cells for .NET 8.7.0 ha esposto il metodo Protection.VerifyPassword che può essere utilizzato per verificare la password utilizzata per proteggere il Foglio di lavoro. Questo metodo accetta un’istanza di stringa come parametro e restituisce true se la password specificata corrisponde alla password utilizzata per proteggere il Foglio di lavoro.
Di seguito è riportato il semplice scenario d’uso.
C#
//Create an instance of Workbook and load an existing spreadsheet
var book = new Workbook(inFilePath);
//Access the desired Worksheet via its index or name
var sheet = book.Worksheets[0];
//Access Protection module of desired Worksheet
var protection = sheet.Protection;
//Verify the password for Worksheet
if (protection.VerifyPassword(password))
{
Console.WriteLine("Password has matched");
}
else
{
Console.WriteLine("Password did not match");
}
Aggiunta la proprietà Protection.IsProtectedWithPassword
Questa release dell’API Aspose.Cells for .NET ha esposto anche la proprietà Protection.IsProtectedWithPassword che può essere utile nel rilevare se un Foglio di lavoro è protetto da password o meno.
Di seguito è riportato il semplice scenario d’uso.
C#
//Create an instance of Workbook and load an existing spreadsheet
var book = new Workbook(inFilePath);
//Access the desired Worksheet via its index or name
var sheet = book.Worksheets[0];
//Access Protection module of desired Worksheet
var protection = sheet.Protection;
//Check if Worksheet is password protected
if (protection.IsProtectedWithPassword)
{
Console.WriteLine("Worksheet is password protected");
}
else
{
Console.WriteLine("Worksheet is not password protected");
}
Proprietà aggiunta ColorScale.Is3ColorScale
Aspose.Cells for .NET 8.7.0 ha esposto la proprietà ColorScale.Is3ColorScale che può essere utilizzata per creare la formattazione condizionale con Scala colori a 2 colori. La suddetta proprietà è di tipo Boolean con valore predefinito true, il che significa che la formattazione condizionale sarà di Scala colori a 3 colori per impostazione predefinita. Tuttavia, passando la proprietà ColorScale.Is3ColorScale a false verrà generata una formattazione condizionale a 2 colori.
Di seguito è riportato il semplice scenario d’uso.
C#
//Create an instance of Workbook
//Optionally load an existing spreadsheet
var book = new Workbook();
//Access the Worksheet to which conditional formatting rule has to be added
var sheet = book.Worksheets[0];
//Add FormatConditions to the collection
int index = sheet.ConditionalFormattings.Add();
//Access newly added formatConditionCollection via its index
var formatConditionCollection = sheet.ConditionalFormattings[index];
//Create a CellArea on which conditional formatting rule will be applied
var cellArea = CellArea.CreateCellArea("A1", "A5");
//Add conditional formatted cell range
formatConditionCollection.AddArea(cellArea);
//Add format condition of type ColorScale
index = formatConditionCollection.AddCondition(FormatConditionType.ColorScale);
//Access newly added format condition via its index
var formatCondition = formatConditionCollection[index];
//Set Is3ColorScale to false in order to generate a 2-Color Scale format
formatCondition.ColorScale.Is3ColorScale = false;
//Set other necessary properties
Proprietà aggiunta TxtLoadOptions.HasFormula
Aspose.Cells for .NET 8.7.0 ha fornito supporto per identificare e analizzare le formule durante il caricamento di file CSV/TXT con dati delimitati. La nuova proprietà TxtLoadOptions.HasFormula esposta quando impostata su true indica all’API di analizzare le formule dal file delimitato in input e impostarle nelle celle pertinenti senza richiedere ulteriori elaborazioni.
Di seguito è riportato il semplice scenario d’uso.
C#
//Create an instance of TxtLoadOptions
var options = new TxtLoadOptions();
//Set HasFormula property to true
options.HasFormula = true;
//Set the Separator property as desired
options.Separator = ',';
//Load the CSV/TXT file using the instance of TxtLoadOptions
var book = new Workbook(inFilePath, options);
//Calculate formulas in order to get the calculated values of formula in CSV
book.CalculateFormula();
//Write result in any of the supported formats
book.Save(outFilePath);
Proprietà aggiunta DataLabels.IsResizeShapeToFitText
Un’altra funzionalità utile che Aspose.Cells for .NET 8.7.0 ha esposto è la proprietà DataLabels.IsResizeShapeToFitText che può abilitare la funzione di Ridimensiona la forma per adattare il testo dell’applicazione Excel per le etichette dati del grafico.
Di seguito è riportato il semplice scenario d’uso.
C#
//Create an instance of Workbook containing the Chart
var book = new Workbook(inFilePath);
//Access the Worksheet that contains the Chart
var sheet = book.Worksheets[0];
//Access the desired Chart via its index or name
var chart = sheet.Charts[0];
//Access the DataLabels of desired NSeries
var labels = chart.NSeries[0].DataLabels;
//Set ResizeShapeToFitText property to true
labels.IsResizeShapeToFitText = true;
//Calculate Chart
chart.Calculate();
Proprietà aggiunta PdfSaveOptions.OptimizationType
Aspose.Cells for .NET 8.7.0 ha esposto la proprietà PdfSaveOptions.OptimizationType insieme all’enumerazione PdfOptimizationType per facilitare agli utenti la scelta dell’algoritmo di ottimizzazione desiderato durante l’esportazione dei fogli di calcolo nel formato PDF. Ci sono 2 possibili valori per la proprietà PdfSaveOptions.OptimizationType come dettagliato di seguito.
- PdfOptimizationType.MinimumSize: La qualità è compromessa per le dimensioni del file risultante.
- PdfOptimizationType.Standard: La qualità non è compromessa quindi le dimensioni del file risultante saranno grandi.
Di seguito è riportato il semplice scenario d’uso.
C#
//Create an instance of PdfSaveOptions
var pdfSaveOptions = new PdfSaveOptions();
//Set the OptimizationType property to desired value
pdfSaveOptions.OptimizationType = PdfOptimizationType.MinimumSize;
//Create an instance of Workbook
//Optionally load an existing spreadsheet
var book = new Workbook(inFilePath);
//Save the spreadsheet in PDF format while passing the instance of PdfSaveOptions
book.Save(outFilePath, pdfSaveOptions);
API rimosse
Proprietà Workbook.SaveOptions Rimossa
La proprietà Workbook.SaveOptions è stata dichiarata obsoleta qualche tempo fa. Con questa versione, è stata completamente rimossa dall’API pubblica, pertanto si consiglia di utilizzare il metodo Workbook.Save(Stream, SaveOptions) o Workbook.Save(string, SaveOptions) come alternativa.