Публичный API и несовместимые изменения в Aspose.Slides для Java 14.8.0

Изменения в публичном API

Добавлены методы Aspose.Slides.Charts.IChartSeries.getOverlap(), IChartSeriesGroup.getOverlap() и setOverlap(byte)

Метод Aspose.Slides.Charts.IChartSeries.getOverlap() определяет, насколько бар и колонны должны перекрывать друг друга на 2D графиках (в диапазоне от -100 до 100). Этот метод предназначен не только для конкретных серий, но и для всех серий родительской группы серий - это проекция соответствующего свойства группы.

  • Используйте метод IChartSeries.getParentSeriesGroup() для доступа к родительской группе серий.
  • Используйте методы IChartSeriesGroup.getOverlap() и setOverlap(byte) для управления значением.

 Presentation pres = new Presentation();

IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.ClusteredColumn, 50, 50, 600, 400, true);

IChartSeriesCollection series = chart.getChartData().getSeries();

if (series.get_Item(0).getOverlap() == 0) {

  series.get_Item(0).getParentSeriesGroup().setOverlap(-30);

}

Добавлено значение перечисления ShapeThumbnailBounds.Appearance

Этот метод создания миниатюр фигур позволяет разработчикам генерировать миниатюру фигуры в пределах ее внешнего вида. Он учитывает все эффекты фигуры. Сгенерированная миниатюра фигуры ограничена границами слайда.


 Presentation pres = new Presentation();

BufferedImage st = pres.getSlides().get_Item(0).getShapes().get_Item(0).getThumbnail(ShapeThumbnailBounds.Appearance, 1, 1);

Добавлен класс VbaProject и интерфейс IVbaProject, изменены методы Presentation.getVbaProject() и setVbaProject(VbaProject)

Новая функция позволяет разработчикам создавать и редактировать проекты VBA в презентации.


 Presentation pres = new Presentation();

// Создать новый проект VBA

pres.setVbaProject(new VbaProject());

// Добавить пустой модуль в проект VBA

IVbaModule module = pres.getVbaProject().getModules().addEmptyModule("Module");

// Установить исходный код модуля

module.setSourceCode("Sub Test(oShape As Shape)\r\n    MsgBox \"Test\"\r\nEnd Sub");

// Создать ссылку на <stdole>

VbaReferenceOleTypeLib stdoleReference =

  new VbaReferenceOleTypeLib("stdole",

    "*\\G{00020430-0000-0000-C000-000000000046}#2.0#0#C:\\Windows\\system32\\stdole2.tlb#OLE Automation");

// Создать ссылку на Office

VbaReferenceOleTypeLib officeReference =

  new VbaReferenceOleTypeLib("Office",

    "*\\G{2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}#2.0#0#C:\\Program Files\\Common Files\\Microsoft Shared\\OFFICE14\\MSO.DLL#Microsoft Office 14.0 Object Library");

// Добавить ссылки в проект VBA

pres.getVbaProject().getReferences().add(stdoleReference);

pres.getVbaProject().getReferences().add(officeReference);

pres.save("data\\test.pptm", SaveFormat.Pptm);