Audio in Präsentationen mit JavaScript verwalten
Audio-Frames erstellen
Aspose.Slides für Node.js via Java ermöglicht das Hinzufügen von Audiodateien zu Folien. Die Audiodateien werden in den Folien als Audio-Frames eingebettet.
- Erstellen Sie eine Instanz der Klasse Presentation.
- Rufen Sie die Referenz einer Folie über ihren Index ab.
- Laden Sie den Audio-Dateistream, den Sie in die Folie einbetten möchten.
- Fügen Sie den eingebetteten Audio-Frame (der die Audiodatei enthält) zur Folie hinzu.
- Setzen Sie PlayMode und
Volume, die vom AudioFrame Objekt bereitgestellt werden. - Speichern Sie die geänderte Präsentation.
// Instanziert eine Presentation-Klasse, die eine Präsentationsdatei repräsentiert
const pres = new aspose.slides.Presentation();
try {
// Holt die erste Folie
const sld = pres.getSlides().get_Item(0);
// Lädt die wav-Audiodatei in einen Stream
const fstr = java.newInstanceSync("java.io.FileInputStream", java.newInstanceSync("java.io.File", "audio.wav"));
// Fügt den Audio-Frame hinzu
const audioFrame = sld.getShapes().addAudioFrameEmbedded(50, 150, 100, 100, fstr);
fstr.close();
// Setzt den Wiedergabemodus und die Lautstärke des Audios
audioFrame.setPlayMode(aspose.slides.AudioPlayModePreset.Auto);
audioFrame.setVolume(aspose.slides.AudioVolumeMode.Loud);
// Schreibt die PowerPoint-Datei auf die Festplatte
pres.save("AudioFrameEmbed_out.pptx", aspose.slides.SaveFormat.Pptx);
} catch (e) {console.log(e);
} finally {
if (pres != null) {
pres.dispose();
}
}
Audio-Frame-Vorschaubild ändern
Wenn Sie einer Präsentation eine Audiodatei hinzufügen, erscheint das Audio als Frame mit einem standardmäßigen Standardbild (siehe das Bild im folgenden Abschnitt). Sie ändern das Vorschaubild des Audio-Frames (setzen Sie Ihr bevorzugtes Bild).
const presentation = new aspose.slides.Presentation();
try {
const slide = presentation.getSlides().get_Item(0);
// Fügt der Folie einen Audio-Frame an einer angegebenen Position und Größe hinzu.
const audioStream = java.newInstanceSync("java.io.FileInputStream", "sample2.mp3");
const audioFrame = slide.getShapes().addAudioFrameEmbedded(150, 100, 50, 50, audioStream);
audioStream.close();
// Fügt ein Bild zu den Präsentationsressourcen hinzu.
let picture;
const image = aspose.slides.Images.fromFile("eagle.jpeg");
try {
picture = presentation.getImages().addImage(image);
} finally {
if (image != null) {
image.dispose();
}
}
// Setzt das Bild für den Audio-Frame.
audioFrame.getPictureFormat().getPicture().setImage(picture);// <-----
// Speichert die modifizierte Präsentation auf der Festplatte
presentation.save("example_out.pptx", aspose.slides.SaveFormat.Pptx);
} catch (e) {console.log(e);
} finally {
if (presentation != null) {
presentation.dispose();
}
}
Audio-Wiedergabeoptionen ändern
Aspose.Slides für Node.js via Java ermöglicht das Ändern von Optionen, die die Wiedergabe oder Eigenschaften eines Audios steuern. Sie können beispielsweise die Lautstärke eines Audios anpassen, das Audio in einer Schleife abspielen lassen oder sogar das Audiosymbol ausblenden.
Das Audio Options‑Fenster in Microsoft PowerPoint:

