স্লাইডস এপিআই কার্যকরভাবে ব্যবহার করার জন্য, আপনাকে উপস্থাপনা এবং তাদের উপাদানগুলির স্থাপত্য, সেইসাথে এই উপাদানগুলির মধ্যে মিথস্ক্রিয়াগুলি বুঝতে হবে। এই পৃষ্ঠাটি এই বিষয়গুলির একটি বিশদ ওভারভিউ প্রদান করে:
- উপস্থাপনা উপাদানগুলির ধারণাগত মডেল
- API কীভাবে এই উপাদানগুলিকে উপস্থাপন করে
- উপাদানগুলির স্টাইলিং বৈশিষ্ট্য
এটি এবং অন্যান্য ধারণার সারসংক্ষেপ পড়লে কীভাবে করবেন নির্দেশিকা , রেফারেন্স ডকুমেন্টেশন এবং রেসিপির নমুনাগুলি বোঝা এবং ব্যবহার করা সহজ হবে।
উপস্থাপনা, পৃষ্ঠা এবং পৃষ্ঠার উপাদান
গুগল স্লাইডসের সবচেয়ে বাইরের কন্টেইনার উপাদান হল একটি উপস্থাপনা । এটি এমন একটি ইউনিট যা গুগল ড্রাইভে সংরক্ষণ করা যেতে পারে, অন্যান্য ব্যবহারকারীদের সাথে ভাগ করা যেতে পারে, ইত্যাদি।
প্রতিটি উপস্থাপনায় বিভিন্ন ধরণের পৃষ্ঠা থাকে। এক ধরণের পৃষ্ঠা হল স্লাইড , যা এমন পৃষ্ঠা যা ব্যবহারকারীরা দেখেন এবং উপস্থাপনাটি যখন স্ক্রিনে রেন্ডার করা হয় তখন একে অপরের মধ্যে উল্টে যান।
প্রতিটি পৃষ্ঠায় বেশ কয়েকটি পৃষ্ঠার উপাদান থাকে, যা একসাথে পৃষ্ঠার বিষয়বস্তু তৈরি করে, যেমনটি নিম্নলিখিত চিত্রে দেখানো হয়েছে:

স্লাইড ছাড়াও, আরও কিছু ধরণের পৃষ্ঠা রয়েছে যা আপনাকে বিভিন্ন স্লাইডে নকশা প্রয়োগ করতে দেয়, যা একটি সামঞ্জস্যপূর্ণ চেহারা তৈরি করে। এই অন্যান্য পৃষ্ঠার ধরণগুলি হল মাস্টার এবং লেআউট , এবং তাদের বৈশিষ্ট্যগুলি স্লাইডগুলি কীভাবে রেন্ডার করা হয় তা নির্ধারণ করে, যেমনটি নিম্নলিখিত চিত্রে দেখানো হয়েছে:

মাস্টার্স — মাস্টার পৃষ্ঠা দুটি উদ্দেশ্যে কাজ করে। মাস্টারের প্লেসহোল্ডারগুলিতে আপনার উপস্থাপনা জুড়ে ব্যবহৃত টেক্সট স্টাইলের জন্য ডিফল্ট মান থাকে। মাস্টার স্লাইডের ব্যাকগ্রাউন্ড এবং অন্য যেকোনো আকার সেই মাস্টারের উপর ভিত্তি করে সমস্ত স্লাইডের জন্য ডিফল্ট ব্যাকগ্রাউন্ড তৈরি করে। যদি আপনার একটি কোম্পানির লোগো থাকে যা আপনি আপনার উপস্থাপনার প্রতিটি স্লাইডে দেখাতে চান, তাহলে এটি মাস্টারে রাখুন।
লেআউট — লেআউট টেমপ্লেটগুলি নির্ধারণ করে যে প্রতিটি ধরণের স্লাইডে কীভাবে বিষয়বস্তু সাজানো হবে। উদাহরণস্বরূপ, যদি আপনি চান যে আপনার সমস্ত শিরোনাম স্লাইড একটি নির্দিষ্ট উপায়ে দেখাক, তাহলে আপনি শিরোনাম লেআউট টেমপ্লেটটি সম্পাদনা করতে পারেন।
আরও দুই ধরণের পৃষ্ঠা আছে - নোট পৃষ্ঠা এবং নোট মাস্টার - যা বেশিরভাগই স্পিকার নোটের সাথে কাজ করার জন্য প্রাসঙ্গিক।
API উপস্থাপনের ধরণ এবং কাঠামো
এই বিভাগটি বর্ণনা করে যে উপরে বর্ণিত Google Slides ধারণাগত মডেলটি Slides API-তে কীভাবে উপস্থাপন করা হয়।
নিচের চিত্রটি স্লাইডস এপিআই-তে প্রেজেন্টেশন, পৃষ্ঠা এবং পৃষ্ঠা উপাদানের মধ্যে প্রকারভেদের সম্পর্ক চিত্রিত করে:

