在 Java 中添加或删除 PowerPoint PPT 中的超链接

在各种情况下,我们必须在 PowerPoint 演示文稿中插入超链接,例如用于提供网页的 URL。您可以在 PowerPoint PPT 幻灯片中创建文本、图像、形状或媒体元素的超链接。在本文中,您将学习如何在 Java 中向 PowerPoint PPT/PPTX 添加超链接。最后,我们还将讨论如何以编程方式从 PPT 幻灯片中删除超链接。

要在 PowerPoint 演示文稿中插入或删除超链接,我们将使用 Aspose.Slides for Java。该 API 提供了一系列功能来无缝地创建和操作 PPT/PPTX 演示文稿。此外,它还允许您将演示文稿转换为其他文档或图像格式。您可以 下载 其 JAR 或使用以下 Maven 配置安装它。

存储库:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

依赖:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-slides</artifactId>
    <version>22.2</version>
    <classifier>jdk16</classifier>
</dependency>

PowerPoint 演示文稿中的超链接可以添加到文本、图像、形状、音频或视频元素中。以下部分介绍如何使用 Java 在 PPT/PPTX 演示文稿中添加指向这些元素的超链接。

以下是在 Java 中的 PowerPoint PPT/PPTX 中添加文本超链接的步骤。

以下代码示例演示如何使用 Java 在 PowerPoint PPTX 中添加文本超链接。

// 创建演示文稿
Presentation presentation = new Presentation();
try {
	// 添加自动形状
	IAutoShape shape = presentation.getSlides().get_Item(0).getShapes().addAutoShape(ShapeType.Rectangle, 100,
			100, 600, 50, false);
	
	// 添加超链接
	shape.setHyperlinkClick(new Hyperlink("https://www.aspose.com/"));
	shape.getHyperlinkClick().setTooltip("More than 70% Fortune 100 companies trust Aspose APIs");

	// 保存演示文稿
	presentation.save("add-text-hyperlink.pptx", SaveFormat.Pptx);
} finally {
	if (presentation != null)
		presentation.dispose();
}

以下步骤演示了如何在 Java 中的 PowerPoint 演示文稿中插入形状超链接。

下面的代码示例展示了如何使用 Java 在 PowerPoint 中创建形状的超链接。

// 创建演示文稿
Presentation presentation = new Presentation();
try {
	// 添加自动形状
	IAutoShape shape1 = presentation.getSlides().get_Item(0).getShapes().addAutoShape(ShapeType.Rectangle, 100,
			100, 600, 50, false);
	// 设置文本
	shape1.addTextFrame("Aspose: File Format APIs");

	// 获取文本部分的格式
	IPortionFormat portionFormat = shape1.getTextFrame().getParagraphs().get_Item(0).getPortions().get_Item(0)
			.getPortionFormat();
	
	// 添加超链接
	portionFormat.setHyperlinkClick(new Hyperlink("https://www.aspose.com/"));
	portionFormat.getHyperlinkClick().setTooltip("More than 70% Fortune 100 companies trust Aspose APIs");
	portionFormat.setFontHeight(32);

	// 保存演示文稿
	presentation.save("add-shape-hyperlink.pptx", SaveFormat.Pptx);
} finally {
	if (presentation != null)
		presentation.dispose();
}

以下是在 Java 的 PowerPoint PPT 中插入图像超链接的步骤。

以下代码示例演示如何使用 Java 在 PowerPoint 中创建图像的超链接。

// 创建演示文稿
Presentation presentation = new Presentation();
try {
	// 将图像添加到演示文稿
	IPPImage image = presentation.getImages().addImage(Files.readAllBytes(Paths.get("image.png")));
	
	// 根据先前添加的图像在幻灯片 1 上创建相框
	IPictureFrame pictureFrame = presentation.getSlides().get_Item(0).getShapes().addPictureFrame(ShapeType.Rectangle, 10, 10, 100, 100, image);

	// 创建超链接
	pictureFrame.setHyperlinkClick(new Hyperlink("https://www.aspose.com/"));
	pictureFrame.getHyperlinkClick().setTooltip("More than 70% Fortune 100 companies trust Aspose APIs");

	// 保存演示文稿
	presentation.save("add-image-hyperlink.pptx", SaveFormat.Pptx);
} finally {
	if (presentation != null)
		presentation.dispose();
}

