এই প্রবন্ধে, আমরা একটি উপস্থাপনা ফাইলে একাধিক [পাওয়ারপয়েন্ট3 কিভাবে একত্রিত করতে হবে তার বিস্তারিত আলোচনা করতে যাচ্ছি। পাওয়ারপয়েন্টগুলি কর্পোরেট সংস্কৃতিতে তথ্য উপস্থাপনা এবং ব্রিফিংয়ের জন্য ব্যবহৃত হয়, সেইসাথে সেগুলি ব্যবসায়িক ব্যক্তি এবং ছাত্ররা স্লাইড শো প্রস্তুতির জন্য ব্যবহার করে। জনপ্রিয়তার আরেকটি দিক হল টিউটোরিয়াল, ডিজিটাল পোর্টফোলিও, মৌলিক অ্যানিমেশন বা ফটো স্লাইড শো তৈরি করা। যাইহোক, যখন দলগুলি বিতরণ করা পরিবেশে কাজ করে, তখন আমাদের পাওয়ারপয়েন্ট উপস্থাপনাগুলিকে একত্রিত করার প্রয়োজন হতে পারে। তাই এই নিবন্ধটি জাভা ক্লাউড SDK ব্যবহার করে একাধিক পাওয়ারপয়েন্টকে একটি প্রেজেন্টেশনে একত্রিত করতে বিশদ বিবরণের উপর আলোকপাত করে।
- পাওয়ারপয়েন্ট API মার্জ করুন
- জাভাতে পাওয়ারপয়েন্ট একত্রিত করুন
- CURL কমান্ড ব্যবহার করে পাওয়ারপয়েন্ট মার্জ করুন
পাওয়ারপয়েন্ট API মার্জ করুন
প্রোগ্রাম্যাটিকভাবে তৈরি, সম্পাদনা এবং রপ্তানি করার জন্য PPT বা PPTX PDF, JPEG, PNG বা GIF ইত্যাদি ফরম্যাটে, আমরা Aspose.Slides Cloud নামে লো কোড API তৈরি করেছি। এর REST ভিত্তিক আর্কিটেকচার আপনাকে যেকোনো প্ল্যাটফর্মে API রুটিন কল করার ক্ষমতা দেয়। এখন জাভা অ্যাপ্লিকেশনে পাওয়ারপয়েন্ট প্রেজেন্টেশনগুলিকে একত্রিত করার বৈশিষ্ট্যটি বাস্তবায়নের জন্য, আমরা বিশেষভাবে তৈরি করেছি Aspose.Slides Cloud SDK for Java। তাই SDK ব্যবহার করার জন্য, আপনাকে যা করতে হবে তা হল maven বিল্ড প্রোজেক্টের pom.xml-এ এর রেফারেন্স যোগ করুন।
<repositories>
<repository>
<id>aspose-cloud</id>
<name>artifact.aspose-cloud-releases</name>
<url>https://artifact.aspose.cloud/repo</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-slides-cloud</artifactId>
<version>22.9.0</version>
</dependency>
</dependencies>
একবার SDK রেফারেন্স যোগ করা হলে, পরবর্তী গুরুত্বপূর্ণ ধাপ হল Aspose Cloud দিয়ে প্রমাণীকরণ করা। যদি আপনার একটি বিদ্যমান অ্যাকাউন্ট না থাকে, দয়া করে বৈধ ইমেল ঠিকানা ব্যবহার করে একটি বিনামূল্যে অ্যাকাউন্ট তৈরি করুন। তারপর নতুন তৈরি অ্যাকাউন্ট ব্যবহার করে লগইন করুন এবং [ক্লাউড ড্যাশবোর্ড] এ ক্লায়েন্ট আইডি এবং ক্লায়েন্ট সিক্রেট দেখুন/তৈরি করুন 5। নিম্নলিখিত বিভাগে প্রমাণীকরণের উদ্দেশ্যে এই বিশদ বিবরণ প্রয়োজন।
জাভাতে পাওয়ারপয়েন্ট একত্রিত করুন
এই বিভাগে আমরা কিভাবে জাভা ক্লাউড SDK ব্যবহার করে পাওয়ারপয়েন্ট উপস্থাপনা একত্রিত করতে পারি তার বিশদ ব্যাখ্যা করে। দয়া করে নোট করুন যে পাওয়ারপয়েন্টকে একত্রিত করার জন্য, ইনপুট পাওয়ারপয়েন্ট স্থানীয় ড্রাইভ থেকে লোড করা যেতে পারে, ক্লাউড স্টোরেজ থেকে লোড করা যেতে পারে বা সরাসরি ওয়েব URL থেকে লোড করা যেতে পারে৷ অনুগ্রহ করে নিচে উল্লেখিত নির্দেশাবলী অনুসরণ করুন।
- প্রথমত, আর্গুমেন্ট হিসাবে ক্লায়েন্টআইডি এবং ক্লায়েন্ট সিক্রেট প্রদান করার সময় স্লাইডএপিআই অবজেক্টের একটি অবজেক্ট তৈরি করুন
- দ্বিতীয়ত, FileInfo-এর একটি অবজেক্ট তৈরি করুন যেখানে আমরা প্রথম পাওয়ারপয়েন্টের জন্য ডেটা সরবরাহ করি
- তৃতীয়ত, ArrayList-এর একটি উদাহরণ তৈরি করুন যা একত্রিত করার জন্য PPT ফাইলগুলির তালিকা ধরে রাখবে
- পরবর্তী ধাপ হল প্রতিটি পাওয়ারপয়েন্টকে একত্রিত করার জন্য PresentationToMerge-এর একটি পৃথক বস্তু তৈরি করা
- এখন স্থানীয় স্টোরেজ থেকে পাওয়ারপয়েন্ট লোড করার জন্য, আমাদের PresentationToMerge গণনা থেকে REQUEST মান ব্যবহার করতে হবে
- পাওয়ারপয়েন্টের মধ্যে নির্দিষ্ট স্লাইডগুলিকে একত্রিত করার জন্য নির্দিষ্ট করার জন্য, আমরা setSlides(…) পদ্ধতি ব্যবহার করি
- পরবর্তী ধাপ হল প্রেজেন্টেশন ফাইলগুলিকে মার্জ করার জন্য ক্রম নির্ধারণ করা এবং এই উদ্দেশ্যে, আমরা OrderedMergeRequest অবজেক্ট ব্যবহার করতে যাচ্ছি এবং এর সেটপ্রেজেন্টেশন(..) পদ্ধতি ব্যবহার করতে যাচ্ছি।
- অবশেষে পাওয়ারপয়েন্ট প্রেজেন্টেশনগুলিকে একত্রিত করতে এবং ফলস্বরূপ ফাইলটিকে ক্লাউড স্টোরেজে সংরক্ষণ করতে mergeAndSaveOnline(…) পদ্ধতিতে কল করুন
try
{
// https://dashboard.aspose.cloud/ থেকে ClientID এবং ClientSecret পান
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";
// SlidesApi এর একটি উদাহরণ তৈরি করুন
SlidesApi slidesApi = new SlidesApi(clientId,clientSecret);
// একত্রিত করতে উপস্থাপনা সংগ্রহ করুন.
FileInfo fileInfo = new FileInfo();
// ইনপুট উপস্থাপনা পড়ুন
fileInfo.setData(Files.readAllBytes(Paths.get("TemplateCV.pptx")));
// উৎস পাওয়ারপয়েন্টের নাম সেট করুন
fileInfo.setName("TemplateCV.pptx");
// FileInfo অবজেক্টের একটি অ্যারে তালিকা তৈরি করুন
List<FileInfo> files = new ArrayList<FileInfo>();
// অ্যারে তালিকায় FileInfo অবজেক্ট যোগ করুন
files.add(fileInfo);
// একত্রিত করার জন্য প্রথম উপস্থাপনার জন্য তথ্য প্রস্তুত করুন।
PresentationToMerge presentation1 = new PresentationToMerge();
// স্থানীয় ড্রাইভ থেকে পাওয়ারপয়েন্ট পড়ুন
presentation1.setSource(PresentationToMerge.SourceEnum.REQUEST);
// প্রথম পাওয়ারপয়েন্ট ফাইলের জন্য পথ সেট করুন
presentation1.setPath("TemplateCV.pptx");
// পাওয়ারপয়েন্টের স্লাইডগুলি নির্দিষ্ট করুন যা আমাদের একত্রিত করতে হবে
presentation1.setSlides(Arrays.asList(1, 2));
// একত্রিত করার জন্য প্রথম উপস্থাপনার জন্য তথ্য প্রস্তুত করুন।
PresentationToMerge presentation2 = new PresentationToMerge();
presentation2.setPath("Presentation1.pptx");
// পাসওয়ার্ডের বিবরণ সেট করুন যদি পাওয়ারপয়েন্ট পাসওয়ার্ড সুরক্ষিত থাকে
///presentation2.setPassword("my_password");
// ক্লাউড স্টোরেজ হিসাবে উত্স নির্দিষ্ট করুন
presentation2.setSource(PresentationToMerge.SourceEnum.STORAGE);
// একত্রিত করার জন্য প্রথম উপস্থাপনার জন্য তথ্য প্রস্তুত করুন।
PresentationToMerge presentation3 = new PresentationToMerge();
// ওয়েব ইউআরএল হিসাবে পাওয়ারপয়েন্টের পথ
presentation3.setPath("https://github.com/aspose-slides-cloud/aspose-slides-cloud-java/blob/master/TestData/test-unprotected.pptx");
presentation3.setSlides(Arrays.asList(1));
// URL হিসাবে পাথ মান সেট করুন
presentation3.setSource(PresentationToMerge.SourceEnum.URL);
// মার্জ অনুরোধ প্রস্তুত করুন.
OrderedMergeRequest request = new OrderedMergeRequest();
// পাওয়ারপয়েন্ট প্রেজেন্টেশনের জন্য মার্জ অর্ডার সেট করুন
request.setPresentations(Arrays.asList(presentation1, presentation2));//, presentation3));
// পাওয়ারপয়েন্টকে একত্রিত করতে এবং ক্লাউড স্টোরেজে আউটপুট সংরক্ষণ করতে API কল করুন
slidesApi.mergeAndSaveOnline("Merged.pptx", files, request, "internal"); // mergeOnline(files, request, null);
System.out.println("Merge PowerPoint successful !");
}catch(Exception ex)
{
System.out.println(ex);
}
উপরের উদাহরণে ব্যবহৃত নমুনা ফাইলগুলি TemplateCV.pptx, Presentation1.pptx এবং Merged.ppt থেকে ডাউনলোড করা যেতে পারে।
CURL কমান্ড ব্যবহার করে পাওয়ারপয়েন্ট মার্জ করুন
সিআরএল কমান্ডগুলি প্ল্যাটফর্ম স্বাধীন এবং যেকোনো প্ল্যাটফর্মে কার্যকর করা যেতে পারে। সুতরাং এই বিভাগটি কীভাবে সিআরএল কমান্ড ব্যবহার করে পাওয়ারপয়েন্ট উপস্থাপনাগুলিকে একত্রিত করতে হয় তার বিশদ ভাগ করে। সুতরাং এই পদ্ধতির পূর্বপ্রস্তুতিগুলির মধ্যে, নিম্নলিখিত কমান্ডটি কার্যকর করার সময় প্রথমে আমাদের একটি JWT অ্যাক্সেস টোকেন (ক্লায়েন্ট শংসাপত্রের উপর ভিত্তি করে) তৈরি করতে হবে।
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
একবার আমাদের কাছে JWT টোকেন হয়ে গেলে, পরবর্তী ধাপ হল নিম্নলিখিত কমান্ড ব্যবহার করে পাওয়ারপয়েন্ট উপস্থাপনাগুলিকে একত্রিত করা। অনুগ্রহ করে মনে রাখবেন যে নিম্নলিখিত কমান্ডে, আমরা প্রথম উপস্থাপনা থেকে প্রথম স্লাইড এবং দ্বিতীয় উপস্থাপনা থেকে, 1 ম এবং 3য় স্লাইড একত্রিত করা হয়। মার্জ PPTX ক্লাউড স্টোরেজে সংরক্ষিত হয়।
curl -v -X PUT "https://api.aspose.cloud/v3.0/slides/merge?outPath=newResultant.pptx" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-H "Content-Type: application/json" \
-d "{ \"Presentations\": [ { \"Path\": \"Presentation1.pptx\", \"Password\": \"string\", \"Slides\": [ 1 ], \"Source\": \"Storage\" }, { \"Path\": \"test-unprotected.pptx\", \"Password\": \"string\", \"Slides\": [ 1,3 ], \"Source\": \"Storage\" } ]}"
উপসংহার
এই নিবন্ধটি জাভা ক্লাউড SDK ব্যবহার করে পাওয়ারপয়েন্ট উপস্থাপনাগুলিকে একত্রিত করার বিশদ বিবরণে আমাদের আলোকিত করেছে৷ জাভা কোড স্নিপেট ছাড়া, আমরা cURL কমান্ড ব্যবহার করে একাধিক পাওয়ারপয়েন্টকে কীভাবে একত্রিত করতে হয় তার বিশদ বিবরণ সম্পর্কেও শিখেছি। উপরন্তু, আমরা ক্লাউড এপিআই দ্বারা অফার করা আশ্চর্যজনক বৈশিষ্ট্যগুলির আধিক্য সম্পর্কে জানতে পণ্য ডকুমেন্টেশন অন্বেষণ করার সুপারিশ করি। এছাড়াও, দয়া করে মনে রাখবেন যে আমাদের সমস্ত ক্লাউড SDK গুলি MIT লাইসেন্সের অধীনে প্রকাশিত হয়েছে, তাই আপনি GitHub থেকে সম্পূর্ণ সোর্স কোড ডাউনলোড করার কথা বিবেচনা করতে পারেন এবং আপনার প্রয়োজনীয়তা অনুযায়ী এটি পরিবর্তন করতে পারেন। কোনো সমস্যার ক্ষেত্রে, আপনি বিনামূল্যে প্রোডাক্ট সাপোর্ট ফোরাম এর মাধ্যমে দ্রুত সমাধানের জন্য আমাদের সাথে যোগাযোগ করতে পারেন।
সম্পরকিত প্রবন্ধ
সম্পর্কে আরও জানতে অনুগ্রহ করে নিম্নলিখিত লিঙ্কগুলিতে যান: