1. Продукти
  2.   Aspose.Slides
  3.   Aspose.Slides FOSS for Java

Aspose.Slides FOSS для Java

Створюйте, читайте та редагуйте презентації PowerPoint за допомогою Java — безкоштовно та з відкритим кодом, без залежності від Office.

Відкрита Java бібліотека для презентацій PowerPoint

Aspose.Slides FOSS для Java — це бібліотека з чистим Java, ліцензована за MIT, для роботи з файлами PowerPoint .pptx. Додайте одну залежність Maven і одразу починайте створювати, читати та редагувати презентації без встановлення Microsoft Office чи будь‑якого пропрієтарного середовища виконання.

Бібліотека надає API презентацій, побудоване навколо Presentation, Slide, Shape, TextFrame, Paragraph та Portion — концептуальної моделі, яку використовує сам PowerPoint. Додавайте та видаляйте слайди, вставляйте AutoShapes, таблиці та з’єднувачі, форматте текст на рівні символів (жирний, курсив, розмір шрифту та колір), застосовуйте суцільні або градієнтні заливки та додавайте візуальні ефекти (тінь, сяйво, розмиття, відображення).

Клас Presentation реалізує AutoCloseable, тому використовуйте try-with-resources для надійного очищення. Невідомі XML‑частини, виявлені під час завантаження, зберігаються без змін при збереженні, тому круговий процес ніколи не знищує вміст, який бібліотека ще не розуміє. Бібліотека вимагає JDK 21 або новішу і не має нативних розширень для компіляції.

API презентацій та слайдів

  • Створення та відкриття PPTX: Створюйте нові презентації або відкривайте існуючі файли .pptx за допомогою new Presentation() або new Presentation(path).
  • Додавання та видалення слайдів: Програмно керуйте SlideCollection за допомогою addClone(), addEmptySlide(), remove() та removeAt().
  • AutoShapes: Вставляйте прямокутники, еліпси, лінії та інші геометрії ShapeType за допомогою addAutoShape().
  • Таблиці та з’єднувачі: Додавайте структуровані форми таблиць та лінії‑з’єднувачі між формами за допомогою addConnector().
  • Нотатки доповідача: Читайте та записуйте нотатки доповідача для кожного слайду за допомогою NotesSlideManager.
  • Threaded comments: Доступ до потоків коментарів рівня слайду за допомогою getSlideComments().

Де можна використовувати Aspose.Slides FOSS

  • Report generation: Створюйте брендовані набори слайдів з джерел даних без використання Office.
  • Template automation: Заповнюйте PPTX‑шаблони динамічним вмістом у CI/CD‑конвеєрах.
  • Міграція вмісту: Читати існуючі презентації та перебудовувати або змінювати стиль слайдів.
  • Безсерверні бекенди: Обробляти файли PPTX у Docker‑контейнерах або функціях Lambda.
  • Пакетна обробка: Застосовувати уніфіковані зміни форматування до великих бібліотек наборів слайдів.

Форматування тексту та візуальні ефекти

  • Character-level formatting: Застосуйте жирний, курсив, розмір шрифту та колір до окремих об’єктів Portion за допомогою getPortionFormat().
  • Solid and gradient fills: Встановіть заливку форми у вигляді суцільного кольору або багатокрокового лінійного градієнту за допомогою getFillFormat() та FillType.
  • Shadow and glow effects: Застосуйте зовнішню тінь, сяйво, розмиття та відображення до будь‑якої форми за допомогою getEffectFormat().
  • Paragraph alignment: Встановіть вирівнювання ліворуч, по центру, праворуч або за шириною для кожного абзацу за допомогою getParagraphFormat().setAlignment().
  • Round-trip safe: Невідомі XML‑частини зберігаються дослівно при повторному збереженні.

Досвід розробника

Aspose.Slides FOSS встановлюється за допомогою однієї Maven‑залежності (org.aspose.slides.foss:aspose-slides-foss). Бібліотека є чистим Java без нативних розширень для компіляції та без необхідності встановлювати системні пакети.

API відображає об’єктну модель PowerPoint (Presentation, Slide, Shape, TextFrame, Paragraph, Portion), тому будь‑хто, хто знайомий з моделлю PowerPoint, може одразу користуватися бібліотекою. Вона ліцензована за MIT, є відкритим кодом на GitHub і вимагає JDK 21 або новішу.

