Изменения в публичном API в Aspose.Cells 8.7.0
Добавленные API
Поддержка цифровой подписи, обнаружение и извлечение проекта VBA
В данной версии Aspose.Cells for .NET добавлены новые свойства и методы, которые помогают пользователям в таких задачах, как цифровая подпись проекта VBA, обнаружение подписан ли проект VBA и является ли он действительным. Кроме того, новое API позволяет извлечь сертификат в виде сырых данных из цифрово подписанного проекта VBA в книге.
Цифровая подпись проекта VBA
Aspose.Cells for .NET 8.7.0 добавил метод VbaProject.Sign, который можно использовать для цифровой подписи проекта VBA в книге. Данный метод принимает экземпляр класса DigitalSignature, который находится в пространстве имен Aspose.Cells.DigitalSignatures.
Вот простой сценарий использования.
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));
Обнаружение цифровой подписи в проекте VBA
Новое свойство VbaProject.IsSigned можно использовать для определения, цифрово подписан ли проект VBA в книге. Свойство VbaProject.IsSigned имеет тип Boolean, которое возвращает true, если проект VBA цифрово подписан, и false в противном случае.
Вот простой сценарий использования.
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");
}
Извлечение цифровой подписи из проекта VBA
В данном обновлении API также добавлено свойство VbaProject.CertRawData, которое позволяет извлечь сырые данные цифрового сертификата из проекта VBA. Свойство VbaProject.CertRawData имеет тип массива байтов, который содержит сырые данные сертификата, если проект VBA цифрово подписан, в противном случае данное свойство будет равно null.
Вот простой сценарий использования.
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;
Проверка цифровой подписи проекта VBA
Еще одно дополнение к публичному API - свойство VbaProject.IsValidSigned, которое может быть полезным для проверки цифровой подписи проекта VBA. Данное свойство возвращает true, если цифровая подпись действительна, и false, если подпись недействительна.
Вот простой сценарий использования.
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");
}
}
Метод Added Protection.VerifyPassword
Aspose.Cells for .NET 8.7.0 выявил метод Protection.VerifyPassword, который может использоваться для проверки пароля, используемого для защиты Листа. Этот метод принимает экземпляр строки в качестве параметра и возвращает true, если указанный пароль совпадает с паролем, используемым для защиты Листа.
Вот простой сценарий использования.
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");
}
Добавлено свойство Added Protection.IsProtectedWithPassword
Этот релиз Aspose.Cells for .NET API также выявил свойство Protection.IsProtectedWithPassword, которое может быть полезным для определения, защищен ли Лист паролем или нет.
Вот простой сценарий использования.
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");
}
Добавлено свойство ColorScale.Is3ColorScale
Aspose.Cells for .NET 8.7.0 выявил свойство ColorScale.Is3ColorScale, которое может использоваться для создания условного форматирования 2-цветной шкалы. Указанное свойство имеет тип Boolean со значением по умолчанию true, что означает, что условное форматирование по умолчанию будет 3-цветной шкалой. Однако переключение свойства ColorScale.Is3ColorScale на false приведет к созданию условного форматирования 2-цветной шкалы.
Вот простой сценарий использования.
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
Добавлено свойство TxtLoadOptions.HasFormula
Aspose.Cells for .NET 8.7.0 предоставил поддержку для определения и разбора формул при загрузке файлов CSV/TXT с разделенными данными. Вновь выявленное свойство TxtLoadOptions.HasFormula, когда установлено значение true, направляет API на разбор формул из входного файла с разделенными данными и устанавливает их для соответствующих ячеек без необходимости дополнительной обработки.
Вот простой сценарий использования.
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);
Добавлено свойство Added DataLabels.IsResizeShapeToFitText
Еще одна полезная функция, которую Aspose.Cells for .NET 8.7.0 выявил, - это свойство DataLabels.IsResizeShapeToFitText, которое может включить функцию Изменить размер формы по размеру текста в приложении Excel для подписей данных диаграммы.
Вот простой сценарий использования.
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();
Добавлено свойство Added PdfSaveOptions.OptimizationType
Aspose.Cells for .NET 8.7.0 выявил свойство PdfSaveOptions.OptimizationType вместе с перечислением PdfOptimizationType для облегчения возможности выбора желаемого алгоритма оптимизации при экспорте таблиц в формат PDF. Для свойства PdfSaveOptions.OptimizationType есть 2 возможных значения, подробно описанных ниже.
- PdfOptimizationType.MinimumSize: Качество жертвуется ради размера результирующего файла.
- PdfOptimizationType.Standard: Качество не жертвуется, поэтому размер результирующего файла будет большим.
Вот простой сценарий использования.
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
Свойство Workbook.SaveOptions удалено
Свойство Workbook.SaveOptions было объявлено устаревшим некоторое время назад. В этом релизе оно было полностью удалено из общего API, поэтому рекомендуется использовать методы Workbook.Save(Stream, SaveOptions) или Workbook.Save(string, SaveOptions) в качестве альтернативы.