Apache POI HSLF

 
 

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

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

Какво е Apache POI HSLF?

Apache POI HSLF е чиста реализация на Java за четене, създаване, модифициране или изобразяване на PowerPoint презентации. Той предоставя начин за четене, създаване или промяна на PPT файлов формат на презентации на PowerPoint. Той осигурява поддръжка за извличане на данни като текст, изображения, звуци, вградени обекти и много повече от презентации на PowerPoint.

Той също така поддържа рисуване на фигура върху слайд, добавяне на хипервръзки, таблици, изображения, персонализиране на горни и долни колонтитули, създаване на списъци с водещи символи, извличане на вградени звуци и много други.

Previous Next

Първи стъпки с Apache POI HSLF

На първо място, трябва да имате инсталиран Java Development Kit (JDK) на вашата система. Ако вече го имате, продължете към страницата за изтегляне на Apache POI, за да получите най-новата стабилна версия в архив. Извлечете съдържанието на ZIP файла във всяка директория, откъдето необходимите библиотеки могат да бъдат свързани към вашата Java програма. Това е всичко!

Позоваването на Apache POI във вашия базиран на Maven Java проект е още по-лесно. Всичко, от което се нуждаете, е да добавите следната зависимост във вашия 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();
}
 Български