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

Apache POI XSLF  

 
 

PPTX 프레젠테이션용 오픈소스 Java API

자바 라이브러리를 통해 Microsoft PowerPoint OOXML 프레젠테이션을 만들고 수정하고 병합합니다.

Apache POI XLSF는 PowerPoint PPTX 파일을 읽고, 만들고, 편집하기 위한 Java 구현입니다. PowerPoint 2007 OOXML 파일 형식으로 작업하는 데 필요한 기능을 제공하므로 개발자는 PowerPoint PPTX 프레젠테이션에서 텍스트, 이미지, 포함된 개체 등의 데이터를 추출할 수 있습니다. 개발자는 또한 슬라이드에 모양을 추가하고, 하이퍼링크 및 이미지를 관리하고, 비디오를 추가하고, PPTX를 SVG로 변환할 수 있습니다.

Previous Next

Apache POI XLSF 시작하기

먼저 시스템에 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</artifactId>
  <version>4.1.0</version>
</dependency>

새 프레젠테이션을 만들고 기존 파일에 슬라이드를 추가하는 Java API

Apache POI XLSF를 사용하면 컴퓨터 프로그래머가 처음부터 PPTX 파일 형식으로 새 PowerPoint 프레젠테이션을 만들 수 있습니다. 개발자는 필요에 따라 기존 프레젠테이션을 변형할 수도 있습니다. 기존 프레젠테이션을 읽고 수정하고 필요에 따라 기존 프레젠테이션에 슬라이드를 추가하는 기능을 제공합니다.

프레젠테이션 만들기 및 슬라이드 추가 - 자바

// create a new PPTX file
FileOutputStream fileOutputStream = new FileOutputStream(new File("Slide.pptx"));
// create a new slide show
XMLSlideShow xmlSlideShow = new XMLSlideShow();
// save file
xmlSlideShow.write(fileOutputStream);

Java 앱의 미리 정의된 슬라이드 레이아웃에서 새 슬라이드 만들기

Apache POI XLSF API에는 PPTX 프레젠테이션 내부에 미리 정의된 슬라이드 레이아웃에서 새 슬라이드를 추가하는 지원이 포함되어 있습니다. 슬라이드 레이아웃에는 슬라이드에 표시되는 모든 콘텐츠에 대한 서식, 위치 및 자리 표시자 상자가 포함되어 있습니다. PowerPoint 프레젠테이션에는 여러 슬라이드 레이아웃이 있습니다. 먼저 어떤 슬라이드 레이아웃을 사용할 수 있는지 확인해야 합니다. 다양한 슬라이드 마스터가 있으며 각 슬라이드 마스터에는 여러 슬라이드 레이아웃이 있습니다. 

제목 레이아웃 슬라이드 - 자바

// create a new PPTX file
FileOutputStream fileOutputStream = new FileOutputStream(new File("Slidelayout.pptx"));
// create a new slide show
XMLSlideShow xmlSlideShow = new XMLSlideShow();
// initialize slide master object
XSLFSlideMaster xslfSlideMaster = xmlSlideShow.getSlideMasters().get(0);
// set Title layout
XSLFSlideLayout xslfSlideLayout = xslfSlideMaster.getLayout(SlideLayout.TITLE);
// create a new slide with title layout
XSLFSlide xslfSlide = xmlSlideShow.createSlide(xslfSlideLayout);
// select place holder
XSLFTextShape xslfTextShape = xslfSlide.getPlaceholder(0);
// set title
xslfTextShape.setText("Test");
// save file
xmlSlideShow.write(fileOutputStream);
// close stream
fileOutputStream.close();

자바를 사용하여 여러 PPTX 프레젠테이션 병합

하나의 프레젠테이션으로 결합하고 싶은 PPTX 프레젠테이션이 여러 개 있습니까? Apache POI XLSF API는 확실히 도움이 될 수 있으며 Java 개발자가 여러 PPTX 파일을 병합할 수 있도록 합니다.

프레젠테이션의 슬라이드 병합 - Java

// create a new PPTX file
FileOutputStream fileOutputStream = new FileOutputStream("MergegSlide.pptx");
// select two PPTX files
String[] inputFiles = {"Slide.pptx", "SlideLayout.pptx"};
// create a new slide show
XMLSlideShow slideShow = new XMLSlideShow();
// merge slides
for(String file : inputFiles){
  FileInputStream inputstream = new FileInputStream(file);
  XMLSlideShow xmlSlideShow = new XMLSlideShow(inputstream);
  for(XSLFSlide srcSlide : xmlSlideShow.getSlides()) {
    slideShow.createSlide().importContent(srcSlide);
  }
}
// saving file
slideShow.write(fileOutputStream);
// close stream
fileOutputStream.close();
 한국인