PowerPoint Java에서 테이블 생성 및 조작

테이블은 행과 열의 형태로 데이터를 잘 구성하는 데 사용됩니다. 또한 보고 분석할 데이터를 쉽게 요약합니다. MS PowerPoint를 사용하면 발표자가 프레젠테이션에서 표를 만들 수도 있습니다. 따라서 이 기사에서는 Java를 사용하여 PowerPoint 프레젠테이션에서 표를 만들고 조작하는 방법을 배웁니다.

PowerPoint에서 테이블을 만들고 조작하는 Java API

PowerPoint 프레젠테이션에서 테이블을 만들고 조작하기 위해 Aspose.Slides for Java를 사용합니다. API는 PowerPoint 및 OpenOffice 프레젠테이션을 생성, 조작 및 변환하도록 설계되었습니다. API의 JAR을 다운로드하거나 다음 Maven 구성을 사용하여 설치할 수 있습니다.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-slides</artifactId>
    <version>21.8</version>
    <classifier>jdk16</classifier>
</dependency>

Java를 사용하여 PowerPoint 프레젠테이션에서 표 만들기

Java용 Aspose.Slides를 사용하여 테이블을 만드는 것은 파이만큼 쉽습니다. 다음 단계는 Java를 사용하여 PowerPoint 프레젠테이션에서 처음부터 표를 만드는 방법을 보여줍니다.

다음 코드 샘플은 PowerPoint 프레젠테이션에서 표를 만드는 방법을 보여줍니다.

// 프레젠테이션 만들기 또는 로드
Presentation pres = new Presentation();
try {
	// 첫 번째 슬라이드 액세스
	ISlide sld = pres.getSlides().get_Item(0);

	// 너비가 있는 열과 높이가 있는 행 정의
	double[] dblCols = { 50, 50, 50 };
	double[] dblRows = { 50, 30, 30, 30, 30 };

	// 슬라이드에 표 모양 추가
	ITable tbl = sld.getShapes().addTable(100, 50, dblCols, dblRows);

	// 각 셀의 텍스트 및 테두리 형식 설정
	for (int row = 0; row < tbl.getRows().size(); row++) {
		for (int cell = 0; cell < tbl.getRows().get_Item(row).size(); cell++) {

			// 텍스트 설정
			tbl.getRows().get_Item(row).get_Item(cell).getTextFrame().setText("Cell_" + cell);
			
			// 테두리 설정
			ICellFormat cellFormat = tbl.getRows().get_Item(row).get_Item(cell).getCellFormat();
			cellFormat.getBorderTop().getFillFormat().setFillType(FillType.Solid);
			cellFormat.getBorderTop().getFillFormat().getSolidFillColor().setColor(Color.RED);
			cellFormat.getBorderTop().setWidth(5);

			cellFormat.getBorderBottom().getFillFormat().setFillType(FillType.Solid);
			cellFormat.getBorderBottom().getFillFormat().getSolidFillColor().setColor(Color.RED);
			cellFormat.getBorderBottom().setWidth(5);

			cellFormat.getBorderLeft().getFillFormat().setFillType(FillType.Solid);
			cellFormat.getBorderLeft().getFillFormat().getSolidFillColor().setColor(Color.RED);
			cellFormat.getBorderLeft().setWidth(5);

			cellFormat.getBorderRight().getFillFormat().setFillType(FillType.Solid);
			cellFormat.getBorderRight().getFillFormat().getSolidFillColor().setColor(Color.RED);
			cellFormat.getBorderRight().setWidth(5);
		}
	}
	
	// PPTX를 디스크에 저장
	pres.save("table.pptx", SaveFormat.Pptx);
} finally {
	if (pres != null)
		pres.dispose();
}

다음 스크린샷은 위의 코드를 사용하여 만든 테이블을 보여줍니다.

PowerPoint Java에서 테이블 만들기

Java를 사용하여 프레젠테이션의 테이블에 액세스

기존 PowerPoint 프레젠테이션의 표에 액세스하여 필요에 따라 조작할 수도 있습니다. 다음은 프레젠테이션의 테이블에 액세스하는 단계입니다.

  • 먼저 Presentation 클래스를 사용하여 기존 프레젠테이션을 로드합니다.
  • 그런 다음 ISlide 개체에 원하는 슬라이드의 참조를 가져옵니다.
  • ITable의 인스턴스를 만들고 null로 초기화합니다.
  • ISlide.getShapes() 컬렉션의 모든 IShape 객체를 반복합니다.
  • ITable 유형의 모양을 필터링합니다.
  • ITable에 모양을 입력하고 필요에 따라 조작하십시오.
  • 마지막으로 Presentation.save(String, SaveFormat) 메서드를 사용하여 프레젠테이션을 저장합니다.

다음 코드 샘플은 Java를 사용하여 PowerPoint 프레젠테이션의 테이블에 액세스하는 방법을 보여줍니다.

