إطار الصوت

إنشاء إطار الصوت

تتيح لك Aspose.Slides لـ C++ إضافة ملفات الصوت إلى الشرائح. يتم تضمين ملفات الصوت في الشرائح كإطارات صوتية.

  1. أنشئ مثيلاً لفئة Presentation.
  2. احصل على مرجع الشريحة من خلال مؤشرها.
  3. حمّل دفق ملف الصوت الذي ترغب في تضمينه في الشريحة.
  4. أضف إطار الصوت المضمن (الذي يحتوي على ملف الصوت) إلى الشريحة.
  5. اضبط PlayMode وVolume المعروضين بواسطة كائن IAudioFrame.
  6. احفظ العرض التقديمي المعدل.

يظهر لك هذا الرمز في C++ كيفية إضافة إطار صوتي مضمن إلى شريحة:

// ينشئ مثيلاً لفئة Presentation تمثل ملف عرض تقديمي
auto pres = System::MakeObject<Presentation>();

// يحصل على الشريحة الأولى
auto sld = pres->get_Slides()->idx_get(0);

// يحمل ملف الصوت wav إلى دفق
auto fstr = System::MakeObject<FileStream>(u"sampleaudio.wav", FileMode::Open, FileAccess::Read);

// يضيف إطار الصوت
auto audioFrame = sld->get_Shapes()->AddAudioFrameEmbedded(50.0f, 150.0f, 100.0f, 100.0f, fstr);

// يضبط وضع التشغيل وحجم الصوت
audioFrame->set_PlayMode(AudioPlayModePreset::Auto);
audioFrame->set_Volume(AudioVolumeMode::Loud);

// يكتب ملف PowerPoint إلى القرص
pres->Save(u"AudioFrameEmbed_out.pptx", SaveFormat::Pptx);

تغيير صورة مصغرة لإطار الصوت

عند إضافة ملف صوت إلى عرض تقديمي، يظهر الصوت كإطار بصورة افتراضية قياسية (انظر الصورة في القسم أدناه). يمكنك تغيير الصورة المصغرة لإطار الصوت (تعيين الصورة المفضلة لديك).

يظهر لك هذا الرمز في C++ كيفية تغيير الصورة المصغرة أو صورة المعاينة لإطار الصوت:

auto presentation = System::MakeObject<Presentation>();
        
auto slide = presentation->get_Slides()->idx_get(0);
        
// يضيف إطار صوت إلى الشريحة بموقع وحجم محددين.
auto audioStream = System::MakeObject<System::IO::FileStream>(u"sample2.mp3", 
    System::IO::FileMode::Open, System::IO::FileAccess::Read);
    
auto audioFrame = slide->get_Shapes()->AddAudioFrameEmbedded(150.0f, 100.0f, 50.0f, 50.0f, audioStream);
            
// يضيف صورة إلى موارد العرض التقديمي.
auto imageStream = System::IO::File::OpenRead(u"eagle.jpeg");
auto audioImage = presentation->get_Images()->AddImage(imageStream);
            
// يضبط الصورة لإطار الصوت.
audioFrame->get_PictureFormat()->get_Picture()->set_Image(audioImage); // <-----
        
//يحفظ العرض التقديمي المعدل إلى القرص
presentation->Save(u"example_out.pptx", Aspose::Slides::Export::SaveFormat::Pptx);

تغيير خيارات تشغيل الصوت

تتيح لك Aspose.Slides لـ C++ تغيير الخيارات التي تتحكم في تشغيل الصوت أو خصائصه. على سبيل المثال، يمكنك ضبط حجم الصوت، تعيين الصوت للتشغيل في حلقة، أو حتى إخفاء أيقونة الصوت.

لوحة خيارات الصوت في Microsoft PowerPoint:

example1_image

خيارات صوت PowerPoint التي تتوافق مع طرق AudioFrame في Aspose.Slides:

هذه هي كيفية تغيير خيارات تشغيل الصوت:

  1. إنشاء أو الحصول على إطار الصوت.
  2. تعيين قيم جديدة لخصائص إطار الصوت التي تريد تعديلها.
  3. احفظ ملف PowerPoint المعدل.

يوضح هذا الرمز في C++ عملية يتم فيها ضبط خيارات الصوت:

auto pres = System::MakeObject<Presentation>(u"AudioFrameEmbed_out.pptx");

// الحصول على شكل
auto shape = pres->get_Slides()->idx_get(0)->get_Shapes()->idx_get(0);

// تحويل الشكل إلى شكل AudioFrame
auto audioFrame = System::ExplicitCast<AudioFrame>(shape);

// يضبط وضع التشغيل للتشغيل عند النقر
audioFrame->set_PlayMode(AudioPlayModePreset::OnClick);

// يضبط الحجم على منخفض
audioFrame->set_Volume(AudioVolumeMode::Low);

// يضبط الصوت للتشغيل عبر الشرائح
audioFrame->set_PlayAcrossSlides(true);

// يعطل تكرار الصوت
audioFrame->set_PlayLoopMode(false);

// يخفي AudioFrame أثناء عرض الشرائح
audioFrame->set_HideAtShowing(true);

// يعيد الصوت إلى البداية بعد التشغيل
audioFrame->set_RewindAudio(true);

// يحفظ ملف PowerPoint إلى القرص
pres->Save(u"AudioFrameEmbed_changed.pptx", SaveFormat::Pptx);

استخراج الصوت

تسمح لك Aspose.Slides لـ .NET باستخراج الصوت المستخدم في انتقالات عرض الشرائح. على سبيل المثال، يمكنك استخراج الصوت المستخدم في شريحة معينة.

  1. أنشئ مثيلاً لفئة Presentation وقم بتحميل العرض التقديمي الذي يحتوي على الصوت.
  2. احصل على مرجع الشريحة ذات الصلة من خلال مؤشرها.
  3. اضبط انتقالات عرض الشرائح للشريحة.
  4. استخراج الصوت في بيانات بايت.

يوضح هذا الرمز في C++ كيفية استخراج الصوت المستخدم في شريحة:

String presName = u"AudioSlide.pptx";

// ينشئ مثيلاً لفئة Presentation تمثل ملف عرض تقديمي
auto pres = System::MakeObject<Presentation>(presName);

// يصل إلى الشريحة المطلوبة
auto slide = pres->get_Slides()->idx_get(0);

// يحصل على تأثيرات انتقال عرض الشرائح للشريحة
auto transition = slide->get_SlideShowTransition();

// يستخرج الصوت في مصفوفة بايت
auto audio = transition->get_Sound()->get_BinaryData();

Console::WriteLine(String(u"الطول: ") + audio->get_Length());