Genel API Aspose.Cells 8.9.1'deki değişiklikler
Eklenen API’ler
Yapılandırılabilir Yazı Tipi Kaynakları
Aspose.Cells for .NET, elektronik tabloları işlemek için yapılandırılabilir yazı tipi kaynaklarına destek sağlamak üzere bir dizi sınıfı kullanıma sunmuştur. Aspose.Cells 8.9.1 ile eklenen sınıfların listesi aşağıdadır.
- FontConfigs sınıfı, yazı tipi ayarlarını belirtir.
- FontSourceBase sınıfı, kullanıcının çeşitli yazı tipi kaynakları belirtmesine izin veren sınıflar için soyut bir temel sınıftır.
- FileFontSource sınıfı, dosya sisteminde depolanan tek TrueType yazı tipi dosyasını temsil eder.
- FolderFontSource sınıfı, TrueType yazı tipi dosyalarını içeren klasörü temsil eder.
- MemoryFontSource sınıfı, bellekte depolanan tek TrueType yazı tipi dosyasını temsil eder.
- FontSourceType numaralandırması, bir yazı tipi kaynağının türünü belirtir.
Yukarıda belirtilen değişikliklerle, Aspose.Cells for .NET, yazı tiplerini aşağıda ayrıntılı olarak ayarlamanıza olanak tanır.
- FontConfigs.SetFontFolder yöntemini kullanırken bir özel yazı tipi klasörü ayarlayın.
- FontConfigs.SetFontFolders yöntemini kullanırken birden fazla özel yazı tipi klasörü ayarlayın.
- FontConfigs.SetFontSources yöntemini kullanırken özel bir font klasöründen, tek bir font dosyasından veya bir bayt dizisinden font verilerini ayarlayın.
İşte yukarıda belirtilen yöntemlerin basit kullanım senaryosu.
C#
// Defining string variables to store paths to font folders & font file
string fontFolder1 = "D:/Arial";
string fontFolder2 = "D:/Calibri";
string fontFile = "D:/Arial/arial.ttf";
// Setting first font folder with SetFontFolder method
// Second parameter directs the API to search the subfolders for font files
FontConfigs.SetFontFolder(fontFolder1, true);
// Setting both font folders with SetFontFolders method
// Second parameter prohibits the API to search the subfolders for font files
FontConfigs.SetFontFolders(new string[]{ fontFolder1, fontFolder2 }, false);
// Defining FolderFontSource
FolderFontSource sourceFolder = new FolderFontSource(fontFolder1, false);
// Defining FileFontSource
FileFontSource sourceFile = new FileFontSource(fontFile);
// Defining MemoryFontSource
MemoryFontSource sourceMemory = new MemoryFontSource(System.IO.File.ReadAllBytes(fontFile));
//Setting font sources
FontConfigs.SetFontSources(new FontSourceBase[]{ sourceFolder, sourceFile, sourceMemory});
Aspose.Cells for .NET ayrıca yazı tipi değiştirmeyi yapılandırmaya izin verir. Bu mekanizma, dönüştürmenin gerçekleşmesi gereken makinede gerekli bir yazı tipi bulunmadığında yardımcı olur. Kullanıcılar, başlangıçta gerekli olan yazı tipine alternatif olarak bir yazı tipi adları listesi sağlayabilir. Bunu başarmak için Aspose.Cells API’leri, 2 parametreyi kabul eden FontConfigs.SetFontSubstitutes yöntemini kullanıma sunmuştur. İlk parametre, değiştirilmesi gereken yazı tipinin adı olması gereken dize türündedir. İkinci parametre, string türünde bir dizidir. Kullanıcılar, orijinal yazı tipi adının (ilk parametrede belirtilen) yerine geçen bir yazı tipi adları listesi sağlayabilir.
İşte FontConfigs.SetFontSubstitutes yönteminin basit kullanım senaryosu.
C#
// Substituting the Arial font with Times New Roman & Calibri
FontConfigs.SetFontSubstitutes("Arial", new string[]{ "Times New Roman", "Calibri" });
Aspose.Cells for .NET, hangi kaynakların ve ikamelerin ayarlandığı hakkında bilgi toplamak için araçlar da sağlamıştır.
- FontConfigs.GetFontSources yöntemi, belirtilen yazı tipi kaynaklarının listesini içeren FontSourceBase türünde bir dizi döndürür. Hiçbir kaynağın ayarlanmamış olması durumunda, FontConfigs.GetFontSources yöntemi boş bir dizi döndürür.
- FontConfigs.GetFontSubstitutes yöntemi, bir ikamenin ayarlandığı yazı tipi adını belirtmeye izin veren dize türünde bir parametre kabul eder. Belirtilen yazı tipi adı için herhangi bir ikame ayarlanmamışsa, FontConfigs.GetFontSubstitutes yöntemi null değerini döndürür.
IFilePathProvider Arayüzü & HtmlSaveOptions.FilePathProvider özelliği eklendi
Aspose.Cells for .NET 8.9.1, çalışma sayfalarını ayrı HTML dosyalarına dışa aktarmak için IFilePathProvider’ın alınmasına/ayarlanmasına izin verir. Bu yeni API’ler, bir çalışma sayfasındaki köprülerin başka bir çalışma sayfasındaki bir konuma işaret ettiği ve uygulama gereksiniminin her çalışma sayfasını ayrı HTML dosyasına dönüştürmek olduğu senaryolarda yardımcı olur. IFilePathProvider’ı uygulamak, ayrı bir sonuçtaki HTML dosyasında bir konumu işaret ediyor olsalar da, yukarıda belirtilen köprülerin bozulmadan kalmasına izin verir.
HtmlSaveOptions.FilePathProvider özelliğinin basit kullanım senaryosu aşağıdadır.
C#
// Çalışma Kitabı örneğine bir elektronik tablo yükleyin
var book = new Workbook(dir + "sample.xlsx");
// HTML dosyasını ayırmak için her Çalışma Sayfasını kaydedin
için (int ben = 0; ben< book.Worksheets.Count; i++)
{
book.Worksheets.ActiveSheetIndex = i;
// Create an instance of HtmlSaveOptions & set FilePathProvider property
var options = new HtmlSaveOptions
{
ExportActiveWorksheetOnly = true,
FilePathProvider = new FilePathProvider()
};
// Write HTML file to disc
book.Save(dir + string.Format(@"sheet{0}.html", i), options);
}
IFilePathProvider arabiriminin nasıl uygulanacağı aşağıda açıklanmıştır.
C#
public class FilePathProvider : IFilePathProvider
{
public FilePathProvider()
{
}
/// <summary>
/// Gets the full path of the file by Worksheet name when exporting Worksheet to html separately.
/// So the references among the Worksheets can be exported correctly.
/// </summary>
/// <param name="sheetName">Worksheet name</param>
/// <returns>the full path of the file</returns>
public string GetFullName(string sheetName)
{
if ("Sheet2".Equals(sheetName))
{
return "sheet1.html";
}
else if ("Sheet3".Equals(sheetName))
{
return "sheet2.html";
}
return "";
}
}
Cells.CopyRows Yöntemi için CopyOptions.ReferToDestinationSheet Özelliği ve Aşırı Yükleme eklendi
Aspose.Cells for .NET API, kopyalanacak satırlar aynı zamanda bir grafik ve bunun veri kaynağını içerdiğinde satırları kopyalama işlemini kolaylaştırmak için Cells.CopyRows yönteminin aşırı yüklemesiyle birlikte Boole tipi CopyOptions.ReferToDestinationSheet özelliğini kullanıma sundu. Geliştiriciler, grafiğin veri kaynağını kaynak veya hedef çalışma sayfalarına yönlendirmek için bu yeni API’leri kullanabilir.
Basit kullanım senaryosu aşağıdadır.
C#
// Load a sample spreadsheet in an instance of Workbook
var book = new Workbook(dir + "sample.xlsx");
// Access the worksheet containing the chart & its data source
var source = book.Worksheets[0];
// Add a new worksheet to the collection
var destination = book.Worksheets[book.Worksheets.Add()];
// Initialize CopyOptions and set its ReferToDestinationSheet property to true
CopyOptions options = new CopyOptions();
options.ReferToDestinationSheet = true;
// Copy the rows
destination.Cells.CopyRows(source.Cells, 0, 0, source.Cells.MaxDisplayRange.RowCount, options);
// Save the result on disc
book.Save(dir + "output.xlsx");
CalculationOptions.Recursive Özelliği Eklendi
Aspose.Cells for .NET 8.9.1, Boole tipi CalculationOptions.Recursive özelliğini kullanıma sundu. CalculationOptions.Recursive özelliğinin true olarak ayarlanması ve nesnenin Workbook.CalculateFormula yöntemine iletilmesi, Aspose.Cells API’lerini, diğer hücrelere bağlı olan hücreleri hesaplarken bağımlı hücreleri yinelemeli olarak hesaplamaya yönlendirir.
Basit kullanım senaryosu aşağıdadır.
C#
// Load a sample spreadsheet in an instance of Workbook
var book = new Workbook(dir + "sample.xlsx");
// Initialize CalculationOptions & set Recursive property to true
var options = new CalculationOptions();
options.Recursive = true;
// Recalculate formulas
book.CalculateFormula(options);
Eski API’ler
Eski CellsHelper.FontDir Özellik
FontConfigs.SetFontFolder(string, bool) yöntemini, bunun yerine yinelemeli klasör ile false olarak kullanmanız önerilir.
Eski CellsHelper.FontDirs Özelliği
FontConfigs.SetFontFolders(string[], bool) yöntemini, bunun yerine yinelemeli klasör ile false olarak kullanın.
Eski CellsHelper.FontFiles Özelliği
Bunun yerine FontConfigs.SetFontSources(FontSourceBase[]) yöntemini kullanın.