/ / Prístup k objektu Slide v doplnku PowerPoint - c #, powerpoint

Prístup k objektu Slide v doplnku PowerPoint - c #, powerpoint

Stavím si doplnok pre PowerPoint a potrebujete mať prístup k objektom Slides or Slide, alebo dokonca celej prezentácii, bohužiaľ, jediná metóda, ktorú môžem vidieť, je otvoriť Nový ppt súbor. Práve teraz "musím sa uchýliť k hackej metóde ukladania aktuálnej prezentácie a jej opätovného otvorenia s balíčkom, aby som mohol manipulovať s čímkoľvek (konkrétnejšie, že som musel mať SHA objekty Slide zo súboru pptx, aby som zistil, či sa zmenili - nie je ideálny)

Existuje nejaký spôsob, ako otvoriť súbor, ktorý je v súčasnosti otvorený v programe PowerPoint bez nutnosti súboru IO?

Vďaka za vašu pomoc, P

odpovede:

0 pre odpoveď č. 1

Predpokladám, že ste vytvorili PowerPoint (2007/2010) Add-In Project vo VisualStudio. Vo všeobecnosti môžete pristupovať k aktívnej prezentácii so statickou triedou Globals tadiaľto:

Globals.ThisAddIn.Application.ActivePresentation.Slides[slideIndex] ...

Upraviť: Príklad použitia:

using PowerPoint = Microsoft.Office.Interop.PowerPoint;

...

try
{
int numberOfSlides = Globals.ThisAddIn
.Application.ActivePresentation.Slides.Count;

if (numberOfSlides > 0)
{
// get first slide
PowerPoint.Slide firstSlide = Globals.ThisAddIn
.Application.ActivePresentation.Slides[0];

// get first shape (object) in the slide
int shapeCount = firstSlide.Shapes.Count;

if (shapeCount > 0)
{
PowerPoint.Shape firstShape = firstSlide.Shapes[0];
}

// add a label
PowerPoint.Shape label = firstSlide.Shapes.AddLabel(
Orientation: Microsoft.Office.Core
.MsoTextOrientation.msoTextOrientationHorizontal,
Left: 100,
Top: 100,
Width: 200,
Height: 100);

// write hello world with a slidenumber
label.TextFrame.TextRange.Text = "Hello World! Page: ";
label.TextFrame.TextRange.InsertSlideNumber();
}
}
catch (Exception ex)
{
System.Windows.Forms.MessageBox.Show("Error: " + ex);

}