PHP में प्रस्तुतियों को कुशलतापूर्वक मर्ज करें

परिचय

Aspose.Slides आपको एक प्रस्तुति से दूसरी में स्लाइड्स को क्लोन करके प्रस्तुतियों को मर्ज करने की अनुमति देता है। यह लेख बताता है कि संपूर्ण प्रस्तुतियों या चयनित स्लाइड्स को कैसे मर्ज किया जाए, मर्ज के दौरान स्लाइड मास्टर या विशिष्ट लेआउट का उपयोग कैसे किया जाए, विभिन्न स्लाइड आकार वाली प्रस्तुतियों को कैसे संभाला जाए, और मर्ज की गई स्लाइड्स को प्रस्तुति सेक्शन में कैसे जोड़ें। यह मर्ज किए गए कंटेंट से संबंधित व्यावहारिक नोट्स को भी कवर करता है, जिसमें वक्ता नोट्स, टिप्पणियाँ, पासवर्ड‑संरक्षित स्रोत फ़ाइलें, और थ्रेड उपयोग शामिल हैं।

प्रस्तुति मर्जिंग

जब आप एक प्रस्तुति को दूसरी में मर्ज करते हैं, तो आप प्रभावी रूप से उनके स्लाइड्स को एक ही प्रस्तुति में संयोजन कर रहे होते हैं ताकि एक फ़ाइल प्राप्त हो।

क्या मर्ज किया जा सकता है

Aspose.Slides के साथ, आप मर्ज कर सकते हैं

  • पूरी प्रस्तुतियां। सभी स्लाइड्स एक ही प्रस्तुति में आ जाती हैं
  • विशिष्ट स्लाइड्स। चयनित स्लाइड्स एक ही प्रस्तुति में आ जाती हैं
  • एक ही फ़ॉर्मैट (PPT से PPT, PPTX से PPTX, आदि) और विभिन्न फ़ॉर्मैट (PPT से PPTX, PPTX से ODP, आदि) में प्रस्तुतियों को एक‑दूसरे के साथ मर्ज करना।

मर्जिंग विकल्प

आप विकल्प लागू कर सकते हैं जो यह निर्धारित करते हैं कि

  • आउटपुट प्रस्तुति की प्रत्येक स्लाइड अपनी अनूठी शैली बनाए रखे
  • आउटपुट प्रस्तुति की सभी स्लाइड्स के लिए एक विशिष्ट शैली उपयोग की जाए।

प्रस्तुतियों को मर्ज करने के लिए, Aspose.Slides addClone मेथड्स (SlideCollection क्लास) प्रदान करता है। addClone मेथड्स के कई इम्प्लीमेंटेशन हैं जो प्रस्तुति मर्ज प्रक्रिया के पैरामीटर निर्धारित करते हैं। प्रत्येक Presentation ऑब्जेक्ट में एक slide कलेक्शन होता है, इसलिए आप उस प्रस्तुति से addClone मेथड को कॉल कर सकते हैं जिसमें आप स्लाइड्स को मर्ज करना चाहते हैं।

addClone मेथड एक Slide ऑब्जेक्ट लौटाता है, जो स्रोत स्लाइड की क्लोन होती है। आउटपुट प्रस्तुति में स्लाइड्स बस स्रोत की स्लाइड्स की कॉपी होती हैं। इसलिए, आप परिणामी स्लाइड्स में परिवर्तन (जैसे शैली लागू करना या फ़ॉर्मैटिंग विकल्प या लेआउट) कर सकते हैं बिना स्रोत प्रस्तुतियों पर प्रभाव पड़े की चिंता किए।

प्रस्तुतियों को मर्ज करें

Aspose.Slides वह addClone(Slide) मेथड प्रदान करता है जो स्लाइड्स को संयोजित करने की अनुमति देता है जबकि स्लाइड्स अपने लेआउट और शैली (डिफ़ॉल्ट पैरामीटर) बनाए रखती हैं।

