PowerPoint.Presentation class

Extends

Hinweise

[ API-Satz: PowerPointApi 1.0 ]

Beispiele

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/powerpoint/slide-management/insert-slides.yaml

await PowerPoint.run(async function(context) {
    // Get the ID of the first selected slide.
    const presentation = context.presentation;
    const selected = presentation.getSelectedSlides().getItemAt(0);
    selected.load("id");
    await context.sync();

    // Insert the other presentation after the selected slide.
    const insertOptions: PowerPoint.InsertSlideOptions = {
        formatting: PowerPoint.InsertSlideFormatting.useDestinationTheme,
        targetSlideId: selected.id
    };
    presentation.insertSlidesFromBase64(chosenFileBase64, insertOptions);
    await context.sync();
});

Eigenschaften

context

Der Anforderungskontext, der dem -Objekt zugeordnet ist. Dadurch wird der Prozess des Add-Ins mit dem Prozess der Office-Hostanwendung verbunden.

customXmlParts

Gibt eine Auflistung von benutzerdefinierten XML-Teilen zurück, die der Präsentation zugeordnet sind.

id

Ruft die ID der Präsentation ab.

slideMasters

Gibt die Auflistung der SlideMaster Objekte zurück, die sich in der Präsentation befinden.

slides

Gibt eine geordnete Auflistung von Folien in der Präsentation zurück.

tags

Gibt eine Auflistung von Tags zurück, die an die Präsentation angefügt sind.

title

Methoden

getSelectedShapes()

Gibt die ausgewählten Formen auf der aktuellen Folie der Präsentation zurück. Wenn keine Shapes ausgewählt sind, wird eine leere Auflistung zurückgegeben.

getSelectedSlides()

Gibt die ausgewählten Folien in der aktuellen Ansicht der Präsentation zurück. Das erste Element in der Auflistung ist die aktive Folie, die im Bearbeitungsbereich angezeigt wird. Wenn keine Folien ausgewählt sind, wird eine leere Auflistung zurückgegeben.

getSelectedTextRange()

Gibt die ausgewählte PowerPoint.TextRange in der aktuellen Ansicht der Präsentation zurück. Löst eine Ausnahme aus, wenn kein Text ausgewählt ist.

getSelectedTextRangeOrNullObject()

Gibt die ausgewählte PowerPoint.TextRange in der aktuellen Ansicht der Präsentation zurück. Wenn kein Text ausgewählt ist, wird ein Objekt zurückgegeben, dessen isNullObject Eigenschaft auf true festgelegt ist.

insertSlidesFromBase64(base64File, options)

Fügt die angegebenen Folien aus einer Präsentation in die aktuelle Präsentation ein.

load(options)

Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie "context.sync()" aufrufen.

load(propertyNames)

Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie "context.sync()" aufrufen.

load(propertyNamesAndPaths)

Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie "context.sync()" aufrufen.

setSelectedSlides(slideIds)

Wählt die Folien in der aktuellen Ansicht der Präsentation aus. Vorhandene Folienauswahl wird durch die neue Auswahl ersetzt.

toJSON()

Überschreibt die JavaScript-Methode toJSON() , um eine nützlichere Ausgabe bereitzustellen, wenn ein API-Objekt an JSON.stringify()übergeben wird. (JSON.stringifyruft wiederum die toJSON -Methode des Objekts auf, das an das Objekt übergeben wird.) Während das ursprüngliche PowerPoint.Presentation Objekt ein API-Objekt ist, gibt die toJSON Methode ein einfaches JavaScript-Objekt (typisiert als PowerPoint.Interfaces.PresentationData) zurück, das flache Kopien aller geladenen untergeordneten Eigenschaften aus dem ursprünglichen Objekt enthält.

Details zur Eigenschaft

context

Der Anforderungskontext, der dem -Objekt zugeordnet ist. Dadurch wird der Prozess des Add-Ins mit dem Prozess der Office-Hostanwendung verbunden.

context: RequestContext;

Eigenschaftswert

customXmlParts

Hinweis

Diese API wird als Vorschau für Entwickler bereitgestellt. Je nachdem, welches Feedback wir dazu erhalten, werden möglicherweise Änderungen vorgenommen. Verwenden Sie diese API nicht in einer Produktionsumgebung.

Gibt eine Auflistung von benutzerdefinierten XML-Teilen zurück, die der Präsentation zugeordnet sind.

readonly customXmlParts: PowerPoint.CustomXmlPartCollection;

Eigenschaftswert

Hinweise

[ API-Satz: PowerPointApi BETA (NUR VORSCHAU) ]

id

Ruft die ID der Präsentation ab.

readonly id: string;

Eigenschaftswert

string

Hinweise

[ API-Satz: PowerPointApi 1.5 ]

slideMasters

