Dźwięk

Ten artykuł demonstruje, jak osadzać ramki dźwiękowe i kontrolować odtwarzanie przy użyciu Aspose.Slides for C++. Poniższe przykłady prezentują podstawowe operacje audio.

Dodaj ramkę dźwiękową

Wstaw pustą ramkę dźwiękową, która później może zawierać osadzone dane dźwiękowe.

static void AddAudio()
{
    auto presentation = MakeObject<Presentation>();
    auto slide = presentation->get_Slide(0);

    // Utwórz pustą ramkę dźwiękową (dźwięk zostanie osadzony później).
    auto audioFrame = slide->get_Shapes()->AddAudioFrameEmbedded(50, 50, 100, 100, MakeObject<MemoryStream>());

    presentation->Dispose();
}

Uzyskaj dostęp do ramki dźwiękowej

Ten kod pobiera pierwszą ramkę dźwiękową na slajdzie.

static void AccessAudio()
{
    auto presentation = MakeObject<Presentation>();
    auto slide = presentation->get_Slide(0);

    slide->get_Shapes()->AddAudioFrameEmbedded(50, 50, 100, 100, MakeObject<MemoryStream>());

    // Uzyskaj dostęp do pierwszej ramki dźwiękowej na slajdzie.
    auto firstAudio = SharedPtr<IAudioFrame>();
    for (auto&& shape : slide->get_Shapes())
    {
        if (ObjectExt::Is<IAudioFrame>(shape))
        {
            firstAudio = ExplicitCast<IAudioFrame>(shape);
            break;
        }
    }

    presentation->Dispose();
}

Usuń ramkę dźwiękową

Usuń wcześniej dodaną ramkę dźwiękową.

static void RemoveAudio()
{
    auto presentation = MakeObject<Presentation>();
    auto slide = presentation->get_Slide(0);

    auto audioFrame = slide->get_Shapes()->AddAudioFrameEmbedded(50, 50, 100, 100, MakeObject<MemoryStream>());

    // Usuń ramkę dźwiękową.
    slide->get_Shapes()->Remove(audioFrame);

    presentation->Dispose();
}

Ustaw odtwarzanie audio

Skonfiguruj ramkę dźwiękową, aby odtwarzała się automatycznie, gdy slajd się pojawi.

static void SetAudioPlayback()
{
    auto presentation = MakeObject<Presentation>();
    auto slide = presentation->get_Slide(0);

    auto audioFrame = slide->get_Shapes()->AddAudioFrameEmbedded(50, 50, 100, 100, MakeObject<MemoryStream>());

    // Odtwarzaj automatycznie, gdy slajd się pojawi.
    audioFrame->set_PlayMode(AudioPlayModePreset::Auto);

    presentation->Dispose();
}