使用PowerpointInterop C#以编程方式将动画应用于powerpoint幻灯片 [英] Apply animation to the powerpoint slide programmatically using PowerpointInterop C#
本文介绍了使用PowerpointInterop C#以编程方式将动画应用于powerpoint幻灯片的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
亲爱的所有人,
我在Windows应用程序c#中自动化了MsOffice。
我想将动画应用到powerpoint幻灯片。
代码:
< pre>
PowerPointInterop.PpAlertLevel displayAlertLevel = pptApplication.DisplayAlerts;
&NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; pptApplication.DisplayAlerts = PowerPointInterop.PpAlertLevel.ppAlertsNone;
&NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; PowerPointInterop.Presentation pptDocument = pptApplication.Presentations.Open(filename);
&NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; PowerPointInterop.Slide slideObject = pptDocument.Slides [slideCount];
&NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; if(slideObject == null)
&NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP;返回false;
&NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; foreach(slideObject.Shapes中的var项目)
&NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; {
&NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; var shape =(PowerPointInterop.Shape)item;
&NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; if(shape.HasTextFrame == MsoTriState.msoTrue)
&NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; {
&NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; shape.AnimationSettings.EntryEffect = ShapeEntryEffect.BoxIn; // ShapeEntryEffect显示错误
&NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; shape.ApplyAnimation();
&NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; }¥b $ b &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; }
&NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; &NBSP; pptDocument.Close();
< / pre>
任何人都可以帮忙我。
谢谢
解决方案
以下是基于免费.net ppt的ac#解决方案
库,如果你不介意,那么你可以尝试一下:Presentation ppt = new Presentation();
ISlide slide = ppt.Slides [0];
IAutoShape shape = slide.Shapes.AppendShape(ShapeType.Rectangle,new RectangleF(50,50,200,80));
shape.Fill.FillType = FillFormatType.Solid;
shape.Fill.SolidColor.Color = Color.Purple;
shape.ShapeStyle.LineColor.Color = Color.White;
shape.AppendTextFrame(" Animated Shape");
shape.Slide.Timeline.MainSequence.AddEffect(shape,AnimationEffectType.FadedSwivel);
ppt.SaveToFile(" animations.pptx",FileFormat.Pptx2010);
希望它有用。
Dear All,
I'm automating MsOffice in windows application c#.
I would like to apply animation to the powerpoint slides.
code:
<pre>
PowerPointInterop.PpAlertLevel displayAlertLevel = pptApplication.DisplayAlerts;pptApplication.DisplayAlerts = PowerPointInterop.PpAlertLevel.ppAlertsNone;
PowerPointInterop.Presentation pptDocument = pptApplication.Presentations.Open(filename);
PowerPointInterop.Slide slideObject = pptDocument.Slides[slideCount];
if (slideObject == null)
return false;
foreach (var item in slideObject.Shapes)
{
var shape = (PowerPointInterop.Shape)item;
if (shape.HasTextFrame == MsoTriState.msoTrue)
{
shape.AnimationSettings.EntryEffect = ShapeEntryEffect.BoxIn;//ShapeEntryEffect is showing error
shape.ApplyAnimation();
}
}
pptDocument.Close();
</pre>
can any one please help me.
Thanks
解决方案
Hi,
The below is a c# solution based on a free .net ppt library, if you do not mind, then you can give it a try:
Presentation ppt = new Presentation(); ISlide slide = ppt.Slides[0]; IAutoShape shape = slide.Shapes.AppendShape(ShapeType.Rectangle, new RectangleF(50, 50, 200, 80)); shape.Fill.FillType = FillFormatType.Solid; shape.Fill.SolidColor.Color = Color.Purple; shape.ShapeStyle.LineColor.Color = Color.White; shape.AppendTextFrame("Animated Shape"); shape.Slide.Timeline.MainSequence.AddEffect(shape, AnimationEffectType.FadedSwivel); ppt.SaveToFile("animations.pptx", FileFormat.Pptx2010);Hope it's helpful.
这篇关于使用PowerpointInterop C#以编程方式将动画应用于powerpoint幻灯片的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文