快速学会使用Java创建PowerPoint演示文稿

我是研究僧i 提交于 2021-01-22 13:35:16

PowerPoint演示文稿使您可以创建包含文字,图形,图表,动画和其他元素的精美幻灯片,以使演示文稿更具吸引力。在本文中,将学习如何使用Java实现PowerPoint自动化功能。特别是,将了解如何使用Java创建PowerPoint演示文稿并向幻灯片中添加各种元素。

  • 使用Java创建PowerPoint演示文稿
  • 打开现有的PowerPoint演示文稿
  • 将幻灯片添加到演示文稿
  • 将文本添加到演示文稿的幻灯片
  • 在演示文稿中创建表
  • 向演示文稿添加图像

为了实现PowerPoint自动化功能,Aspose提供了Java API的Aspose.Slides。该API可以轻松地从Java应用程序中创建,编辑,转换和操作PowerPoint演示文稿。

>>你可以点击这里下载Aspose.Slides for java最新版测试体验。


使用Java创建PowerPoint演示文稿

首先从PowerPoint自动化开始,首先创建一个空的演示文稿文档,然后将其另存为PPTX文件。以下是创建演示文稿文档的步骤。

  • 创建Presentation 类的实例 。
  • 使用Presentation.save(String,SaveFormat) 方法将其另存为PPTX 。

下面的代码示例演示如何使用Java创建PowerPoint演示文稿。

// Instantiate a Presentation object that represents a presentation file
Presentation presentation = new Presentation();

// Get the first slide
ISlide slide = presentation.getSlides().get_Item(0);

// Add content to slide...

// Save presentation
presentation.save("NewPresentation.pptx", SaveFormat.Pptx);

使用Java打开现有的PowerPoint演示文稿

Aspose.Slides for Java还允许您打开现有的PowerPoint演示文稿以更新其内容。以下是加载PowerPoint PPTX文件的步骤。

  • 创建Presentation 类的实例, 并提供PPTX文件的构造函数路径。
  • 更新演示文稿的内容。
  • 使用Presentation.save(String,SaveFormat) 方法保存更新的演示 文稿。

下面的代码示例演示如何使用Java打开现有的PowerPoint演示文稿。

// Instantiate a Presentation object that represents a presentation file
Presentation presentation = new Presentation("presentation.pptx");

// Get the first slide
ISlide slide = presentation.getSlides().get_Item(0);

// add or update content to slide...

// Save presentation
presentation.save("NewPresentation.pptx", SaveFormat.Pptx);

使用Java将幻灯片添加到演示文稿中

现在让我们看一下如何将幻灯片添加到演示文稿文档中。可以针对新演示文稿或现有演示文稿执行此操作。以下是将幻灯片添加到演示文稿的步骤。

  • 创建Presentation 类的实例, 并提供PPTX文件的构造函数路径。
  • 通过设置对Presentation.getSlides()的引用来实例化 ISlideCollection类 。
  • 使用ISlideCollection 对象 公开的ISlideCollection.addEmptySlide (ILayoutSlide)方法 向演示文稿添加一个空幻灯片 。
  • 使用Presentation.save(String,SaveFormat) 方法保存更新的演示 文稿。

下面的代码示例演示如何使用Java将幻灯片添加到演示文稿中。

// Instantiate a Presentation object that represents a presentation file
Presentation presentation = new Presentation("presentation.pptx");

// Access the slides collection
ISlideCollection slds = presentation.getSlides();

