Apache POI HSLF

 
 

Бібліотека Java для форматів файлів презентацій Microsoft® PPT

Додавайте слайди та зображення до презентацій, конвертуйте файли PPT за допомогою безкоштовного Java API з відкритим кодом.

Що таке Apache POI HSLF?

Apache POI HSLF — це чиста реалізація Java для читання, створення, зміни або візуалізації презентацій PowerPoint. Він надає спосіб читати, створювати або змінювати презентації PowerPoint у форматі файлу PPT. Він забезпечує підтримку видобування таких даних, як текст, зображення, звуки, вбудовані об’єкти та багато іншого з презентацій PowerPoint.

Він також підтримує малювання фігури на слайді, додавання гіперпосилань, таблиць, зображень, налаштування верхніх і нижніх колонтитулів, створення маркованих списків, отримання вбудованих звуків і багато іншого.

Previous Next

Початок роботи з Apache POI HSLF

Перш за все, у вашій системі має бути встановлено Java Development Kit (JDK). Якщо у вас уже є, перейдіть до сторінки завантаження Apache POI, щоб отримати останню стабільну версію в архіві. Розпакуйте вміст ZIP-файлу в будь-який каталог, звідки потрібні бібліотеки можна зв’язати з вашою програмою Java. Це все!

Посилання на Apache POI у вашому проекті Java на основі Maven ще простіше. Все, що вам потрібно, це додати наступну залежність у ваш pom.xml і дозволити вашій IDE отримувати та посилатися на файли Apache POI Jar.

Залежність Apache POI Maven

<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
  <dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-scratchpad</artifactId>
    <version>4.1.0</version>
  </dependency>
  

Динамічно створюйте нові PPT або змінюйте наявні презентації

Apache POI HSLF дозволяє програмістам створювати нові презентації PowerPoint у форматах файлів PPT. Розробники також можуть трансформувати наявну презентацію відповідно до своїх потреб. API також підтримує функції для вилучення таких даних, як текст, зображення, звуки, вбудовані об’єкти тощо з презентацій PowerPoint.

Створіть файл PPT - Java

// create a new PPT file
FileOutputStream fileOutputStream = new FileOutputStream(new File("Slide.ppt"));
// create a new slide show
HSLFSlideShow xmlSlideShow = new HSLFSlideShow();
// save file
xmlSlideShow.write(fileOutputStream);

Додайте слайди, зображення та налаштуйте верхній і нижній колонтитули в PPT

Розробники можуть легко додавати нові слайди та змінювати наявні відповідно до власних потреб у PPT-презентації за допомогою Apache HSLF API. Тепер розробники можуть додавати власні колонтитули до своїх презентацій. Він також забезпечує повну підтримку додавання заголовка до слайда, створення слайда з попередньо визначеним макетом, роботи з фоном слайда/фігури та багато іншого.

Вставте зображення в PPT через Java

  1. Створіть новий файл PPT за допомогою FileOutputStream і передайте екземпляр new File() із вихідним ім’ям файлу як рядок
  2. Додайте нове слайд-шоу за допомогою методу HSLFSlideShow().
  3. Додайте новий слайд за допомогою методу createSlide().
  4. Отримайте байти зображення за допомогою методу IOUtils.toByteArray() і передайте своє зображення в нього за допомогою методу FileInputStream().
  5. Додайте зображення до слайда за допомогою методу hslfSlideShow.addPicture(picture, HSLFPictureData.PictureType.PNG). Метод приймає байти зображення та тип зображення як аргументи
  6. Запишіть і збережіть файл

Додати зображення в PPT - Java

// create a new PPT file
FileOutputStream fileOutputStream = new FileOutputStream(new File("AddImage.ppt"));
// create a new slide show
HSLFSlideShow hslfSlideShow = new HSLFSlideShow();
// create slide
HSLFSlide slide = hslfSlideShow.createSlide();
// load image
byte[] picture = IOUtils.toByteArray(new FileInputStream(new File("apache-poi-logo-min.png")));
// add image
HSLFPictureData hslfPictureData = hslfSlideShow.addPicture(picture, HSLFPictureData.PictureType.PNG);
HSLFPictureShape pictureShape = slide.createPicture(hslfPictureData);
// save file
hslfSlideShow.write(fileOutputStream);
// close stream
fileOutputStream.close();

Перетворення слайдів у формати зображень за допомогою Java API

Apache POI HSLF API дозволяє розробникам програмного забезпечення перетворювати кожен слайд презентації PowerPoint у формат файлу зображення у своїх програмах Java. Ви можете захоплювати слайди в об’єкт java.awt.Graphics2D (або будь-який інший) і серіалізувати його у форматі PNG або JPEG. Підтримувані зображення можуть бути у форматах JPEG, PNG, DIB тощо.

Перетворення PPT на зображення - Java

//open an existing PPT file
HSLFSlideShow hslfSlideShow = new HSLFSlideShow(new FileInputStream(new File("PPTtoImage.ppt")));
// get dimensions
Dimension pgsize = hslfSlideShow.getPageSize();
java.util.List slide = hslfSlideShow.getSlides();
for (int i = 0; i < slide.size(); i++) {
  BufferedImage img = new BufferedImage(pgsize.width, pgsize.height,BufferedImage.TYPE_INT_RGB);
  Graphics2D graphics = img.createGraphics();
  // clear the drawing area
  graphics.setPaint(Color.white);
  graphics.fill(new Rectangle2D.Float(0, 0, pgsize.width, pgsize.height));
  // render
  slide.get(i).draw(graphics);
  // create image
  FileOutputStream out = new FileOutputStream("PPTtoImage.png");
  javax.imageio.ImageIO.write(img, "png", out);
  out.close();
}
 Українська