Tạo và thao tác bảng trong PowerPoint Java

Các bảng được sử dụng để tổ chức tốt dữ liệu dưới dạng hàng và cột. Hơn nữa, họ tóm tắt dữ liệu để được xem và phân tích một cách dễ dàng. MS PowerPoint cũng cho phép người thuyết trình tạo bảng trong bài thuyết trình. Theo đó, trong bài viết này, bạn sẽ học cách tạo và thao tác với bảng trong bài thuyết trình PowerPoint bằng Java.

Java API để tạo và thao tác bảng trong PowerPoint PPT

Để tạo và thao tác với các bảng trong bản trình bày PowerPoint, chúng tôi sẽ sử dụng Aspose.Slides for Java. API được thiết kế để tạo, thao tác và chuyển đổi các bản trình bày PowerPoint và OpenOffice. Bạn có thể tải xuống JAR của API hoặc cài đặt nó bằng cách sử dụng các cấu hình Maven sau.

<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>

Tạo bảng trong PowerPoint PPT bằng Java

Tạo một bảng bằng Aspose.Slides for Java dễ dàng như một chiếc bánh. Các bước sau đây trình bày cách tạo bảng trong PowerPoint PPT từ đầu bằng Java.

Mẫu mã sau đây cho thấy cách thêm bảng trong PowerPoint PPT trong Java.

// Tạo hoặc tải bản trình bày
Presentation pres = new Presentation();
try {
	// Truy cập trang trình bày đầu tiên
	ISlide sld = pres.getSlides().get_Item(0);

	// Xác định cột có chiều rộng và hàng có chiều cao
	double[] dblCols = { 50, 50, 50 };
	double[] dblRows = { 50, 30, 30, 30, 30 };

	// Thêm hình dạng bảng vào trang trình bày
	ITable tbl = sld.getShapes().addTable(100, 50, dblCols, dblRows);

	// Đặt định dạng văn bản và đường viền cho mỗi ô
	for (int row = 0; row < tbl.getRows().size(); row++) {
		for (int cell = 0; cell < tbl.getRows().get_Item(row).size(); cell++) {

			// Đặt văn bản
			tbl.getRows().get_Item(row).get_Item(cell).getTextFrame().setText("Cell_" + cell);
			
			// Đặt đường viền
			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);
		}
	}
	
	// Lưu PPTX vào đĩa
	pres.save("table.pptx", SaveFormat.Pptx);
} finally {
	if (pres != null)
		pres.dispose();
}

Ảnh chụp màn hình sau đây cho thấy bảng mà chúng tôi đã tạo bằng cách sử dụng mã trên.

Tạo bảng trong PowerPoint Java

Truy cập Bảng trong PPT bằng Java

Bạn cũng có thể truy cập các bảng trong bản trình bày PowerPoint hiện có và thao tác chúng theo yêu cầu. Sau đây là các bước để truy cập các bảng trong bản trình bày.

  • Đầu tiên, tải một bản trình bày hiện có bằng lớp Trình bày.
  • Sau đó, lấy tham chiếu của trang trình bày mong muốn vào đối tượng ISlide.
  • Tạo một thể hiện của ITable và khởi tạo nó bằng null.
  • Lặp lại tất cả các đối tượng IShape trong bộ sưu tập ISlide.getShapes().
  • Lọc các hình dạng của loại ITable.
  • Nhập hình dạng thành ITable và thao tác theo yêu cầu.
  • Cuối cùng, lưu bản trình bày bằng phương thức Presentation.save (String, SaveFormat).

Mẫu mã sau đây cho thấy cách truy cập bảng trong bản trình bày PowerPoint bằng Java.

// Tạo hoặc tải bản trình bày
Presentation pres = new Presentation("UpdateExistingTable.pptx");
try {
    // Truy cập trang trình bày đầu tiên
    ISlide sld = pres.getSlides().get_Item(0);

    // Khởi tạo ITable
    ITable tbl = null;

    // Lặp lại các hình dạng và nhận tham chiếu đến bảng được tìm thấy
   for (IShape shp : sld.getShapes()) 
    {
        if (shp instanceof ITable) 
        {
            tbl = (ITable) shp;
            // Đặt văn bản của cột đầu tiên của hàng thứ hai
            tbl.get_Item(0, 1).getTextFrame().setText("New");
        }
    }
    
    // Ghi PPTX vào đĩa
    pres.save("table1_out.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Định dạng văn bản trong bảng PowerPoint bằng Java

Aspose.Slides for Java cũng cho phép bạn thiết lập định dạng bảng khá dễ dàng, như được trình bày trong các bước dưới đây.

  • Đầu tiên, tải một bản trình bày hiện có bằng lớp Trình bày.
  • Sau đó, lấy tham chiếu của trang chiếu mong muốn vào đối tượng ISlide.
  • Truy xuất tham chiếu của bảng mong muốn từ trang trình bày vào một phiên bản của lớp ITable.
  • Đặt định dạng bằng cách sử dụng các lớp PortionFormat, ParagraphFormatTextFrameFormat.
  • Gán định dạng cho bảng bằng các phương thức ITable.setTextFormat().
  • Cuối cùng, lưu bản trình bày bằng phương thức Presentation.save (String, SaveFormat).

Mẫu mã sau đây cho thấy cách đặt định dạng bảng trong PowerPoint bằng Java.

// Tải bản trình bày
Presentation pres = new Presentation("simpletable.pptx");
try {
    // Tham khảo bảng
    ITable someTable = (ITable) pres.getSlides().get_Item(0).getShapes().get_Item(0);
    
    // Đặt chiều cao phông chữ của các ô trong bảng
    PortionFormat portionFormat = new PortionFormat();
    portionFormat.setFontHeight(25);
    someTable.setTextFormat(portionFormat);
    
    // Đặt căn chỉnh văn bản và lề phải của các ô trong bảng trong một lệnh gọi
    ParagraphFormat paragraphFormat = new ParagraphFormat();
    paragraphFormat.setAlignment(TextAlignment.Right);
    paragraphFormat.setMarginRight(20);
    someTable.setTextFormat(paragraphFormat);
    
    // Đặt kiểu dọc văn bản của các ô trong bảng
    TextFrameFormat textFrameFormat = new TextFrameFormat();
    textFrameFormat.setTextVerticalType(TextVerticalType.Vertical);
    someTable.setTextFormat(textFrameFormat);
    
    // Lưu bản trình bày
    pres.save("result.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Khóa tỷ lệ khung hình của bảng trong PPTX bằng Java

Bạn cũng có thể khóa tỷ lệ khung hình của các bảng trong PowerPoint PPT bằng Java. Sau đây là các bước để đạt được điều này.

  • Đầu tiên, tải bản trình bày hiện có bằng lớp Trình bày.
  • Nhận tham chiếu của trang trình bày mong muốn vào đối tượng ISlide.
  • Tạo bảng hoặc truy xuất tham chiếu của bảng hiện có vào đối tượng ITable.
  • Khóa tỷ lệ khung hình bằng phương thức ITable.getGraphicalObjectLock(). SetAspectRatioLocked (! ITable.getGraphicalObjectLock(). GetAspectRatioLocked()).
  • Cuối cùng, lưu bản trình bày bằng phương thức Presentation.save (String, SaveFormat).

Mẫu mã Java sau đây cho thấy cách khóa tỷ lệ co của bảng trong PowerPoint PPTX.

// Tải bản trình bày
Presentation pres = new Presentation("pres.pptx");
try {
    // Tham khảo bảng
    ITable table = (ITable)pres.getSlides().get_Item(0).getShapes().get_Item(0);
    System.out.println("Khóa tỷ lệ khung hình set: " + table.getGraphicalObjectLock().getAspectRatioLocked());

    // Khóa tỷ lệ khung hình
    table.getGraphicalObjectLock().setAspectRatioLocked(!table.getGraphicalObjectLock().getAspectRatioLocked()); // invert
    System.out.println("Khóa tỷ lệ khung hình set: " + table.getGraphicalObjectLock().getAspectRatioLocked());

    // Lưu bản trình bày
    pres.save("pres-out.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Java API để tạo bảng PowerPoint - Nhận giấy phép miễn phí

Bạn có thể sử dụng Aspose.Slides for Java mà không bị giới hạn đánh giá bằng cách nhận giấy phép tạm thời miễn phí.

Sự kết luận

Trong bài này, bạn đã học cách tạo bảng trong PowerPoint PPT bằng Java. Hơn nữa, bạn đã thấy cách truy cập các bảng và đặt định dạng và tỷ lệ co của chúng theo chương trình. Ngoài ra, bạn có thể truy cập tài liệu để khám phá thêm về Aspose.Slides for Java. Ngoài ra, bạn có thể đặt câu hỏi của mình qua diễn đàn của chúng tôi.

Xem thêm