Aspose.Cells 8.9.1 deki Genel API Değişiklikleri
Eklenen API’lar
Yapılandırılabilir Yazı Tipi Kaynakları
Aspose.Cells for Java, elektronik tabloları renderlamak için yapılandırılabilir yazı tipi kaynaklarını desteklemek için bir dizi sınıfı açıklar. İşte Aspose.Cells for Java 8.9.1 ile eklenen sınıfların listesi.
- FontConfigs sınıfı yazı tipi ayarlarını belirtir.
- 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.
- FileFontSource sınıfı, dosya sistemine 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 Java, aşağıda ayrıntıları belirtilmiş olan yazı tiplerini ayarlamayı mümkün kılar.
- FontConfigs.setFontFolder yöntemini kullanırken özel bir 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 yazı tipi klasöründen, tek bir yazı tipi dosyasından veya bayt dizisinden yazı tipi kaynaklarını ayarlayın.
Yukarıda belirtilen yöntemlerin basit kullanım senaryosu aşağıda verilmiştir.
Java
//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 sub folders for font files
FontConfigs.setFontFolder(fontFolder1, true);
//Setting both font folders with setFontFolders method
//Second parameter prohibits the API to search the sub folders 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
byte[] bytes = Files.readAllBytes(new File(fontFile).toPath());
MemoryFontSource sourceMemory = new MemoryFontSource(bytes);
//Setting font sources
FontConfigs.setFontSources(new FontSourceBase[] { sourceFolder, sourceFile, sourceMemory});
Aspose.Cells for Java, ayrıca yazı tipi yerine koymayı yapılandırmak için de izin verir. Bu mekanizma, dönüştürmenin gerçekleşeceği makinede gereken bir yazı tipinin bulunmaması durumunda yardımcı olur. Kullanıcılar, Aspose.Cells API’ları tarafından sunulan FontConfigs.setFontSubstitutes yöntemini kullanarak asıl gereken yazı tipinin yerine koymak için bir dizi yazı tipi adı sağlayabilir. FontConfigs.setFontSubstitutes yöntemi, 2 parametre kabul eder. İlk parametre, yerine konması gereken yazı tipinin adı olmalıdır. İkinci parametre, string türünde bir dizi olup kullanıcılar orijinal yazı tipinin yerine konması için bir yazı tipi listesi sağlayabilir.
FontConfigs.SetFontSubstitutes yönteminin basit kullanım senaryosu aşağıda verilmiştir.
Java
//Substituting the Arial font with Times New Roman & Calibri
FontConfigs.setFontSubstitutes("Arial", new String[] { "Times New Roman", "Calibri" });
Aspose.Cells for Java, ayrıca hangi kaynakların ve yerine koymaların ayarlandığı bilgilerini toplamanın da bir yolunu sağlar.
- 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ürecektir.
- FontConfigs.getFontSubstitute yöntemi, yazı tipi yerine koyması belirlenmiş bir yazı tipi için belirtilmiş olan fontadını kabul eden bir parametre alır. Belirtilen yazı tipi için herhangi 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 Java 8.9.1 sayesinde çalışma sayfalarını ayrı HTML dosyalarına dışa aktarma için IFilePathProvider’ın alınmasına ve ayarlanmasına izin verir. Bu yeni API’lar, bir çalışma sayfasındaki hiperbağlantıların başka bir çalışma sayfasına yerleşim oluşturduğu senaryolarda yardımcıdır ve uygulamanın her çalışma sayfasını ayrı bir HTML dosyasına dönüştürme gereksinimini karşılar. IFilePathProvider’ı uygulamak, bahsedilen hiperbağlantıları, ayrı bir sonuç HTML dosyasına da işaretlense bile, korumaya izin verir.
HtmlSaveOptions.FilePathProvider özelliğinin basit kullanım senaryosu aşağıda gösterilmektedir.
Java
//Load a spreadsheet in an instance of Workbook
Workbook book = new Workbook(dir + "sample.xlsx");
//Save each Worksheet to separate HTML file
for (int i = 0; i < book.getWorksheets().getCount(); i++)
{
book.getWorksheets().setActiveSheetIndex(i);
//Create an instance of HtmlSaveOptions & set FilePathProvider property
HtmlSaveOptions options = new HtmlSaveOptions();
options.setExportActiveWorksheetOnly(true);
options.setFilePathProvider(new IFilePathProvider()
{
public String getFullName(String sheetName)
{
if ("Sheet2".equals(sheetName))
{
return "sheet1.html";
}
else if ("Sheet3".equals(sheetName))
{
return "sheet2.html";
}
return "";
}
});
//Write HTML file to disc
book.save(dir + "sheet"+ i +".html", options);
}
CopyOptions.ReferToDestinationSheet Özelliği ve Cells.copyRows Metodunun Overload’u eklendi
Aspose.Cells for Java API, kopyalanacak satırların aynı zamanda bir grafik ve veri kaynağı içerdiği durumlarda satırları kopyalamayı kolaylaştırmak için Boolean türünde CopyOptions.ReferToDestinationSheet özelliğini ve Cells.copyRows metodunun overload’unu açığa çıkardı. Geliştiriciler, bu yeni API’ları kullanarak, grafik veri kaynağını kaynak veya hedef çalışma sayfasına yönlendirebilirler.
Basit kullanım senaryosu aşağıda gösterilmektedir.
Java
//Load a sample spreadsheet in an instance of Workbook
Workbook book = new Workbook(dir + "sample.xlsx");
//Access the worksheet containing the chart & its data source
Worksheet source = book.getWorksheets().get(0);
//Add a new worksheet to the collection
Worksheet destination = book.getWorksheets().get(book.getWorksheets().add());
//Initialize CopyOptions and set its ReferToDestinationSheet property to true
CopyOptions options = new CopyOptions();
options.setReferToDestinationSheet(true);
//Copy the rows
destination.getCells().copyRows(source.getCells(), 0, 0, source.getCells().getMaxDisplayRange().getRowCount(), options);
//Save the result on disc
book.save(dir + "output.xlsx");
CalculationOptions.Recursive Özelliği eklendi
Aspose.Cells for Java 8.9.1, Boolean türünde CalculationOptions.Recursive özelliğini açığa çıkardı. CalculationOptions.Recursive özelliğini true olarak ayarlamak ve nesneyi Workbook.calculateFormula metoduna iletmek, Aspose.Cells API’lerini, diğer hücrelere bağımlı olan hücreleri hesaplarken bağımlı hücreleri de özyineli olarak hesaplamaya yönlendirir.
Basit kullanım senaryosu aşağıda gösterilmektedir.
Java
//Load a sample spreadsheet in an instance of Workbook
Workbook book = new Workbook(dir + "sample.xlsx");
//Initialize CalculationOptions & set Recursive property to true
CalculationOptions options = new CalculationOptions();
options.setRecursive(true);
//Recalculate formulas
book.calculateFormula(options);
Eskimiş API’lar
Eski CellsHelper.FontDir Özelliği
Eski CellsHelper.FontDir özelliğinin recursive olarak false ayarlanmış FontConfigs.setFontFolder(String, boolean) yöntemini kullanmanız önerilir.
Eski CellsHelper.FontDirs Özelliği
Eski CellsHelper.FontDirs özelliğinin recursive olarak false ayarlanmış FontConfigs.setFontFolders(String[], boolean) yöntemini kullanmanız önerilir.
Eski CellsHelper.FontFiles Özelliği
Eski CellsHelper.FontFiles özelliğinin FontConfigs.setFontSources(FontSourceBase[]) yöntemi ile değiştirilmiştir.