নিম্নলিখিত বিভাগগুলি JSON-এ এই প্রকারগুলিকে কীভাবে উপস্থাপন করা হয় তা দেখায়।
উপস্থাপনা
একটি উপস্থাপনায় বেশ কয়েকটি বৈশিষ্ট্য থাকে এবং এতে থাকা পৃষ্ঠাগুলি থাকে:
{
"presentationId": string,
"pageSize": { object(Size) },
"slides": [ { object(Page) } ],
"title": string,
"masters": [ { object(Page) } ],
"layouts": [ { object(Page) } ],
"notesMaster": object(Page),
"locale": string,
}
পাতা
একটি পৃষ্ঠায় কিছু বৈশিষ্ট্যের সেট থাকে এবং এতে থাকা পৃষ্ঠার উপাদানগুলি থাকে:
{
"objectId": string,
"pageType": enum(PageType),
"pageElements": [ { object(PageElement) } ],
"pageProperties": { object(PageProperties) },
// Union field properties can be only one of the following:
"slideProperties": { object(SlideProperties) },
"layoutProperties": { object(LayoutProperties) },
"notesProperties": { object(NotesProperties) },
// End of list of possible types for union field properties.
}
পৃষ্ঠার উপাদান
পৃষ্ঠা উপাদান হল ভিজ্যুয়াল উপাদান যা পৃষ্ঠাগুলিতে স্থাপন করা হয়। API-তে একটি পৃষ্ঠা উপাদানে বেশ কয়েকটি বৈশিষ্ট্য থাকে, যার মধ্যে একটি ক্ষেত্রও রয়েছে যা পৃষ্ঠা উপাদানের ধরণ অনুসারে পরিবর্তিত হয়:
{
"objectId": string,
"size": { object(Size) },
"transform": { object(AffineTransform) },
"title": string,
"description": string,
// Union field element_kind can be only one of the following:
"elementGroup": { object(Group) },
"shape": { object(Shape) },
"image": { object(Image) },
"video": { object(Video) },
"line": { object(Line) },
"table": { object(Table) },
"wordArt": { object(WordArt) },
"sheetsChart": { object(SheetsChart) },
// End of list of possible types for union field element_kind.
}
উপরের সংজ্ঞায় union ফিল্ড element_kind দ্বারা সংজ্ঞায়িত করা হয়েছে, যা বিভিন্ন ধরণের পৃষ্ঠা উপাদান। এই ধরণের পৃষ্ঠা উপাদানগুলি নিম্নলিখিত টেবিলে বর্ণনা করা হয়েছে:
| উপাদানের ধরণ | বিবরণ |
|---|---|
| গ্রুপ | পৃষ্ঠার উপাদানগুলির একটি সেট যা একটি পৃথক ইউনিট হিসাবে বিবেচিত হয়। এগুলি একসাথে সরানো, স্কেল করা এবং ঘোরানো যেতে পারে। |
| আকৃতি | একটি সরল দৃশ্যমান বস্তু, যেমন আয়তক্ষেত্র, উপবৃত্ত এবং টেক্সট বাক্স। আকারগুলিতে টেক্সট থাকতে পারে, তাই স্লাইড তৈরির জন্য এগুলিই সবচেয়ে সাধারণ পৃষ্ঠা উপাদান। |
| ভাবমূর্তি | স্লাইডে আমদানি করা একটি গ্রাফিক। |
| ভিডিও | স্লাইডে ইম্পোর্ট করা একটি ভিডিও। |
| লাইন | একটি দৃশ্যমান রেখা, বক্ররেখা, অথবা সংযোগকারী। |
| টেবিল | কন্টেন্টের একটি গ্রিড। |
| ওয়ার্ডআর্ট | একটি ভিজ্যুয়াল টেক্সট উপাদান যা অনেকটা আকৃতির মতো আচরণ করে। |
| শীটচার্ট | Google Sheets থেকে স্লাইডে আমদানি করা একটি চার্ট। |
পৃষ্ঠা এবং পৃষ্ঠার উপাদানের বৈশিষ্ট্য
স্লাইডস এপিআই আপনাকে আপনার উপস্থাপনায় পৃষ্ঠা এবং পৃষ্ঠার উপাদানগুলির উপস্থিতি পড়তে এবং আপডেট করতে দেয়। বিভিন্ন পৃষ্ঠা উপাদান বিভিন্ন বৈশিষ্ট্য সমর্থন করে যা পৃষ্ঠা উপাদানটি কীভাবে রেন্ডার করা হয় তা নিয়ন্ত্রণ করে।
প্রতিটি পৃষ্ঠার উপাদানের ধরণের একটি সংশ্লিষ্ট বৈশিষ্ট্য উপাদান এবং একটি বৈশিষ্ট্য আপডেট বার্তা থাকে, উদাহরণস্বরূপ:
- একটি পৃষ্ঠা উপাদানের ধরণ আছে আকৃতি
- এর প্রোপার্টি ফিল্ড হল shapeProperties
- এই বৈশিষ্ট্যগুলি আপডেট করার অনুরোধ হল UpdateShapePropertiesRequest
প্রতিটি পৃষ্ঠার উপাদানের ধরণের জন্য একই ধরণের উপাদান/বৈশিষ্ট্য/আপডেট অনুরোধ বিদ্যমান: Image / imageProperties / UpdateImageProperties , ইত্যাদি।
কোনও এলিমেন্ট পড়ার সময় আপনি যেখানেই প্রোপার্টিজ অ্যাট্রিবিউটের মুখোমুখি হোন না কেন, তা পড়তে পারেন; এর মান পরিবর্তন করতে, batchUpdate পদ্ধতির জন্য পেলোড হিসেবে ম্যাচিং রিকোয়েস্ট টাইপ ব্যবহার করুন, যার ফলে আপনি প্রেজেন্টেশনে এই মানগুলি পরিবর্তন করতে পারবেন।
সম্পত্তির প্রকারভেদ
স্লাইডস এপিআই-তে বিভিন্ন ধরণের অবজেক্টের মধ্যে কিছু সাধারণ বৈশিষ্ট্য রয়েছে:
| সম্পত্তি | বিবরণ |
|---|---|
| রঙ | স্লাইডস এপিআই-তে রঙগুলি হয় একটি RGB মান অথবা একটি থিমের রঙের রেফারেন্স হতে পারে। থিমের রঙগুলিকে নাম দ্বারা উল্লেখ করা হয় (উদাহরণস্বরূপ "DARK1") এবং একটি পৃষ্ঠার রঙের স্কিম ব্যবহার করে RGB মানের সাথে ম্যাপ করা যেতে পারে। স্লাইডস এডিটরে উপস্থাপনার থিম পরিবর্তন করার সময় এই রঙের স্কিমটি সাধারণত আপডেট করা হয়। |
| ভরাট | ফিল বলতে কোনও বস্তুর ভেতরে খালি স্থানের রেন্ডারিং বোঝায়। স্লাইডে সবচেয়ে বেশি সমর্থিত ফিল হল একটি সলিড ফিল, যেখানে কোনও বস্তুর অভ্যন্তরভাগ একটি একক সলিড রঙ দিয়ে পূর্ণ থাকে। পৃষ্ঠাগুলির ব্যাকগ্রাউন্ডের জন্যও ফিল ব্যবহার করা যেতে পারে। |
| রূপরেখা | আউটলাইনটি পৃষ্ঠার উপাদানকে ঘিরে থাকা রেখার সেটকে প্রতিনিধিত্ব করে। রেখার রঙ একটি Fill দিয়ে নিয়ন্ত্রিত হয়। কলাররা আউটলাইনের প্রস্থ এবং ড্যাশ স্টাইলও সামঞ্জস্য করতে পারে। |
| ছায়া | ছায়াটি একটি ভিজ্যুয়াল এফেক্ট উপস্থাপন করে যা বস্তু দ্বারা নিক্ষিপ্ত একটি বাস্তব ছায়ার অনুকরণ করে। বর্তমানে, স্লাইডস API-তে ছায়াগুলি কেবল পঠনযোগ্য। |
বৈশিষ্ট্য আপডেট করা হচ্ছে
একটি প্রপার্টি আপডেট করতে, একটি batchUpdate কলে উপযুক্ত Update ... Properties অনুরোধ ব্যবহার করুন—উদাহরণস্বরূপ, UpdateShapeProperties for Shapes। এই অনুরোধগুলি একটি সম্পূর্ণ প্রপার্টি বার্তা গ্রহণ করে এবং প্রপার্টি বার্তার কোন ক্ষেত্রগুলি আপডেট করা উচিত তা নির্ধারণ করতে ফিল্ড মাস্ক ব্যবহার করতে পারে।
সম্পত্তির উত্তরাধিকার
একটি পৃষ্ঠা বা পৃষ্ঠা উপাদান তার মূল বস্তু থেকে বৈশিষ্ট্য উত্তরাধিকারসূত্রে পেতে পারে। একটি বস্তুর বৈশিষ্ট্য, যার মধ্যে রয়েছে সেগুলি যা এটি সংজ্ঞায়িত করে এবং যেগুলি এটি উত্তরাধিকারসূত্রে পায়, তার চূড়ান্ত দৃশ্যমান চেহারা নির্ধারণ করে।
- পৃষ্ঠার বৈশিষ্ট্য — একটি পৃষ্ঠা এমন যেকোনো বৈশিষ্ট্য উত্তরাধিকারসূত্রে পায় যা এটি সংজ্ঞায়িত করে না, কিন্তু যে লেআউট বা মাস্টারের উপর ভিত্তি করে তৈরি করা হয়েছে তাতে সংজ্ঞায়িত করা হয়।
- আকৃতির বৈশিষ্ট্য — একটি আকৃতিকে একটি স্থানধারক হিসেবে চিহ্নিত করা যেতে পারে, যা আপনাকে স্পষ্টভাবে অন্য একটি স্থানধারক আকৃতি (পৃষ্ঠার মূল বিন্যাস বা মাস্টারে) উল্লেখ করতে দেয় যেখান থেকে বৈশিষ্ট্য উত্তরাধিকার সূত্রে পাওয়া যাবে।
এই ধারণাগুলি পরবর্তী অনুচ্ছেদে আরও ব্যাখ্যা করা হয়েছে।
পৃষ্ঠার বৈশিষ্ট্যের উত্তরাধিকার
স্লাইড, লেআউট এবং মাস্টারের গঠন উপস্থাপনার মধ্যে একটি উত্তরাধিকার শ্রেণিবিন্যাস নির্ধারণ করে: স্লাইডগুলি লেআউট থেকে উত্তরাধিকারসূত্রে প্রাপ্ত হয় এবং লেআউটগুলি মাস্টারদের থেকে উত্তরাধিকারসূত্রে প্রাপ্ত হয়। একটি স্লাইডের প্যারেন্ট লেআউট এবং মাস্টার স্লাইডের স্লাইডপ্রোপার্টি ক্ষেত্রে নির্দিষ্ট করা হয়।
একটি পৃষ্ঠা একটি প্যারেন্ট পেজ থেকে ব্যাকগ্রাউন্ড এবং কালার স্কিমের মতো বৈশিষ্ট্য উত্তরাধিকার সূত্রে পেতে পারে। একটি বৈশিষ্ট্য উত্তরাধিকার সূত্রে পেতে, চাইল্ড পেজটি কেবল তার PageProperties বার্তায় সেই বৈশিষ্ট্যের জন্য কোনও মান সেট করে না। প্যারেন্ট দ্বারা সংজ্ঞায়িত মান "ওভাররাইড" না করে, পৃষ্ঠাটি উত্তরাধিকারসূত্রে প্রাপ্ত মান গ্রহণ করে।
নিচের চিত্রটি একটি স্লাইডকে একটি লেআউট থেকে উত্তরাধিকারসূত্রে প্রাপ্ত বৈশিষ্ট্য দেখায়, যা একটি মাস্টার থেকে উত্তরাধিকারসূত্রে প্রাপ্ত হয়:

