专业的编程技术博客社区

网站首页 > 博客文章 正文

如何在PPT中隐藏标识形状?Aspose.Slides最新版轻松解决

baijin 2024-09-11 00:50:59 博客文章 8 ℃ 0 评论

Aspose.Slides for .NET是独特的演示处理API,使应用程序能够读取,编写,修改和转换PowerPoint演示文稿。作为独立的API,它提供了管理PowerPoint关键功能的功能,例如管理文本,形状,表格和动画,向幻灯片添加音频和视频,预览幻灯片等等。

Aspose.Slides for .NET更新至最新版v19.9,现在有一些非常有趣且实用的功能值得为大家讲解一下,比如通过“替代文本”来隐藏形状,接下来通过一些简单的示例来为大家说明一下!

隐藏形状

首先,需要使用“替代文本”属性来标识所需的形状。然后,使用以下示例在API中隐藏形状的代码。

//文档目录的路径。 
string dataDir = RunExamples.GetDataDir_Shapes(); 
//实例化表示PPTX的Presentation类
Presentation pres = new Presentation(); 
//获取第一张幻灯片
ISlide sld = pres.Slides[0]; 
//添加矩形的自动形状
IShape shp1 = sld.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 40, 150, 50); 
IShape shp2 = sld.Shapes.AddAutoShape(ShapeType.Moon, 160, 40, 150, 50); 
String alttext = "User Defined"; 
int iCount = sld.Shapes.Count; 
for (int i = 0; i < iCount; i++) 
{ 
AutoShape ashp = (AutoShape)sld.Shapes[i]; 
if (String.Compare(ashp.AlternativeText, alttext, StringComparison.Ordinal) == 0) 
{ 
ashp.Hidden = true; 
} 
} 
//将演示文稿保存到磁盘 
pres.Save(dataDir + "Hiding_Shapes_out.pptx", SaveFormat.Pptx);

与此类似的基于Java的示例:

//文档目录的路径。 
String dataDir = Utils.getDataDir(HidingTheShapesFromSlide.class); 
Presentation presentation1 = new Presentation(); 
ISlide slide = presentation1.getSlides().get_Item(0); 
for (int i = 0; i < slide.getShapes().size(); i++) { 
	IAutoShape ashp = (IAutoShape) slide.getShapes().get_Item(i); 
	ashp.setHidden(true); 
} 
presentation1.save(dataDir + "sample_output.pptx", SaveFormat.Pptx);

与此类似的基于C++的示例:

//文档目录的路径。 
	const String outPath = u"../out/Hidingshapes_out.pptx"; 
	const String templatePath = u"../templates/ConnectorLineAngle.pptx"; 
	//加载所需的演示文稿 
	SharedPtr<Presentation> pres = MakeObject<Presentation>(); 
	//访问第一张幻灯片 
	SharedPtr<ISlide> slide = pres->get_Slides()->idx_get(0); 
	//访问选定幻灯片的形状集合
	SharedPtr<IShapeCollection> shapes = slide->get_Shapes(); 
	//现在从头开始为现有形状创建效果“ PathFootball”。 
	SharedPtr<IAutoShape> autoShape1 = slide->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 50, 40, 150, 50); 
	SharedPtr<IAutoShape> autoShape2 = slide->get_Shapes()->AddAutoShape(ShapeType::Moon, 160, 40, 150, 50); 
	String alttext = u"User Defined"; 
	int iCount = slide->get_Shapes()->get_Count(); 
	for (int i = 0; i < iCount; i++) 
	{ 
		//访问添加的形状 
		SharedPtr<AutoShape> ashape = DynamicCast<Aspose::Slides::AutoShape>(slide->get_Shapes()->idx_get(i)); 
		if (String::Compare(ashape->get_AlternativeText(), alttext, StringComparison::Ordinal) == 0) 
		{ 
			ashape->set_Hidden(true); 
		} 
	} 
	//将PPTX写入磁盘
	pres->Save(outPath, Aspose::Slides::Export::SaveFormat::Pptx);

点击下方“了解更多”免费下载最新版Aspose.Slides for .NET

↓↓↓

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表