यह PHP कोड दिखाता है कि प्रस्तुतियों को कैसे मर्ज किया जाए:

  $pres1 = new Presentation("pres1.pptx");
  try {
    $pres2 = new Presentation("pres2.pptx");
    try {
      foreach($pres2->getSlides() as $slide) {
        $pres1->getSlides()->addClone($slide);
      }
    } finally {
      if (!java_is_null($pres2)) {
        $pres2->dispose();
      }
    }
    $pres1->save("combined.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres1)) {
      $pres1->dispose();
    }
  }

स्लाइड मास्टर के साथ प्रस्तुतियों को मर्ज करें

Aspose.Slides वह addClone(Slide, MasterSlide, boolean) मेथड प्रदान करता है जो स्लाइड मास्टर प्रस्तुति टेम्पलेट लागू करते हुए स्लाइड्स को संयोजित करने की अनुमति देता है। इस प्रकार, आवश्यक होने पर आप आउटपुट प्रस्तुति में स्लाइड्स की शैली बदल सकते हैं।

यह कोड वर्णित ऑपरेशन को दर्शाता है:

  $pres1 = new Presentation("pres1.pptx");
  try {
    $pres2 = new Presentation("pres2.pptx");
    try {
      foreach($pres2->getSlides() as $slide) {
        $pres1->getSlides()->addClone($slide, $pres2->getMasters()->get_Item(0), true);
      }
    } finally {
      if (!java_is_null($pres2)) {
        $pres2->dispose();
      }
    }
    $pres1->save("combined.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres1)) {
      $pres1->dispose();
    }
  }

यदि आप आउटपुट प्रस्तुति की स्लाइड्स के लिए अलग लेआउट चाहते हैं, तो मर्ज करते समय addClone(Slide, LayoutSlide) मेथड का उपयोग करें।

प्रस्तुतियों से विशिष्ट स्लाइड्स को मर्ज करें

कई प्रस्तुतियों से विशिष्ट स्लाइड्स को मर्ज करना कस्टम स्लाइड डेक बनाने में उपयोगी है। Aspose.Slides for PHP via Java आपको केवल आवश्यक स्लाइड्स चुनने और इम्पोर्ट करने की अनुमति देता है। API मूल स्लाइड्स की फ़ॉर्मैटिंग, लेआउट और डिज़ाइन को संरक्षित रखती है।

निम्नलिखित PHP कोड एक नई प्रस्तुति बनाता है, दो अन्य प्रस्तुतियों से टाइटल स्लाइड्स जोड़ता है, और परिणाम को फ़ाइल में सहेजता है:

function getTitleSlide(Presentation $presentation) {
    for ($i = 0; $i < java_values($presentation->getSlides()->size()); $i++) {
        $slide = $presentation->getSlides()->get_Item($i);
        if (java_values($slide->getLayoutSlide()->getLayoutType()) === SlideLayoutType::Title) {
            return $slide;
        }
    }
    return null;
}
$presentation = new Presentation();
$presentation1 = new Presentation($folderPath . "presentation1.pptx");
$presentation2 = new Presentation($folderPath . "presentation2.pptx");
try {
    $presentation->getSlides()->removeAt(0);
    
    $slide1 = getTitleSlide($presentation1);

    if ($slide1 != null)
        $presentation->getSlides()->addClone($slide1);

    $slide2 = getTitleSlide($presentation2);

    if ($slide2 != null)
        $presentation->getSlides()->addClone($slide2);

    $presentation->save($folderPath . "combined.pptx", SaveFormat::Pptx);
} finally {
    $presentation2->dispose();
    $presentation1->dispose();
    $presentation->dispose();
}

स्लाइड लेआउट के साथ प्रस्तुतियों को मर्ज करें

यह PHP कोड दिखाता है कि प्रस्तुतियों से स्लाइड्स को कैसे संयोजित किया जाए जबकि आपके पसंदीदा स्लाइड लेआउट को लागू किया जाए, ताकि एक आउटपुट प्रस्तुति प्राप्त हो:

  $pres1 = new Presentation("pres1.pptx");
  try {
    $pres2 = new Presentation("pres2.pptx");
    try {
      foreach($pres2->getSlides() as $slide) {
        $pres1->getSlides()->addClone($slide, $pres2->getLayoutSlides()->get_Item(0));
      }
    } finally {
      if (!java_is_null($pres2)) {
        $pres2->dispose();
      }
    }
    $pres1->save("combined.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres1)) {
      $pres1->dispose();
    }
  }

