เสียง

บทความนี้สาธิตวิธีฝังกรอบเสียงและควบคุมการเล่นด้วย Aspose.Slides for C++ ตัวอย่างต่อไปนี้แสดงการดำเนินการพื้นฐานของเสียง

เพิ่มกรอบเสียง

แทรกกรอบเสียงเปล่าที่สามารถเก็บข้อมูลเสียงที่ฝังมาได้ในภายหลัง

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

    // สร้างกรอบเสียงเปล่า (เสียงจะถูกฝังในภายหลัง).
    auto audioFrame = slide->get_Shapes()->AddAudioFrameEmbedded(50, 50, 100, 100, MakeObject<MemoryStream>());

    presentation->Dispose();
}

เข้าถึงกรอบเสียง

โค้ดนี้จะดึงกรอบเสียงแรกบนสไลด์

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

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

    // เข้าถึงกรอบเสียงแรกบนสไลด์.
    auto firstAudio = SharedPtr<IAudioFrame>();
    for (auto&& shape : slide->get_Shapes())
    {
        if (ObjectExt::Is<IAudioFrame>(shape))
        {
            firstAudio = ExplicitCast<IAudioFrame>(shape);
            break;
        }
    }

    presentation->Dispose();
}

ลบกรอบเสียง

ลบกรอบเสียงที่เพิ่มไว้ก่อนหน้านี้

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>());

    // ลบกรอบเสียง.
    slide->get_Shapes()->Remove(audioFrame);

    presentation->Dispose();
}

ตั้งค่าการเล่นเสียง

กำหนดค่ากรอบเสียงให้เล่นอัตโนมัติเมื่อสไลด์แสดง

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>());

    // เล่นโดยอัตโนมัติเมื่อสไลด์ปรากฏ.
    audioFrame->set_PlayMode(AudioPlayModePreset::Auto);

    presentation->Dispose();
}