DEV Community

Alexandra Grazhevskaja for Aspose.Slides

Posted on • Edited on

Automate presentation speaker notes

What are speaker notes actually?πŸ’β€β™€οΈ
I like the explanations that they are a mind map of the presentation.πŸ‘†

Speaker notes’ workflow

Usually my workflow to prepare speaker notes is the following:

  1. I prepare a separate document with my speech.
  2. Then I need to sort out the theses from this text as speaker notes.
  3. I prefer to have them printed in case something goes wrong. And, trust me, when you need to present - something goes wrong more often than you expect. Powerpoint starts to buggy, computer breaks up, meteorites fall...πŸ˜…
  4. Then I need to add speaker notes into each slide.

It takes time...πŸ€¦β€β™€οΈ

Or I can do vice versa:

  1. Add speaker notes one by one into each slide.
  2. Export speaker notes into a document and print.

I may also need to give speaker notes to team members, who also work under this presentation. Or share speaker notes with the audience.

How do you prepare speaker notes? Please share in comments.πŸ‘‡

Automate speaker notes

Being developers, we like to automate everything. So and I was looking for a way to automatically manage speaker notes.

Aspose.Slides API was a good solution for me, as it also allows many other options as: copy slide notes from another presentations; convert slide notes into HTML in case I want to pubish it on the web; and others.

I will better show you how I add slide notes:

// Create presentation
using(Presentation presentation = new Presentation())
{
    // Create slide notes
    INotesSlide notesSlide = presentation.Slides[0].NotesSlideManager.AddNotesSlide();
    notesSlide.NotesTextFrame.Text = "This is my very helpful slide note!";
    presentation.ViewProperties.NormalViewProperties.HorizontalBarState = SplitterBarStateType.Restored;

    presentation.Save("pres.pptx", SaveFormat.Pptx);
}

Then I may want to access slide notes for extracting them anywhere, or I would convert slide notes into HTML to publish them on web:

    // Access slide notes for extracting
    var slide = presentation.Slides[0];
    NotesSlideEx notes = slide.NotesSlide;

    // Convert into HTML
    HtmlOptions opt = new HtmlOptions();
    INotesCommentsLayoutingOptions options = opt.NotesCommentsLayouting;
    options.NotesPosition = NotesPositions.BottomFull;
    presentation.Save("output.html", SaveFormat.Html, opt);

Easy!πŸ‘Œ

It’s also possible to use Aspose.Slides from Java, C++ or other languages.

How do you automate working with speaker notes? What would you like to automate here? Please share in comments.πŸ‘‡

Top comments (0)