Aspose.Cells 8.9.1 deki Genel API Değişiklikleri

Eklenen API’lar

Yapılandırılabilir Yazı Tipi Kaynakları

Aspose.Cells for .NET, elektronik tabloları render etme için yapılandırılabilir yazı tipi kaynaklarını desteklemek için bir dizi sınıfı açıklamıştır. Aşağıda Aspose.Cells for .NET 8.9.1 ile eklenen sınıfların listesi bulunmaktadır.

  1. FontConfigs sınıfı yazı tipi ayarlarını belirtir.
  2. FontSourceBase sınıfı, kullanıcının çeşitli yazı tipi kaynaklarını belirtmesini sağlayan sınıflar için soyut bir temel sınıftır.
  3. FileFontSource sınıfı, dosya sistemine depolanan tek TrueType yazı tipi dosyasını temsil eder.
  4. FolderFontSource sınıfı, TrueType yazı tipi dosyalarını içeren klasörü temsil eder.
  5. MemoryFontSource sınıfı, bellekte depolanan tek TrueType yazı tipi dosyasını temsil eder.
  6. FontSourceType numaralandırması bir yazı tipi kaynağının türünü belirtir.

Yukarıda belirtilen değişikliklerle, Aspose.Cells for .NET aşağıda ayrıntılı olarak belirtildiği gibi yazı tiplerini ayarlamaya izin verir.

  1. FontConfigs.SetFontFolder yöntemini kullanırken özel bir yazı tipi klasörü ayarlayın.
  2. FontConfigs.SetFontFolders yöntemini kullanırken birçok özel yazı tipi klasörü ayarlayın.
  3. FontConfigs.SetFontSources yöntemini kullanırken özel bir yazı tipi klasöründen, tek bir yazı tipi dosyasından veya bayt dizisinden yazı tipi kaynakları ayarlayın.

Yukarıda belirtilen yöntemlerin basit kullanım senaryosu aşağıda verilmiştir.

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, dönüşümün gerçekleştiği makinede gereken yazı tipi bulunmadığında yardımcı olabilecek bir mekanizma da sağlar. Kullanıcılar, 2 parametre kabul eden FontConfigs.SetFontSubstitutes yöntemini kullanabilir. İlk parametre, yerine konulması gereken yazı tipi adı olmalıdır. İkinci parametre dizi türünde olup, alternatif yazı tipleri listesi sağlar.

FontConfigs.SetFontSubstitutes yönteminin basit kullanım senaryosu aşağıda verilmiştir.

C#

 // Substituting the Arial font with Times New Roman & Calibri

FontConfigs.SetFontSubstitutes("Arial", new string[] { "Times New Roman", "Calibri" });

Aspose.Cells for .NET, belirtilen kaynakları ve yerine koymaları toplamak için de araçlar sağlar.

  1. 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 kaynak belirlenmemişse, FontConfigs.GetFontSources yöntemi boş bir dizi döndürür.
  2. FontConfigs.GetFontSubstitutes yöntemi, yerine koyma yapılan yazı tipi adını belirlemek için dize türünde bir parametre kabul eder. Belirtilen yazı tipi adı için hiçbir yerine koyma belirlenmemişse, FontConfigs.GetFontSubstitutes yöntemi null döndürecektir.

IFilePathProvider Arayüzü ve HtmlSaveOptions.FilePathProvider özelliği eklendi

Aspose.Cells for .NET 8.9.1, çalışsayfalarını ayrı HTML dosyalarına dışa aktarmak için IFilePathProvider almasına ve ayarlamasına olanak sağlar. Bu yeni API’ler, bir çalışsayfadaki hiperbağlantıların başka bir çalışsayfada bir konuma işaret ettiği senaryolarda faydalıdır ve uygulama gereksinimi, her çalışsayfayı ayrı bir HTML dosyasına dönüştürmektir. IFilePathProvider’ı uygulamak, bahsedilen hiperbağlantıların, ayrı sonuç HTML dosyasına işaret ediyor olsalar da orijinallerini korumayı sağlar.

HtmlSaveOptions.FilePathProvider özelliğinin basit kullanım senaryosu aşağıda gösterilmektedir.

C#

 // Load a spreadsheet in an instance of Workbook

var book = new Workbook(dir + "sample.xlsx");

// Save each Worksheet to separate HTML file

for (int i = 0; i < 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 arayüzünü uygulamanın nasıl olduğu aşağıda özetlenmiştir.

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 "";

    }

}

CopyOptions.ReferToDestinationSheet Özelliği ve Cells.CopyRows Yöntemi için aşırı yükleme eklendi.

Aspose.Cells for .NET API’si, hücreleri kopyalamak için kullanılan aşırı yükleme ile birlikte Boolean türünde CopyOptions.ReferToDestinationSheet özelliğini ortaya çıkarmıştır. Geliştiriciler, yeni bu API’leri kullanarak kopyalanacak hücrelerin aynı zamanda bir grafik ve veri kaynağı içerdiği durumda, grafik veri kaynağını kaynak veya hedef çalışsayfalara yönlendirebilirler.

Basit kullanım senaryosu aşağıda gösterilmektedir.

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, Boolean türünde CalculationOptions.Recursive özelliğini ortaya çıkarmıştır. CalculationOptions.Recursive özelliğini doğru olarak ayarlamak ve nesneyi Workbook.CalculateFormula yöntemine iletme, bağımlı hücreleri hesaplarken Aspose.Cells API’larını diğer hücrelere bağlı olarak rekürsif olarak hesaplamaya yönlendirir.

Basit kullanım senaryosu aşağıda gösterilmektedir.

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);

Eskimiş API’lar

Eski CellsHelper.FontDir Özelliği

FontConfigs.SetFontFolder(string, bool) yönteminin, recursive özelliği false olarak klasör kullanımı önerilir.

Eski CellsHelper.FontDirs Özelliği

FontConfigs.SetFontFolders(string[], bool) yönteminin, recursive özelliği false olarak klasör kullanımı önerilir.

Eski CellsHelper.FontFiles Özelliği

FontConfigs.SetFontSources(FontSourceBase[]) yöntemi kullanımı önerilir.