// 프레젠테이션 만들기 또는 로드
Presentation pres = new Presentation("UpdateExistingTable.pptx");
try {
    // 첫 번째 슬라이드에 액세스
    ISlide sld = pres.getSlides().get_Item(0);

    // ITable 초기화
    ITable tbl = null;

    // 모양을 반복하고 찾은 테이블에 대한 참조 가져오기
    for (IShape shp : sld.getShapes()) 
    {
        if (shp instanceof ITable) 
        {
            tbl = (ITable) shp;
            // 두 번째 행의 첫 번째 열의 텍스트 설정
            tbl.get_Item(0, 1).getTextFrame().setText("New");
        }
    }
    
    // 디스크에 PPTX 쓰기
    pres.save("table1_out.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Java를 사용하여 PowerPoint 테이블의 텍스트 서식 지정

또한 Aspose.Slides for Java를 사용하면 아래 단계에서 설명하는 것처럼 테이블 형식을 아주 쉽게 설정할 수 있습니다.

  • 먼저 Presentation 클래스를 사용하여 기존 프레젠테이션을 로드합니다.
  • 그런 다음 ISlide 개체에 원하는 슬라이드의 참조를 가져옵니다.
  • 슬라이드에서 ITable 클래스의 인스턴스로 원하는 테이블의 참조를 검색합니다.
  • PortionFormat, ParagraphFormatTextFrameFormat 클래스를 사용하여 서식을 설정합니다.
  • ITable.setTextFormat() 메서드를 사용하여 테이블에 서식을 지정합니다.
  • 마지막으로 Presentation.save(String, SaveFormat) 메서드를 사용하여 프레젠테이션을 저장합니다.

다음 코드 샘플은 Java를 사용하여 PowerPoint에서 표의 서식을 설정하는 방법을 보여줍니다.

// 프레젠테이션 로드
Presentation pres = new Presentation("simpletable.pptx");
try {
    // 테이블 참조 가져오기
    ITable someTable = (ITable) pres.getSlides().get_Item(0).getShapes().get_Item(0);
    
    // 표 셀의 글꼴 높이 설정
    PortionFormat portionFormat = new PortionFormat();
    portionFormat.setFontHeight(25);
    someTable.setTextFormat(portionFormat);
    
    // 한 번의 호출로 표 셀의 텍스트 정렬 및 오른쪽 여백 설정
    ParagraphFormat paragraphFormat = new ParagraphFormat();
    paragraphFormat.setAlignment(TextAlignment.Right);
    paragraphFormat.setMarginRight(20);
    someTable.setTextFormat(paragraphFormat);
    
    // 표 셀의 텍스트 세로 유형 설정
    TextFrameFormat textFrameFormat = new TextFrameFormat();
    textFrameFormat.setTextVerticalType(TextVerticalType.Vertical);
    someTable.setTextFormat(textFrameFormat);
    
    // 프레젠테이션 저장
    pres.save("result.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Java를 사용하여 PowerPoint에서 테이블의 가로 세로 비율 잠금

Java를 사용하여 PowerPoint 프레젠테이션에서 표의 가로 세로 비율을 잠글 수도 있습니다. 이를 달성하기 위한 단계는 다음과 같습니다.

  • 먼저 Presentation 클래스를 사용하여 기존 프레젠테이션을 로드합니다.
  • 원하는 슬라이드의 참조를 ISlide 개체로 가져옵니다.
  • 테이블을 생성하거나 기존 테이블의 참조를 ITable 개체로 검색합니다.
  • ITable.getGraphicalObjectLock().setAspectRatioLocked(!ITable.getGraphicalObjectLock().getAspectRatioLocked()) 메서드를 사용하여 종횡비를 잠급니다.
  • 마지막으로 Presentation.save(String, SaveFormat) 메서드를 사용하여 프레젠테이션을 저장합니다.

다음 코드 샘플은 PowerPoint 프레젠테이션에서 표의 가로 세로 비율을 잠그는 방법을 보여줍니다.

// 프레젠테이션 로드
Presentation pres = new Presentation("pres.pptx");
try {
    // 테이블 참조 가져오기
    ITable table = (ITable)pres.getSlides().get_Item(0).getShapes().get_Item(0);
    System.out.println("가로 세로 비율 잠금 set: " + table.getGraphicalObjectLock().getAspectRatioLocked());

    // 가로 세로 비율 잠금
    table.getGraphicalObjectLock().setAspectRatioLocked(!table.getGraphicalObjectLock().getAspectRatioLocked()); // invert
    System.out.println("가로 세로 비율 잠금 set: " + table.getGraphicalObjectLock().getAspectRatioLocked());

    // 프레젠테이션 저장
    pres.save("pres-out.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

무료 API 라이선스 받기

무료 임시 라이선스를 얻으면 평가 제한 없이 Java용 Aspose.Slides를 사용할 수 있습니다.

결론

이 기사에서는 Java를 사용하여 PowerPoint 프레젠테이션에서 표를 만드는 방법을 배웠습니다. 또한 테이블에 액세스하고 프로그래밍 방식으로 형식 및 종횡비를 설정하는 방법을 살펴보았습니다. 또한 문서를 방문하여 Java용 Aspose.Slides에 대해 자세히 알아볼 수 있습니다. 또한 포럼을 통해 질문할 수 있습니다.

또한보십시오