Gibt die Auflistung der SlideMaster Objekte zurück, die sich in der Präsentation befinden.

readonly slideMasters: PowerPoint.SlideMasterCollection;

Eigenschaftswert

Hinweise

[ API-Satz: PowerPointApi 1.3 ]

slides

Gibt eine geordnete Auflistung von Folien in der Präsentation zurück.

readonly slides: PowerPoint.SlideCollection;

Eigenschaftswert

Hinweise

[ API-Satz: PowerPointApi 1.2 ]

tags

Gibt eine Auflistung von Tags zurück, die an die Präsentation angefügt sind.

readonly tags: PowerPoint.TagCollection;

Eigenschaftswert

Hinweise

[ API-Satz: PowerPointApi 1.3 ]

title

readonly title: string;

Eigenschaftswert

string

Details zur Methode

getSelectedShapes()

Gibt die ausgewählten Formen auf der aktuellen Folie der Präsentation zurück. Wenn keine Shapes ausgewählt sind, wird eine leere Auflistung zurückgegeben.

getSelectedShapes(): PowerPoint.ShapeScopedCollection;

Gibt zurück

Hinweise

[ API-Satz: PowerPointApi 1.5 ]

Beispiele

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/powerpoint/shapes/get-set-shapes.yaml

// Arranges the selected shapes in a line from left to right.
await PowerPoint.run(async (context) => {
  const shapes = context.presentation.getSelectedShapes();
  const shapeCount = shapes.getCount();
  shapes.load("items");
  await context.sync();
  let maxHeight = 0;
  shapes.items.map((shape) => {
    shape.load("width,height");
  });
  await context.sync();
  shapes.items.map((shape) => {
    shape.left = currentLeft;
    shape.top = currentTop;
    currentLeft += shape.width;
    if (shape.height > maxHeight) maxHeight = shape.height;
  });
  await context.sync();
  currentLeft = 0;
  if (currentTop > slideHeight - 200) currentTop = 0;
});

...

// Gets the shapes you selected on the slide and displays their IDs on the task pane.
await PowerPoint.run(async (context) => {
  let finalTable = "";
  const shapes = context.presentation.getSelectedShapes();
  const shapeCount = shapes.getCount();
  await context.sync();
  finalTable += "<br>getSelectedShapes.getCount returned:<b>" + shapeCount.value + "</b><br>";
  finalTable +=
    "<br><table border=1 cellpadding=3 cellspacing=0><tr><td bgcolor=#3333EE><font color=white>Index</font></td><td bgcolor=#3333EE><font color=white>Id</font></td></tr>";
  shapes.load("items");
  await context.sync();
  shapes.items.map((shape, index) => {
    finalTable += "<tr><td>" + index + "</td><td>" + shape.id + "</td></tr>";
  });
  finalTable += "</table>";
  $("#outputSpan").empty();
  $("#outputSpan").append(finalTable);
});

...

// Saves which shapes are selected so that they can be reselected later.
await PowerPoint.run(async (context) => {
  context.presentation.load("slides");
  await context.sync();
  const slides = context.presentation.getSelectedSlides();
  const slideCount = slides.getCount();
  slides.load("items");
  await context.sync();
  savedSlideSelection = [];
  slides.items.map((slide) => {
    savedSlideSelection.push(slide.id);
  });
  const shapes = context.presentation.getSelectedShapes();
  const shapeCount = shapes.getCount();
  shapes.load("items");
  await context.sync();
  shapes.items.map((shape) => {
    savedShapeSelection.push(shape.id);
  });
});

getSelectedSlides()

Gibt die ausgewählten Folien in der aktuellen Ansicht der Präsentation zurück. Das erste Element in der Auflistung ist die aktive Folie, die im Bearbeitungsbereich angezeigt wird. Wenn keine Folien ausgewählt sind, wird eine leere Auflistung zurückgegeben.

getSelectedSlides(): PowerPoint.SlideScopedCollection;

Gibt zurück

Hinweise

[ API-Satz: PowerPointApi 1.5 ]

Beispiele

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/powerpoint/slide-management/get-set-slides.yaml

// Gets the selected slides and displays their IDs on the task pane.
await PowerPoint.run(async (context) => {
  let finalTable = "";
  context.presentation.load("slides");
  await context.sync();
  const allSlidesList = {};
  const allSlidesCount = context.presentation.slides.getCount();
  context.presentation.slides.load("items");
  await context.sync();
  let allSlideItems = context.presentation.slides.items;
  allSlideItems.map((slide, index) => {
    allSlidesList[slide.id] = `Slide ${index + 1}`;
  });

  if ($("#id-check-usenative").is(":checked")) {
    context.presentation.load("tags");
  }
  const slides = context.presentation.getSelectedSlides();
  const slideCount = slides.getCount();
  slides.load("items");
  await context.sync();
  finalTable += "<br>getSelectedSlides.getCount returned:<b>" + slideCount.value + "</b><br>";
  finalTable +=
    "<br><table border=1 cellpadding=3 cellspacing=0><tr><td bgcolor=#3333EE><font color=white>Index</font></td><td bgcolor=#3333EE><font color=white>Id</font></td></tr>";
  slides.items.map((slide, index) => {
    finalTable += "<tr><td>" + index + " - " + allSlidesList[slide.id] + "</td><td>" + slide.id + "</td></tr>";
  });
  finalTable += "</table>";
  $("#outputSpan").empty();
  $("#outputSpan").append(finalTable);
});

