オーディオフレーム
Contents
[
Hide
]
オーディオフレームを作成する
Aspose.Slides for Android via Javaを使用すると、スライドにオーディオファイルを追加できます。オーディオファイルは、スライドにオーディオフレームとして埋め込まれます。
- Presentationクラスのインスタンスを作成します。
- インデックスを使用してスライドの参照を取得します。
- スライドに埋め込むオーディオファイルストリームをロードします。
- スライドに埋め込まれたオーディオフレーム(オーディオファイルを含む)を追加します。
- PlayModeとIAudioFrameオブジェクトによって公開される
Volume
を設定します。 - 修正されたプレゼンテーションを保存します。
このJavaコードは、スライドに埋め込まれたオーディオフレームを追加する方法を示しています:
// プレゼンテーションファイルを表すPresentationクラスのインスタンスを作成する
Presentation pres = new Presentation();
try {
// 最初のスライドを取得する
ISlide sld = pres.getSlides().get_Item(0);
// wav音声ファイルをストリームに読み込む
FileInputStream fstr = new FileInputStream(new File("audio.wav"));
// オーディオフレームを追加する
IAudioFrame audioFrame = sld.getShapes().addAudioFrameEmbedded(50, 150, 100, 100, fstr);
fstr.close();
// オーディオのプレイモードとボリュームを設定する
audioFrame.setPlayMode(AudioPlayModePreset.Auto);
audioFrame.setVolume(AudioVolumeMode.Loud);
// PowerPointファイルをディスクに書き込む
pres.save("AudioFrameEmbed_out.pptx", SaveFormat.Pptx);
} catch(IOException e) {
} finally {
if (pres != null) pres.dispose();
}
オーディオフレームのサムネイルを変更する
プレゼンテーションにオーディオファイルを追加すると、オーディオは標準のデフォルト画像としてフレームに表示されます(下のセクションの画像を参照)。オーディオフレームのプレビュー画像を変更します(好みの画像を設定します)。
このJavaコードは、オーディオフレームのサムネイルまたはプレビュー画像を変更する方法を示しています:
Presentation presentation = new Presentation();
try {
ISlide slide = presentation.getSlides().get_Item(0);
// 指定された位置とサイズでスライドにオーディオフレームを追加する。
FileInputStream audioStream = new FileInputStream("sample2.mp3");
IAudioFrame audioFrame = slide.getShapes().addAudioFrameEmbedded(150, 100, 50, 50, audioStream);
audioStream.close();
// プレゼンテーションリソースに画像を追加。
IPPImage picture;
IImage image = Images.fromFile("eagle.jpeg");
try {
picture = presentation.getImages().addImage(image);
} finally {
if (image != null) image.dispose();
}
// オーディオフレームに画像を設定する。
audioFrame.getPictureFormat().getPicture().setImage(picture); // <-----
// 修正されたプレゼンテーションをディスクに保存
presentation.save("example_out.pptx", SaveFormat.Pptx);
} catch(IOException e) {
} finally {
if (presentation != null) presentation.dispose();
}
オーディオ再生オプションを変更する
Aspose.Slides for Android via Javaを使用すると、オーディオの再生やプロパティを制御するオプションを変更できます。たとえば、オーディオのボリュームを調整したり、オーディオをループ再生したり、オーディオアイコンを非表示にすることができます。
Microsoft PowerPointのオーディオオプションペイン:
PowerPointのオーディオオプションは、Aspose.SlidesのAudioFrameプロパティに対応しています:
- オーディオオプションの開始ドロップダウンリストは、AudioFrame.PlayModeプロパティに一致します
- オーディオオプションのボリュームは、AudioFrame.Volumeプロパティに一致します
- オーディオオプションのスライド間で再生は、AudioFrame.PlayAcrossSlidesプロパティに一致します
- オーディオオプションの停止するまでループは、AudioFrame.PlayLoopModeプロパティに一致します
- オーディオオプションのスライドショー中は非表示は、AudioFrame.HideAtShowingプロパティに一致します
- オーディオオプションの再生後に巻き戻すは、AudioFrame.RewindAudioプロパティに一致します
オーディオの再生オプションを変更する手順は次のとおりです:
- オーディオフレームを作成または取得します。
- 調整したいオーディオフレームのプロパティに新しい値を設定します。
- 修正されたPowerPointファイルを保存します。
このJavaコードは、オーディオのオプションが調整される操作を示しています:
Presentation pres = new Presentation("AudioFrameEmbed_out.pptx");
try {
// AudioFrame形状を取得する
AudioFrame audioFrame = (AudioFrame)pres.getSlides().get_Item(0).getShapes().get_Item(0);
// プレイモードをクリック時に再生するように設定する
audioFrame.setPlayMode(AudioPlayModePreset.OnClick);
// ボリュームを小に設定する
audioFrame.setVolume(AudioVolumeMode.Low);
// スライド間で再生するように設定する
audioFrame.setPlayAcrossSlides(true);
// オーディオのループ再生を無効にする
audioFrame.setPlayLoopMode(false);
// スライドショー中にAudioFrameを非表示にする
audioFrame.setHideAtShowing(true);
// 再生後にオーディオを巻き戻す
audioFrame.setRewindAudio(true);
// PowerPointファイルをディスクに保存する
pres.save("AudioFrameEmbed_changed.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
オーディオの抽出
Aspose.Slides for Android via Javaを使用すると、スライドショーのトランジションに使用される音声を抽出できます。たとえば、特定のスライドで使用される音声を抽出できます。
- Presentationクラスのインスタンスを作成し、スライドトランジションを含むプレゼンテーションをロードします。
- 対象のスライドにアクセスします。
- スライドのスライドショートランジションにアクセスします。
- バイトデータで音声を抽出します。
このJavaコードは、スライドで使用されるオーディオを抽出する方法を示しています:
// プレゼンテーションファイルを表すPresentationクラスのインスタンスを作成する
Presentation pres = new Presentation("AudioSlide.pptx");
try {
// 対象のスライドにアクセスする
ISlide slide = pres.getSlides().get_Item(0);
// スライドのスライドショートランジション効果を取得する
ISlideShowTransition transition = slide.getSlideShowTransition();
// 音声をバイト配列で抽出する
byte[] audio = transition.getSound().getBinaryData();
System.out.println("長さ: " + audio.length);
} finally {
if (pres != null) pres.dispose();
}