Створіть презентацію та додайте фігуру

Використовуйте try-with-resources, щоб гарантувати, що Presentation завжди закривається і ресурси звільняються. addAutoShape() приймає enum ShapeType, потім позиції x/y та ширину/висоту в пунктах — метод getTextFrame().setText() форми встановлює мітку одним викликом.

<dependency>
  <groupId>org.aspose.slides.foss</groupId>
  <artifactId>aspose-slides-foss</artifactId>
  <version>1.0.0</version>
</dependency>
import org.aspose.slides.foss.*;

try (Presentation prs = new Presentation()) {
    ISlide slide = prs.getSlides().get(0);

    // Додати прямокутну AutoShape
    IAutoShape shape = slide.getShapes().addAutoShape(
        ShapeType.RECTANGLE, 50, 50, 400, 150
    );
    shape.getTextFrame().setText("Привіт, Aspose.Slides!");

    prs.save("output.pptx");
}

Форматуйте текст і застосуйте ефект заповнення

Форматування тексту працює на рівні Portion — найменшої одиниці послідовності символів. Відкрийте збережений файл, перейдіть до першої частини першого абзацу та встановіть властивості шрифту за допомогою геттерів і сетерів. Заповнення форми є незалежним: встановіть FillType у SOLID і задайте колір через getSolidFillColor().setColor().

import org.aspose.slides.foss.*;
import org.aspose.slides.foss.drawing.Color;

try (Presentation prs = new Presentation("output.pptx")) {
    IShape shape = prs.getSlides().get(0).getShapes().get(0);
    IPortion portion = shape.getTextFrame()
        .getParagraphs().get(0).getPortions().get(0);

    // Жирний, 18pt, темно‑синій текст
    portion.getPortionFormat().setFontBold(NullableBool.TRUE);
    portion.getPortionFormat().setFontHeight(18);
    portion.getPortionFormat().getFillFormat()
        .getSolidFillColor().setColor(new Color(0, 0, 139));

    // Суцільне заповнення фону на формі
    shape.getFillFormat().setFillType(FillType.SOLID);
    shape.getFillFormat().getSolidFillColor()
        .setColor(new Color(240, 248, 255));

    prs.save("formatted.pptx");
}

Часті Питання

Що таке Aspose.Slides FOSS для Java?

Це безкоштовна бібліотека з ліцензією MIT, чиста-Java бібліотека для створення, читання та редагування презентацій PowerPoint .pptx без потреби у Microsoft Office.

Які формати файлів підтримуються?

PPTX — підтримуваний формат читання/запису. Експорт у PDF, HTML, SVG або зображення недоступний у цій версії.

Чи потрібен Microsoft Office або PowerPoint?

Ні. Aspose.Slides FOSS — це чиста-Java бібліотека без залежності від Microsoft Office, автоматизації COM або будь-якого пропрієтарного середовища виконання.

Як його встановити?

Додайте Maven‑залежність org.aspose.slides.foss:aspose-slides-foss:1.0.0 у ваш проєкт. Додаткові системні пакети чи нативні розширення не потрібні. Потрібен JDK 21 або новіший.

Чи можу я застосовувати візуальні ефекти, такі як тінь і сяйво?

Так. Бібліотека підтримує зовнішню тінь, підсвічування, розмиття та ефекти відображення для будь‑якого об’єкта форми через API EffectFormat.

Чи рекомендується шаблон try-with-resources?

Так. Presentation реалізує AutoCloseable, тому завжди використовуйте try (Presentation prs = new Presentation()) { ... } для надійного звільнення ресурсів.

Чи знищить повторне зчитування PPTX невідомий вміст?

Ні. Невідомі XML‑частини, виявлені під час завантаження, зберігаються дослівно при збереженні, тому вміст, який бібліотека ще не розуміє, ніколи не втрачається.

Де можна знайти вихідний код?

Бібліотека має ліцензію MIT і розміщена на GitHub. Повідомлення про помилки та pull‑request’и вітаються.

  

Ресурси Підтримки та Навчання

 Українська