...

// Saves which slides are currently selected so they can be reselected later.
await PowerPoint.run(async (context) => {
  let finalTable = "";
  context.presentation.load("slides");
  await context.sync();
  const slides = context.presentation.getSelectedSlides();
  const slideCount = slides.getCount();
  await context.sync();
  finalTable += "<br>getSelectedSlides.getCount returned:<b>" + slideCount.value + "</b><br>";
  finalTable +=
    "<br><table border=1 cellpadding=3 cellspacing=0><tr><td bgcolor=#3333EE><font color=white>Index</font></td><td bgcolor=#3333EE><font color=white>Id</font></td></tr>";
  savedSlideSelection = [];
  slides.load("items");
  await context.sync();
  slides.items.map((slide, index) => {
    finalTable += "<tr><td>" + index + "</td><td>" + slide.id + "</td></tr>";
    savedSlideSelection.push(slide.id);
  });
  finalTable += "</table>";
  $("#outputSpan").empty();
  $("#outputSpan").append(finalTable);
});

getSelectedTextRange()

Gibt die ausgewählte PowerPoint.TextRange in der aktuellen Ansicht der Präsentation zurück. Löst eine Ausnahme aus, wenn kein Text ausgewählt ist.

getSelectedTextRange(): PowerPoint.TextRange;

Gibt zurück

Hinweise

[ API-Satz: PowerPointApi 1.5 ]

Beispiele

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/powerpoint/text/get-set-textrange.yaml

// Gets the selected text range and prints data about the range on the task pane.
await PowerPoint.run(async (context) => {
  const textRange = context.presentation.getSelectedTextRange();
  try {
    await context.sync();
  } catch (error) {
    console.warn("You must select only one range of text for this action to work.");
    return;
  }
  textRange.load("text");
  textRange.load("start");
  textRange.load("length");
  await context.sync();
  let txtHtml = textRange.text;
  txtHtml = txtHtml.replace(/\n/g, "<br>");
  txtHtml = txtHtml.replace(/\r/g, "<br>");
  txtHtml = txtHtml.replace(/\v/g, "<br>");
  let txtExplained = textRange.text;
  txtExplained = txtExplained.replace(/\n/g, "<font color=red>NL</font>");
  txtExplained = txtExplained.replace(/\r/g, "<font color=red>CR</font>");
  txtExplained = txtExplained.replace(/\v/g, "<font color=red>VV</font>");
  let finalTable = "";
  finalTable +=
    "<br><table border=1 cellpadding=3 cellspacing=0><tr><td bgcolor=#3333EE><font color=white>Index</font></td><td bgcolor=#3333EE><font color=white>Id</font></td></tr>";
  finalTable += "<tr><td>Raw</td><td>" + textRange.text + "</td></tr>";
  finalTable += "<tr><td>Html</td><td>" + txtHtml + "</td></tr>";
  finalTable += "<tr><td>Exp</td><td>" + txtExplained + "</td></tr>";
  finalTable += "<tr><td>Start</td><td>" + textRange.start + "</td></tr>";
  finalTable += "<tr><td>Length</td><td>" + textRange.length + "</td></tr>";
  finalTable += "</table>";
  $("#outputSpan").empty();
  $("#outputSpan").append(finalTable);
});

...

// Sets the range selection to the range that was saved previously.
await PowerPoint.run(async (context) => {
  const slide1 = context.presentation.slides.getItem(savedTextSlideSelection[0]);
  const shape1 = slide1.shapes.getItem(savedTextShapeSelection[0]);
  const textRange = shape1.textFrame.textRange.getSubstring(savedTextTextRangeStart, savedTextTextRangeLength);
  textRange.setSelected();
  await context.sync();
});

getSelectedTextRangeOrNullObject()

Gibt die ausgewählte PowerPoint.TextRange in der aktuellen Ansicht der Präsentation zurück. Wenn kein Text ausgewählt ist, wird ein Objekt zurückgegeben, dessen isNullObject Eigenschaft auf true festgelegt ist.

getSelectedTextRangeOrNullObject(): PowerPoint.TextRange;

Gibt zurück

Hinweise

[ API-Satz: PowerPointApi 1.5 ]

