تغييرات واجهة برمجة التطبيقات العمومية في Aspose.Cells 8.9.1

واجهات برمجة التطبيقات الجديدة

مصادر الخطوط القابلة للتكوين

Aspose.Cells for Java قد عرضت عددًا من الفئات لتزويد الدعم لمصادر الخطوط القابلة للتكوين لتقديم جداول البيانات. إليك قائمة الفئات التي تمت إضافتها مع Aspose.Cells for Java 8.9.1.

  1. تحديد تهيئات الخطوط الفئة تحدد إعدادات الخطوط.
  2. فئة FontSourceBase هي فئة قاعدية مجردة للفئات التي تسمح للمستخدم بتحديد مصادر الخطوط المختلفة.
  3. تمثل فئة FileFontSource ملف الخط TrueType الفردي المخزن في نظام ملفات النظام.
  4. تمثل فئة FolderFontSource المجلد الذي يحتوي على ملفات خط TrueType.
  5. تمثل فئة MemoryFontSource ملف الخط TrueType الفردي المخزن في الذاكرة.
  6. تحدد تعداد عناصر نوع مصدر الخط من خلال تعداد FontSourceType.

مع التغييرات المذكورة أعلاه في المكان، يسمح الرقم Aspose.Cells for Java بتحديد الخطوط كما يلي.

  1. تعيين مجلد خط مخصص واحد أثناء استخدام طريقة FontConfigs.setFontFolder.
  2. تعيين مجلدات خط مخصصة متعددة أثناء استخدام طريقة FontConfigs.setFontFolders.
  3. تعيين مصادر الخط من مجلد خط مخصص، ملف خط فردي أو بيانات خط من مصفوفة بايت أثناء استخدام طريقة FontConfigs.setFontSources.

فيما يلي سيناريو استخدام بسيط للطرق المذكورة أعلاه.

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 ايضا يسمح بتكوين بديل الخط. هذا الآلية مفيدة عندما الخط المطلوب غير متاح على الجهاز الذي يجب فيه اجراء التحويل. يمكن للمستخدمين تقديم قائمة من أسماء الخطوط كبديل للخط المطلوب في الأصل. من اجل تحقيق ذلك, API Aspose.Cells جعلت المعرضات لطريقة FontConfigs.setFontSubstitutes التي تقبل 2 معلمة. المعلمة الأولى من نوع سلسلة, يجب ان يكون الاسم الخط الذي يجب استبداله. المعلمة الثانية من نوع سلسلة. المستخدمين يمكنهم تقديم قائمة من أسماء الخطوط كبديل لاسم الخط الأصلي (المحدد في المعلمة الأولى).

فيما يلي سيناريو استخدام بسيط لطريقة FontConfigs.SetFontSubstitutes.

Java

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

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

ايضا قدم Aspose.Cells for Java وسائل لجمع المعلومات حول ما إذا كانت المصادر والاستبدالات قد تم تعيينها.

  1. طريقة FontConfigs.getFontSources تقوم بإرجاع مصفوفة من نوع FontSourceBase تحتوي على قائمة المصادر الخط المحددة. في حالة عدم تحديد المصادر، ستقوم طريقة FontConfigs.getFontSources بإرجاع مصفوفة فارغة.
  2. تقبل طريقة FontConfigs.getFontSubstitutes معلمة من نوع سلسلة تتيح تحديد اسم الخط الذي تم تحديد استبداله. في حالة عدم تحديد استبدال لاسم الخط المحدد، ستقوم طريقة FontConfigs.getFontSubstitutes بإرجاع قيمة فارغة.

تمت إضافة واجهة IFilePathProvider وخاصية HtmlSaveOptions.FilePathProvider

Aspose.Cells for Java 8.9.1 يسمح بالحصول على / تعيين IFilePathProvider لتصدير الأوراق العمل إلى ملفات HTML منفصلة. هذه الواجهات الجديدة مفيدة في السيناريوهات حيث تشير الروابط الفائقة في ورقة العمل إلى موقع في ورقة عمل أخرى، حيث تتطلب التطبيق رسم كل ورقة عمل لملف HTML منفصل. تنفيذ IFilePathProvider يسمح بالاحتفاظ بالروابط الفائقة المذكورة سابقًا بغض النظر عما إذا كانت تشير إلى موقع في ملف HTML منفصل.

فيما يلي سيناريو الاستخدام البسيط لخاصية HtmlSaveOptions.FilePathProvider.

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 والتحميل الزائد لأسلوب Cells.copyRows.

Aspose.Cells for Java API قد عرضت خاصية نوع Boolean CopyOptions.ReferToDestinationSheet جنبًا إلى جنب مع التحميل الزائد لأسلوب Cells.copyRows لتيسير عملية نسخ الصفوف عندما تحتوي الصفوف المراد نسخها أيضًا على رسم بياني ومصدر بياناته. يمكن للمطورين استخدام هذه الواجهات الجديدة لتوجيه مصدر بيانات الرسم البياني إلى أوراق العمل المصدر أو الوجهة.

فيما يلي سيناريو الاستخدام البسيط.

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.

Aspose.Cells for Java 8.9.1 قد عرضت خاصية Boolean CalculationOptions.Recursive. ضبط خاصية CalculationOptions.Recursive على true وتمرير الكائن إلى أسلوب Workbook.calculateFormula يوجه واجهات Aspose.Cells لحساب الخلايا التي تعتمد تلقائيًا على حساب الخلايا الأخرى.

فيما يلي سيناريو الاستخدام البسيط.

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

واجهات برمجة التطبيق القديمة

خاصية CellsHelper.FontDir المهجورة

يُنصح باستخدام أسلوب FontConfigs.setFontFolder(String, boolean) مع تكرار المجلد إلى false بدلاً من ذلك.

خاصية CellsHelper.FontDirs المهجورة

استخدم أسلوب FontConfigs.setFontFolders(String[], boolean) مع تكرار المجلد إلى false بدلاً من ذلك.

الواجهات المهجورة خاصية CellsHelper.FontFiles

استخدم طريقة FontConfigs.setFontSources(FontSourceBase[]) بدلاً من ذلك.