विभिन्न स्लाइड आकारों वाली प्रस्तुतियों को मर्ज करें

विभिन्न स्लाइड आकारों वाली 2 प्रस्तुतियों को मर्ज करने के लिए, आपको एक प्रस्तुति का आकार बदलना होगा ताकि वह दूसरी प्रस्तुति के आकार से मेल खाए।

यह नमूना कोड वर्णित ऑपरेशन को दर्शाता है:

  $pres1 = new Presentation("pres1.pptx");
  try {
    $pres2 = new Presentation("pres2.pptx");
    try {
      $pres2->getSlideSize()->setSize($pres1->getSlideSize()->getSize()->getWidth(), $pres1->getSlideSize()->getSize()->getHeight(), SlideSizeScaleType::EnsureFit);
      foreach($pres2->getSlides() as $slide) {
        $pres1->getSlides()->addClone($slide);
      }
    } finally {
      if (!java_is_null($pres2)) {
        $pres2->dispose();
      }
    }
    $pres1->save("combined.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres1)) {
      $pres1->dispose();
    }
  }

स्लाइड्स को प्रस्तुति सेक्शन में मर्ज करें

यह PHP कोड दिखाता है कि एक विशिष्ट स्लाइड को प्रस्तुति के एक सेक्शन में कैसे मर्ज किया जाए:

  $pres1 = new Presentation("pres1.pptx");
  try {
    $pres2 = new Presentation("pres2.pptx");
    try {
      foreach($pres2->getSlides() as $slide) {
        $pres1->getSlides()->addClone($slide, $pres1->getSections()->get_Item(0));
      }
    } finally {
      if (!java_is_null($pres2)) {
        $pres2->dispose();
      }
    }
    $pres1->save("combined.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres1)) {
      $pres1->dispose();
    }
  }

स्लाइड सेक्शन के अंत में जोड़ी जाती है।

संदर्भ देखें

Aspose एक FREE Online Collage Maker प्रदान करता है। इस ऑनलाइन सेवा का उपयोग करके आप JPG to JPG या PNG से PNG छवियों को मर्ज कर सकते हैं, फ़ोटो ग्रिड्स बना सकते हैं, और अधिक।

Aspose FREE Online Merger देखें। यह समान फ़ॉर्मैट (जैसे PPT से PPT, PPTX से PPTX) या विभिन्न फ़ॉर्मैट (जैसे PPT से PPTX, PPTX से ODP) में PowerPoint प्रस्तुतियों को मर्ज करने की अनुमति देता है।

Aspose FREE Online Merger

अक्सर पूछे जाने वाले प्रश्न

क्या प्रस्तुतियों को मर्ज करते समय स्लाइडों की संख्या पर कोई सीमाएँ हैं?

कोई कड़ी सीमाएँ नहीं हैं। Aspose.Slides बड़ी फ़ाइलों को संभाल सकता है, लेकिन प्रदर्शन फ़ाइल के आकार और सिस्टम संसाधनों पर निर्भर करता है। बहुत बड़ी प्रस्तुतियों के लिए 64‑bit JVM का उपयोग करने और पर्याप्त हीप मेमोरी आवंटित करने की सलाह दी जाती है।

क्या मैं प्रस्तुतियों को एम्बेडेड वीडियो या ऑडियो के साथ मर्ज कर सकता हूँ?

हां, Aspose.Slides स्लाइड्स में एम्बेडेड मल्टीमीडिया कंटेंट को संरक्षित रखता है, लेकिन अंतिम प्रस्तुति काफी बड़ी हो सकती है।

क्या प्रस्तुतियों को मर्ज करते समय फ़ॉन्ट्स संरक्षित रहेंगे?

हां। स्रोत प्रस्तुतियों में उपयोग किए गए फ़ॉन्ट्स आउटपुट फ़ाइल में संरक्षित रहते हैं, बशर्ते वे सिस्टम पर इंस्टॉल हों या embedded हों।