insertSlidesFromBase64(base64File, options)

Fügt die angegebenen Folien aus einer Präsentation in die aktuelle Präsentation ein.

insertSlidesFromBase64(base64File: string, options?: PowerPoint.InsertSlideOptions): void;

Parameter

base64File

string

Die base64-codierte Zeichenfolge, die die Quellpräsentationsdatei darstellt.

options
PowerPoint.InsertSlideOptions

Die Optionen, die definieren, welche Folien eingefügt werden, wohin die neuen Folien gehen und welche Präsentationsformatierung verwendet wird.

Gibt zurück

void

Hinweise

[ API-Satz: PowerPointApi 1.2 ]

Beispiele

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/powerpoint/slide-management/insert-slides.yaml

await PowerPoint.run(async function(context) {
    // Get the ID of the first selected slide.
    const presentation = context.presentation;
    const selected = presentation.getSelectedSlides().getItemAt(0);
    selected.load("id");
    await context.sync();

    // Insert the other presentation after the selected slide.
    const insertOptions: PowerPoint.InsertSlideOptions = {
        formatting: PowerPoint.InsertSlideFormatting.useDestinationTheme,
        targetSlideId: selected.id
    };
    presentation.insertSlidesFromBase64(chosenFileBase64, insertOptions);
    await context.sync();
});

load(options)

Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie "context.sync()" aufrufen.

load(options?: PowerPoint.Interfaces.PresentationLoadOptions): PowerPoint.Presentation;

Parameter

options
PowerPoint.Interfaces.PresentationLoadOptions

Stellt Optionen dafür bereit, welche Eigenschaften des -Objekts geladen werden sollen.

Gibt zurück

load(propertyNames)

Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie "context.sync()" aufrufen.

load(propertyNames?: string | string[]): PowerPoint.Presentation;

Parameter

propertyNames

string | string[]

Eine durch Trennzeichen getrennte Zeichenfolge oder ein Array von Zeichenfolgen, die die zu ladenden Eigenschaften angeben.

Gibt zurück

load(propertyNamesAndPaths)

Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie "context.sync()" aufrufen.

load(propertyNamesAndPaths?: {
            select?: string;
            expand?: string;
        }): PowerPoint.Presentation;

Parameter

propertyNamesAndPaths

{ select?: string; expand?: string; }

propertyNamesAndPaths.select ist eine durch Trennzeichen getrennte Zeichenfolge, die die zu ladenden Eigenschaften angibt, und propertyNamesAndPaths.expand eine durch Trennzeichen getrennte Zeichenfolge, die die zu ladenden Navigationseigenschaften angibt.

Gibt zurück

setSelectedSlides(slideIds)

Wählt die Folien in der aktuellen Ansicht der Präsentation aus. Vorhandene Folienauswahl wird durch die neue Auswahl ersetzt.

setSelectedSlides(slideIds: string[]): void;

Parameter

slideIds

string[]

Liste der Folien-IDs, die in der Präsentation ausgewählt werden sollen. Wenn die Liste leer ist, wird die Auswahl gelöscht.

Gibt zurück

void

Hinweise

[ API-Satz: PowerPointApi 1.5 ]

Beispiele

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/powerpoint/slide-management/get-set-slides.yaml

// Sets selection to the slides that were saved.
await PowerPoint.run(async (context) => {
  context.presentation.setSelectedSlides(savedSlideSelection);
  await context.sync();
});

...

// Selects slides 2, 4, and 5.
await PowerPoint.run(async (context) => {
  context.presentation.load("slides");
  await context.sync();
  const slide2 = context.presentation.slides.getItemAt(1);
  const slide4 = context.presentation.slides.getItemAt(3);
  const slide5 = context.presentation.slides.getItemAt(4);
  slide2.load("id");
  slide4.load("id");
  slide5.load("id");
  try {
    await context.sync();
  } catch (error) {
    console.warn("This action requires at least 5 slides in the presentation.");
    return;
  }
  await context.sync();
  context.presentation.setSelectedSlides([slide2.id, slide4.id, slide5.id]);
  await context.sync();
});

toJSON()

Überschreibt die JavaScript-Methode toJSON() , um eine nützlichere Ausgabe bereitzustellen, wenn ein API-Objekt an JSON.stringify()übergeben wird. (JSON.stringifyruft wiederum die toJSON -Methode des Objekts auf, das an das Objekt übergeben wird.) Während das ursprüngliche PowerPoint.Presentation Objekt ein API-Objekt ist, gibt die toJSON Methode ein einfaches JavaScript-Objekt (typisiert als PowerPoint.Interfaces.PresentationData) zurück, das flache Kopien aller geladenen untergeordneten Eigenschaften aus dem ursprünglichen Objekt enthält.

toJSON(): PowerPoint.Interfaces.PresentationData;

Gibt zurück