您可以按照以下步骤将音频超链接添加到 PowerPoint PPT/PPTX:

以下代码片段演示了如何在 Java 中的 PowerPoint 中添加音频超链接。

// 创建演示文稿
Presentation presentation = new Presentation();
try {
	// 添加音频元素
	IAudio audio = presentation.getAudios().addAudio(Files.readAllBytes(Paths.get("audio.mp3")));
	IAudioFrame audioFrame = presentation.getSlides().get_Item(0).getShapes().addAudioFrameEmbedded(10, 10, 100, 100, audio);

	// 创建超链接
	audioFrame.setHyperlinkClick(new Hyperlink("https://www.aspose.com/"));
	audioFrame.getHyperlinkClick().setTooltip("More than 70% Fortune 100 companies trust Aspose APIs");

	// 保存演示文稿
	presentation.save("add-audio-hyperlink.pptx", SaveFormat.Pptx);
} finally {
	if (presentation != null)
		presentation.dispose();
}

要将视频超链接添加到 PowerPoint PPT/PPTX,请按照以下步骤操作:

以下代码片段演示了如何在 Java 中的 PowerPoint 中添加视频超链接:

// 创建演示文稿
Presentation presentation = new Presentation();
try {
	// 添加视频
	IVideo video = presentation.getVideos().addVideo(Files.readAllBytes(Paths.get("video.avi")));
	IVideoFrame videoFrame = presentation.getSlides().get_Item(0).getShapes().addVideoFrame(10, 10, 100, 100, video);

	// 创建超链接
	videoFrame.setHyperlinkClick(new Hyperlink("https://www.aspose.com/"));
	videoFrame.getHyperlinkClick().setTooltip("More than 70% Fortune 100 companies trust Aspose APIs");

	// 保存演示文稿
	presentation.save("add-video-hyperlink.pptx", SaveFormat.Pptx);
} finally {
	if (presentation != null)
		presentation.dispose();
}

在本节中,我们将演示如何从 PowerPoint 幻灯片中删除超链接。这些超链接可以是我们上面讨论过的任何类型。以下是执行此操作的步骤。

以下代码示例展示了如何从 Java 中的 PowerPoint PPT 中的幻灯片中删除超链接。

// 加载演示文稿
Presentation presentation = new Presentation("presentation.pptx");
try {
	// 从文本中删除超链接
	ISlide slide = presentation.getSlides().get_Item(0);
	for (IShape shape : slide.getShapes())
	{
		// 投射到 IAutoShape
		IAutoShape autoShape = (IAutoShape)shape;
		if (autoShape != null)
		{
			// 循环段落
			for (IParagraph paragraph : autoShape.getTextFrame().getParagraphs())
			{
				// 循环遍历文本部分
				for (IPortion portion : paragraph.getPortions())
				{
					portion.getPortionFormat().getHyperlinkManager().removeHyperlinkClick();
				}
			}
		}
	}
	
	// 从形状中删除超链接
	for (IShape shape : slide.getShapes())
	{
		shape.getHyperlinkManager().removeHyperlinkClick();
	}

	// 保存演示文稿
	presentation.save("remove-hyperlink.pptx", SaveFormat.Pptx);
} finally {
	if (presentation != null)
		presentation.dispose();
}

获得免费许可证

通过获得免费临时许可证,使用 Aspose.Slides for Java 不受评估限制。

结论

在本文中,您学习了如何在 Java 中添加或删除 PowerPoint PPT 中的超链接。特别是,您已经了解了如何制作文本、图像、形状、音频和视频元素的超链接。此外,我们还介绍了如何显式删除文本或形状超链接。此外,您可以通过访问 文档 了解更多关于 Aspose.Slides for Java 的信息。此外,您可以将您的查询发布到我们的 论坛

也可以看看