একটি স্লাইড রেন্ডার করার জন্য ব্যবহৃত বৈশিষ্ট্যগুলি হল এটি যেগুলি সংজ্ঞায়িত করে এবং যেগুলি উত্তরাধিকারসূত্রে পায় তার সমন্বয়। এই উদাহরণে স্লাইড ১ রেন্ডার করার জন্য ব্যবহৃত সমাধানকৃত মানগুলি নিম্নরূপ:
- PropertyA হল "লাল"।
- PropertyB হল "কমলা"।
আকৃতির বৈশিষ্ট্যের উত্তরাধিকার
আকৃতিগুলি অন্যান্য আকৃতি থেকে পূরণ, রূপরেখা বা ছায়ার মতো বৈশিষ্ট্য উত্তরাধিকার সূত্রে পেতে পারে। একটি আকৃতি হল একটি স্থানধারক যদি এর Shape.placeholder ক্ষেত্রটি সেট করা থাকে। চাইল্ড প্লেসহোল্ডারের Shape.placeholder.parentObjectId ক্ষেত্রটি তার মূল স্থানধারককে চিহ্নিত করে। যখন আপনি একটি লেআউটের উপর ভিত্তি করে একটি নতুন স্লাইড তৈরি করেন, তখন সেই লেআউটের যেকোনো স্থানধারক নতুন স্লাইডে চাইল্ড আকার হিসাবে উপস্থিত হয়। একইভাবে, মাস্টার পৃষ্ঠাগুলির স্থানধারকগুলি লেআউটের স্থানধারকগুলির পিতামাতা হিসাবে কাজ করতে পারে।
এই উত্তরাধিকার শ্রেণিবিন্যাস সংজ্ঞায়িত করার মাধ্যমে, চাইল্ড পেজটি তার ShapeProperties বার্তায় সেই মানটি সেট না করে একটি সম্পত্তি উত্তরাধিকারসূত্রে পায়। পিতামাতার দ্বারা সংজ্ঞায়িত মানকে অগ্রাহ্য না করে, চাইল্ড শেপ উত্তরাধিকারসূত্রে প্রাপ্ত মান গ্রহণ করে।
নিচের চিত্রটি একটি স্লাইড, একটি লেআউট এবং একটি মাস্টারে থাকা তিনটি স্থানধারকের মধ্যে বৈশিষ্ট্যের উত্তরাধিকার দেখায়:

