1. 제품
  2.   프레젠테이션
  3.   Java
  4.   Apache POI HSLF

Apache POI HSLF

 
 

Microsoft® PPT 프레젠테이션 파일 형식용 Java 라이브러리

프레젠테이션에 슬라이드 및 이미지를 추가하고 오픈 소스 무료 Java API를 사용하여 PPT 파일을 변환합니다.

Apache POI HSLF란 무엇입니까?

Apache POI HSLF는 PowerPoint 프레젠테이션을 읽고, 만들고, 수정하거나 렌더링하기 위한 순수한 Java 구현입니다. PowerPoint 프레젠테이션 PPT 파일 형식을 읽거나 생성하거나 수정하는 방법을 제공합니다. PowerPoint 프레젠테이션에서 텍스트, 이미지, 사운드, 포함된 개체 등의 데이터 추출을 지원합니다.

또한 슬라이드에 모양 그리기, 하이퍼링크, 표, 이미지 추가, 머리글 및 바닥글 사용자 지정, 글머리 기호 목록 만들기, 포함된 사운드 검색 등을 지원합니다.

Previous Next

Apache POI HSLF 시작하기

먼저 시스템에 JDK(Java Development Kit)가 설치되어 있어야 합니다. 이미 가지고 있는 경우 Apache POI의 다운로드 페이지로 이동하여 아카이브에서 최신 안정 릴리스를 얻으십시오. 필요한 라이브러리가 Java 프로그램에 링크될 수 있는 디렉토리에서 ZIP 파일의 컨텐츠를 추출하십시오. 그게 다야!

Maven 기반 Java 프로젝트에서 Apache POI를 참조하는 것은 훨씬 더 간단합니다. 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를 사용하면 프로그래머가 PPT 파일 형식으로 새 PowerPoint 프레젠테이션을 만들 수 있습니다. 개발자는 필요에 따라 기존 프레젠테이션을 변형할 수도 있습니다. API는 또한 PowerPoint 프레젠테이션에서 텍스트, 이미지, 사운드, 포함된 개체 등과 같은 데이터를 추출하는 기능을 지원합니다.

PPT 파일 만들기 - 자바

// 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에 머리글 및 바닥글 사용자 지정

개발자는 Apache HSLF API를 사용하여 PPT 프레젠테이션 내에서 필요에 따라 새 슬라이드를 쉽게 추가하고 기존 슬라이드를 수정할 수 있습니다. 이제 개발자는 프레젠테이션에 사용자 지정된 머리글과 바닥글을 추가할 수 있습니다. 또한 슬라이드 제목 추가, 미리 정의된 레이아웃으로 슬라이드 만들기, 슬라이드/모양 배경 작업 등을 완벽하게 지원합니다.

Java를 통해 PPT에 이미지 삽입

  1. FileOutputStream을 사용하여 새 PPT 파일을 만들고 출력 파일 이름을 문자열로 사용하여 new File() 인스턴스를 전달합니다.
  2. HSLFSlideShow() 메서드를 사용하여 새 슬라이드 쇼 추가
  3. createSlide() 메서드를 사용하여 새 슬라이드 추가
  4. IOUtils.toByteArray() 메서드를 사용하여 이미지 바이트를 가져오고 FileInputStream() 메서드를 통해 이미지를 전달합니다.
  5. hslfSlideShow.addPicture(picture, HSLFPictureData.PictureType.PNG) 메서드를 사용하여 슬라이드에 이미지를 추가합니다. 이 메서드는 그림 바이트와 그림 유형을 인수로 받아들입니다.
  6. 파일 쓰기 및 저장

PPT에 이미지 추가 - 자바

// 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를 이미지로 변환 - 자바

//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();
}
 한국인