for (int i = 0; i < presentation.getLayoutSlides().size(); i++) { // Add an empty slide to the Slides collection slds.addEmptySlide(presentation.getLayoutSlides().get_Item(i)); } // Save presentation presentation.save("NewPresentation.pptx", SaveFormat.Pptx);

使用Java将文本添加到演示幻灯片

创建演示文稿并向其中添加幻灯片后,就可以开始在其中插入不同的元素了。首先,让我们看一下使用Aspose.Slides for Java将文本添加到幻灯片的步骤。

  • 创建Presentation 类的实例, 并提供PPTX文件的构造函数路径。
  • 获取要在ISlide对象中添加文本的幻灯片的引用。
  • 使用ISlide.getShapes()。addAutoShape()方法添加一个矩形,并在IAutoShape 对象中获取其引用 。
  • 将TextFrame添加 到包含默认文本的形状中。
  • 设置文本的属性,例如填充颜色,填充类型等。
  • 使用Presentation.save(String,SaveFormat) 方法保存更新的演示 文稿。

下面的代码示例演示如何使用Java将文本添加到PowerPoint演示文稿中。

// Instantiate a Presentation object that represents a presentation file
Presentation presentation = new Presentation("presentation.pptx");

// Get the first slide
ISlide sld = (ISlide) presentation.getSlides().get_Item(0);

// Add an AutoShape of Rectangle type
IAutoShape ashp = sld.getShapes().addAutoShape(ShapeType.Rectangle, 150, 75, 150, 50);

// Add ITextFrame to the Rectangle
ashp.addTextFrame("Hello World");

// Change the text color to Black (which is White by default)
ashp.getTextFrame().getParagraphs().get_Item(0).getPortions().get_Item(0).getPortionFormat().getFillFormat()
		.setFillType(FillType.Solid);
ashp.getTextFrame().getParagraphs().get_Item(0).getPortions().get_Item(0).getPortionFormat().getFillFormat()
		.getSolidFillColor().setColor(java.awt.Color.BLACK);

// Change the line color of the rectangle to White
ashp.getShapeStyle().getLineColor().setColor(java.awt.Color.WHITE);

// Remove any fill formatting in the shape
ashp.getFillFormat().setFillType(FillType.NoFill);

// Save presentation
presentation.save("NewPresentation.pptx", SaveFormat.Pptx);

使用Java在演示文稿中创建表

表是一个重要元素,用于以行和列的形式组织内容。要将表格添加到幻灯片,可以按照以下步骤操作。

  • 创建Presentation 类的实例, 并提供PPTX文件的构造函数路径。
  • 获取要向其添加文本的幻灯片的参考。
  • 创建一个列宽数组。
  • 创建行高的数组。
  • 使用ISlide.getShapes()。addTable()方法将表添加到幻灯片中,并获取对ITable对象的引用。
  • 遍历每个单元格以将格式应用于“上”,“下”,“右”和“左”边框。
  • 在单元格中添加一些文本。
  • 使用Presentation.save(String,SaveFormat) 方法保存更新的演示 文稿。

下面的代码示例演示如何使用Java在PowerPoint演示文稿中创建表。

// Instantiate a Presentation object that represents a presentation file
Presentation presentation = new Presentation("presentation.pptx");

// Access first slide
ISlide sld = presentation.getSlides().get_Item(0);

// Define columns with widths and rows with heights
double[] dblCols = { 50, 50, 50 };
double[] dblRows = { 50, 30, 30, 30, 30 };

// Add table shape to slide
ITable tbl = sld.getShapes().addTable(100, 50, dblCols, dblRows);

// Set border format for each cell
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).getBorderTop().getFillFormat().setFillType(FillType.Solid); tbl.getRows().get_Item(row).get_Item(cell).getBorderTop().getFillFormat().getSolidFillColor() .setColor(Color.RED); tbl.getRows().get_Item(row).get_Item(cell).getBorderTop().setWidth(5); tbl.getRows().get_Item(row).get_Item(cell).getBorderBottom().getFillFormat() .setFillType(FillType.Solid); tbl.getRows().get_Item(row).get_Item(cell).getBorderBottom().getFillFormat().getSolidFillColor() .setColor(Color.RED); tbl.getRows().get_Item(row).get_Item(cell).getBorderBottom().setWidth(5); tbl.getRows().get_Item(row).get_Item(cell).getBorderLeft().getFillFormat().setFillType(FillType.Solid); tbl.getRows().get_Item(row).get_Item(cell).getBorderLeft().getFillFormat().getSolidFillColor() .setColor(Color.RED); tbl.getRows().get_Item(row).get_Item(cell).getBorderLeft().setWidth(5); tbl.getRows().get_Item(row).get_Item(cell).getBorderRight().getFillFormat().setFillType(FillType.Solid); tbl.getRows().get_Item(row).get_Item(cell).getBorderRight().getFillFormat().getSolidFillColor() .setColor(Color.RED); tbl.getRows().get_Item(row).get_Item(cell).getBorderRight().setWidth(5); } } // Merge cells 1 & 2 of row 1 tbl.mergeCells(tbl.getRows().get_Item(0).get_Item(0), tbl.getRows().get_Item(1).get_Item(0), false); // Add text to the merged cell tbl.getRows().get_Item(0).get_Item(0).getTextFrame().setText("Merged Cells"); // Save presentation presentation.save("NewPresentation.pptx", SaveFormat.Pptx);

使用Java在演示文稿中添加图像

以下是使用Java在PowerPoint演示文稿中添加图像的步骤。

  • 创建Presentation 类的实例, 并提供PPTX文件的构造函数路径。
  • 在ISlide对象中获取幻灯片的引用。
  • 创建一个IPPImage类的对象。
  • 使用Presentation.getImages()。addImage(FileInputStream)方法将图像添加到演示文稿中。
  • 将图像作为相框添加到幻灯片上,其高度和宽度与图像相等。
  • 使用Presentation.save(String,SaveFormat) 方法保存更新的演示 文稿。

下面的代码示例演示如何使用Java将图像添加到PowerPoint演示文稿中。

// Instantiate a Presentation object that represents a presentation file
Presentation presentation = new Presentation("presentation.pptx");

// Access first slide
ISlide sld = presentation.getSlides().get_Item(0);

// Instantiate the IPPImage class
IPPImage imgx = null;

try {
	// Add image to slide
	imgx = presentation.getImages().addImage(new FileInputStream(new File("greentick.png")));
}
catch (IOException e) {
}

// Add Picture Frame with height and width equivalent of Picture
sld.getShapes().addPictureFrame(ShapeType.Rectangle, 50, 150, imgx.getWidth(), imgx.getHeight(), imgx);

// Save presentation
presentation.save("NewPresentation.pptx", SaveFormat.Pptx);

如果您有任何疑问或需求,请随时加入Aspose技术交流群(761297826),我们很高兴为您提供查询和咨询

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!