একটি প্লেসহোল্ডার আকৃতি রেন্ডার করার জন্য ব্যবহৃত বৈশিষ্ট্যগুলি হল এটি সংজ্ঞায়িত এবং এটি উত্তরাধিকারসূত্রে প্রাপ্ত বৈশিষ্ট্যগুলির সমন্বয়। এই উদাহরণে এই আকারগুলির জন্য সমাধান করা মানগুলি নিম্নরূপ:
- স্থানধারক১: propertyA কে "হলুদ" হিসেবে, propertyB কে "সবুজ" হিসেবে রেন্ডার করা হয়েছে।
- Placeholder2: propertyA কে "হলুদ" হিসেবে, propertyB কে "বেগুনি" হিসেবে রেন্ডার করা হয়েছে।
- Placeholder3: propertyA কে "হলুদ" হিসেবে, propertyB কে "বেগুনি" হিসেবে রেন্ডার করা হয়েছে।
আকৃতি হল একমাত্র ধরণের পৃষ্ঠা উপাদান যার প্যারেন্ট থাকতে পারে। অন্যান্য ধরণের, যেমন ছবি, টেবিল এবং চার্ট, স্থানধারক হতে পারে না এবং প্যারেন্ট থাকতে পারে না।
PropertyState ব্যবহার করে "লুকানো" বৈশিষ্ট্য
PropertyState গণনা নিয়ন্ত্রণ করে যে কোনও আকৃতির সম্পত্তি আসলে রেন্ডারিংয়ের জন্য ব্যবহৃত হচ্ছে কিনা, নাকি মানটি শুধুমাত্র চাইল্ড শেপ দ্বারা উত্তরাধিকারের জন্য ব্যবহৃত হচ্ছে। NOT_RENDERED প্রোপার্টি স্টেট সহ কোনও প্রোপার্টি তার পৃষ্ঠায় শেপ রেন্ডার করার সময় ব্যবহার করা হবে না, তবে যেসব শিশুদের RENDERED প্রোপার্টির সাথে সম্পর্কিত অবস্থা রয়েছে তারা এখনও এই প্রোপার্টি উত্তরাধিকারী হতে পারে।
নিম্নলিখিত চিত্রটি PropertyState ক্ষেত্রটি পরিচালনা করে এমন তিনটি স্থানধারকের মধ্যে বৈশিষ্ট্যের উত্তরাধিকার দেখায়:

আকৃতির বৈশিষ্ট্যের রেন্ডারিং PropertyState ক্ষেত্র দ্বারা প্রভাবিত হতে পারে। এই উদাহরণে এই আকারগুলির জন্য সমাধান করা মানগুলি নিম্নরূপ:
- Placeholder1: propertyA কে "Red" হিসেবে রেন্ডার করা হয়েছে।
- Placeholder2: propertyA রেন্ডার করা হয়নি। যদি এটি outline সম্পত্তি হত, তাহলে Placeholder2 এর কোন outline থাকত না।
- Placeholder3: propertyA রেন্ডার করা হয়নি।
The PropertyState গণনার আরও একটি সম্ভাব্য মান আছে: INHERIT property state এর অর্থ হল property state নিজেই উত্তরাধিকারসূত্রে প্রাপ্ত, এবং parent এর মান ব্যবহার করা উচিত। parent ছাড়া আকৃতির INHERIT property state থাকতে পারে না।