PowerPoint Audio Options, die den Aspose.Slides AudioFrame Eigenschaften entsprechen:
- Start‑Dropdown-Liste entspricht der Methode AudioFrame.setPlayMode
- Volume entspricht der Methode AudioFrame.setVolume
- Play Across Slides entspricht der Methode AudioFrame.setPlayAcrossSlides
- Loop until Stopped entspricht der Methode AudioFrame.setPlayLoopMode
- Hide During Show entspricht der Methode AudioFrame.setHideAtShowing
- Rewind after Playing entspricht der Methode AudioFrame.setRewindAudio
PowerPoint Editing‑Optionen, die den Aspose.Slides AudioFrame Eigenschaften entsprechen:
- Fade In entspricht der Methode AudioFrame.setFadeInDuration
- Fade Out entspricht der Methode AudioFrame.setFadeOutDuration
- Trim Audio Start Time entspricht der Methode AudioFrame.setTrimFromStart
- Trim Audio End Time‑Wert entspricht der Audiodauer minus dem Wert der Methode AudioFrame.setTrimFromEnd
Die PowerPoint Volume controll im Audiosteuerfeld entspricht der Methode AudioFrame.setVolumeValue. Sie ermöglicht das Ändern der Lautstärke des Audios als Prozentsatz.
So ändern Sie die Audio‑Wiedergabeoptionen:
- Сreate oder holen Sie den Audio-Frame.
- Setzen Sie neue Werte für die Audio-Frame‑Eigenschaften, die Sie anpassen möchten.
- Speichern Sie die geänderte PowerPoint‑Datei.
const pres = new aspose.slides.Presentation("AudioFrameEmbed_out.pptx");
try {
// Holt das AudioFrame-Shape
const audioFrame = pres.getSlides().get_Item(0).getShapes().get_Item(0);
// Setzt den Wiedergabemodus auf Klick abspielen
audioFrame.setPlayMode(aspose.slides.AudioPlayModePreset.OnClick);
// Setzt die Lautstärke auf leise
audioFrame.setVolume(aspose.slides.AudioVolumeMode.Low);
// Setzt das Audio so, dass es über Folien hinweg abgespielt wird
audioFrame.setPlayAcrossSlides(true);
// Deaktiviert die Wiederholung für das Audio
audioFrame.setPlayLoopMode(false);
// Blendet das AudioFrame während der Vorführung aus
audioFrame.setHideAtShowing(true);
// Spult das Audio nach dem Abspielen zum Anfang zurück
audioFrame.setRewindAudio(true);
// Speichert die PowerPoint-Datei auf der Festplatte
pres.save("AudioFrameEmbed_changed.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
if (pres != null) {
pres.dispose();
}
}
Dieser JavaScript‑Code zeigt eine Operation, bei der die Optionen eines Audios angepasst werden:
const pres = new aspose.slides.Presentation();
try {
const slide = pres.getSlides().get_Item(0);
const audioData = java.newArray("byte", Array.from(fs.readFileSync("sampleaudio.mp3")));
const audio = pres.getAudios().addAudio(audioData);
const audioFrame = slide.getShapes().addAudioFrameEmbedded(50, 50, 100, 100, audio);
// Setzt den Trimmstart‑Versatz auf 1,5 Sekunden
audioFrame.setTrimFromStart(1500);
// Setzt den Trimmen‑Endversatz auf 2 Sekunden
audioFrame.setTrimFromEnd(2000);
// Setzt die Einblenddauer (Fade‑In) auf 200 ms
audioFrame.setFadeInDuration(200);
// Setzt die Ausblenddauer (Fade‑Out) auf 500 ms
audioFrame.setFadeOutDuration(500);
pres.save("AudioFrameTrimFade_out.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
pres.dispose();
}
Das folgende Codebeispiel zeigt, wie Sie einen Audio‑Frame mit eingebettetem Audio abrufen und dessen Lautstärke auf 85 % setzen:
const pres = new aspose.slides.Presentation("AudioFrameEmbed_out.pptx");
try {
const slide = pres.getSlides().get_Item(0);
// Ruft ein Audio-Frame-Shape ab
const audioFrame = slide.getShapes().get_Item(0);
// Setzt die Audio-Lautstärke auf 85%
audioFrame.setVolumeValue(85.0);
pres.save("AudioFrameValue_out.pptx", aspose.slides.SaveFormat.Pptx);
}
finally {
pres.dispose();
}
Audio extrahieren
Aspose.Slides für Node.js via Java ermöglicht das Extrahieren des in Folienübergängen verwendeten Tons. Sie können beispielsweise den Ton einer bestimmten Folie extrahieren.
- Erstellen Sie eine Instanz der Klasse Presentation und laden Sie die Präsentation, die das Audio enthält.
- Rufen Sie die Referenz der entsprechenden Folie über deren Index ab.
- Greifen Sie auf die slideshow transitions der Folie zu.
- Extrahieren Sie den Ton als Byte‑Daten.
// Instanziert eine Presentation-Klasse, die eine Präsentationsdatei repräsentiert
const pres = new aspose.slides.Presentation("AudioSlide.pptx");
try {
// Greift auf die gewünschte Folie zu
const slide = pres.getSlides().get_Item(0);
// Holt die Folienübergangseffekte für die Folie
const transition = slide.getSlideShowTransition();
// Extrahiert den Ton als Byte-Array
const audio = transition.getSound().getBinaryData();
console.log("Length: " + audio.length);
} finally {
if (pres != null) {
pres.dispose();
}
}
FAQ
Kann ich dasselbe Audio‑Asset auf mehreren Folien wiederverwenden, ohne die Dateigröße zu erhöhen?
Ja. Fügen Sie das Audio einmal zur geteilten audio collection der Präsentation hinzu und erstellen Sie weitere Audio‑Frames, die auf dieses vorhandene Asset verweisen. Dadurch wird eine Duplizierung von Mediendaten vermieden und die Präsentationsgröße bleibt kontrollierbar.
Kann ich den Ton in einem bestehenden Audio‑Frame ersetzen, ohne die Form neu zu erstellen?
Ja. Für einen verknüpften Ton aktualisieren Sie den link path sodass er auf die neue Datei verweist. Für einen eingebetteten Ton tauschen Sie das embedded audio Objekt gegen ein anderes aus der audio collection der Präsentation aus. Die Formatierung des Frames und die meisten Wiedergabeeinstellungen bleiben erhalten.
Ändert das Trimmen die zugrunde liegenden Audiodaten, die in der Präsentation gespeichert sind?
Nein. Trimmen passt lediglich die Wiedergabegrenzen an. Die ursprünglichen Audiodaten bleiben unverändert und sind über das eingebettete Audio oder die Audio‑Collection der Präsentation zugänglich.