शुरुआती जानकारी

Google Slides API से, आपको Google Slides प्रज़ेंटेशन बनाने और उनमें बदलाव करने की सुविधा मिलती है.

ऐप्लिकेशन, Google Slides API के साथ इंटिग्रेट हो सकते हैं, ताकि उपयोगकर्ता और सिस्टम से मिले डेटा की मदद से, अपने-आप सुंदर स्लाइड डेक बनाए जा सकें. उदाहरण के लिए, किसी डेटाबेस में मौजूद ग्राहक की जानकारी का इस्तेमाल किया जा सकता है और उसे पहले से डिज़ाइन किए गए टेंप्लेट और कॉन्फ़िगरेशन के चुने गए विकल्पों के साथ जोड़ा जा सकता है. ऐसा करके, इतने समय में प्रज़ेंटेशन तैयार किए जा सकते हैं.

एपीआई की खास जानकारी

प्रज़ेंटेशन कलेक्शन, ऐसे तरीके उपलब्ध कराता है जिनसे आपको प्रज़ेंटेशन में एलिमेंट पाने और उन्हें अपडेट करने में मदद मिलती है.

Slides API के साथ आपके ज़्यादातर काम शायद प्रज़ेंटेशन बनाते और अपडेट करते हैं. ऐसा करने के लिए, batchUpdate तरीके का इस्तेमाल किया जाएगा. इस तरीके में, Request ऑब्जेक्ट की एक सूची होती है, जिनसे ये काम किए जा सकते हैं:

  • स्लाइड बनाएं
  • स्लाइड में शेप या टेबल जैसे एलिमेंट जोड़ना
  • टेक्स्ट डालें, बदलें और हटाएं
  • तत्वों पर रूपांतरण लागू करना
  • स्लाइड का क्रम बदलना

ज़्यादा जानकारी के लिए बैच अपडेट देखें. एपीआई को इस्तेमाल करने के आसान उदाहरण के लिए शुरू करने की गाइड देखें.

प्रज़ेंटेशन का स्ट्रक्चर

Slides API के प्रज़ेंटेशन में पेज होते हैं, जिनमें पेज एलिमेंट होते हैं.

प्रज़ेंटेशन का आईडी, यूआरएल से लिया जा सकता है:

https://docs.google.com/presentation/d/presentationId/edit

प्रज़ेंटेशन आईडी एक स्ट्रिंग होती है, जिसमें अक्षर, अंक, और कुछ खास वर्ण होते हैं. Google Sheets यूआरएल से प्रज़ेंटेशन आईडी निकालने के लिए, नीचे दिए गए रेगुलर एक्सप्रेशन का इस्तेमाल किया जा सकता है:

/presentation/d/([a-zA-Z0-9-_]+)

अगर आपको Drive API के बारे में जानकारी है, तो presentationId, फ़ाइल के संसाधन के आईडी से जुड़ा होता है.

पेज और पेज के एलिमेंट की पहचान, ऑब्जेक्ट आईडी से की जाती है.

पेज

Google Slides में इस तरह के पेज होते हैं:

मास्टर डिग्री स्लाइड मास्टर का इस्तेमाल करने वाली सभी स्लाइड में दिखने वाले डिफ़ॉल्ट टेक्स्ट स्टाइल, बैकग्राउंड, और पेज एलिमेंट तय करते हैं. सभी स्लाइड पर दिखने वाले पेज एलिमेंट, मास्टर में जोड़े जाने चाहिए. ज़्यादातर प्रज़ेंटेशन में एक मास्टर होता है, लेकिन कुछ प्रज़ेंटेशन में एक से ज़्यादा या कोई भी प्रज़ेंटेशन नहीं हो सकता.
लेआउट लेआउट, लेआउट का इस्तेमाल करके स्लाइड पर डिफ़ॉल्ट रूप से पेज के एलिमेंट को व्यवस्थित करने के तरीके के बारे में एक टेंप्लेट के तौर पर काम करते हैं. हर लेआउट एक मास्टर से जुड़ा होता है.
स्लाइड इन पेजों में वह कॉन्टेंट मौजूद होता है जिसे आपने ऑडियंस को प्रज़ेंट किया हुआ है. ज़्यादातर स्लाइड, मास्टर और लेआउट पर आधारित होती हैं. आपके पास यह तय करने का विकल्प होता है कि हर स्लाइड बनाते समय, कौनसा लेआउट इस्तेमाल किया जाए.
ज़रूरी जानकारी इन पेजों में प्रज़ेंटेशन के हैंडआउट का कॉन्टेंट होता है. इसमें वह आकार भी शामिल होता है जिसमें स्लाइड के प्रज़ेंटर के नोट शामिल होते हैं. हर स्लाइड में एक संबंधित नोट पेज होता है. Slides API की मदद से, प्रज़ेंटर के नोट के आकार के टेक्स्ट में ही बदलाव किया जा सकता है.
नोट मास्टर नोट मास्टर सभी नोट पेजों के लिए डिफ़ॉल्ट टेक्स्ट स्टाइल और पेज एलिमेंट तय करते हैं. Slides API में नोट मास्टर सिर्फ़ पढ़ने के लिए होते हैं.

पेज एलिमेंट

पेज एलिमेंट, वे विज़ुअल कॉम्पोनेंट होते हैं जो पेजों पर डाले जाते हैं. यह एपीआई कई तरह के पेज एलिमेंट दिखाता है:

ग्रुप पेज के एलिमेंट का सेट, जिसे एक अलग यूनिट माना जाता है. इन्हें एक साथ एक जगह से दूसरी जगह ले जाया जा सकता है, स्केल किया जा सकता है, और घुमाया जा सकता है.
आकार सामान्य विज़ुअल ऑब्जेक्ट, जैसे कि रेक्टैंगल, एलिप्सिस, और टेक्स्ट बॉक्स. आकार में टेक्स्ट हो सकता है. इसलिए, स्लाइड बनाने के लिए पेज के ये सबसे सामान्य एलिमेंट होते हैं.
इमेज Slides में इंपोर्ट किया गया ग्राफ़िक.
वीडियो वीडियो को Slides में इंपोर्ट किया गया.
लाइन कोई विज़ुअल लाइन, कर्व या कनेक्टर.
टेबल कॉन्टेंट की ग्रिड.
WordArt एक विज़ुअल टेक्स्ट एलिमेंट, जो आकार की तरह ज़्यादा काम करता है.
SheetsChart Google Sheets से Slides में इंपोर्ट किया गया चार्ट.

बैच अपडेट

batchUpdate तरीके से, प्रज़ेंटेशन के कई पहलू अपडेट किए जा सकते हैं. बदलावों को बैच में एक साथ रखा जाता है, ताकि अगर एक अनुरोध पूरा न हो, तो दूसरा कोई भी (संभावित रूप से निर्भर) बदलाव न लिखा जाए.

batchUpdate तरीका एक या उससे ज़्यादा अनुरोध ऑब्जेक्ट को लेकर काम करता है. इनमें से हर एक ऑब्जेक्ट, परफ़ॉर्म करने के लिए एक तरह के अनुरोध के बारे में बताता है. अनुरोध कई तरह के होते हैं. यहां अलग-अलग कैटगरी में बांटे गए अनुरोधों के टाइप की जानकारी दी गई है.

Slides के साथ काम करना: CreateSlideRequest
UpdateSlidesPositionRequest
DuplicateObjectRequest
UpdatePagePropertiesRequest
DeleteObjectRequest
पेज एलिमेंट के साथ काम करना: CreateShapeRequest
CreateLineRequest
UpdatePageElementTransformRequest
UpdateShapePropertiesRequest
DuplicateObjectRequest
DeleteObjectRequest
टेबल के साथ काम करना: CreateTableRequest
InsertTableRowsRequest
InsertTableColumnsRequest
DeleteTableRowRequest
DeleteTableColumnRequest
UpdateTableRowPropertiesRequest
UpdateTableColumnPropertiesRequest
UpdateTableBorderPropertiesRequest
UpdateTableCellPropertiesRequest
MergeTableCellsRequest
UnmergeTableCellsRequest
DeleteObjectRequest
चार्ट के साथ काम करना: CreateSheetsChartRequest
RefreshSheetsChartRequest
ReplaceAllShapesWithSheetsChartRequest
DeleteObjectRequest
इमेज और वीडियो का इस्तेमाल करना: CreateImageRequest
CreateVideoRequest
UpdateImagePropertiesRequest
UpdateVideoPropertiesRequest
ReplaceAllShapesWithImageRequest
DuplicateObjectRequest
DeleteObjectRequest
टेक्स्ट की मदद से काम करना: InsertTextRequest
DeleteTextRequest
ReplaceAllTextRequest
CreateParagraphBulletsRequest
DeleteParagraphBulletsRequest
UpdateTextStyleRequest
UpdateParagraphStyleRequest

batchUpdate तरीका रिस्पॉन्स का मुख्य हिस्सा दिखाता है, जिसमें हर अनुरोध के लिए रिस्पॉन्स शामिल होता है. हर जवाब उसी इंडेक्स का इस्तेमाल करता है, जिसका इस्तेमाल संबंधित अनुरोध करता है. जिन अनुरोधों के लिए कोई जवाब लागू नहीं होता है, उनके लिए जवाब खाली होगा. आम तौर पर, कई Create अनुरोधों में जवाब होते हैं, ताकि आपको जोड़े गए नए ऑब्जेक्ट का आईडी पता चल सके.

ऑब्जेक्ट आईडी के साथ काम करना

Slides API में प्रज़ेंटेशन में पेज और पेज एलिमेंट होते हैं. इन ऑब्जेक्ट में एक ऑब्जेक्ट आईडी स्ट्रिंग शामिल होती है, जो किसी प्रज़ेंटेशन में खास होती है.

ऑब्जेक्ट आईडी बनाने के दौरान उनकी जानकारी देना

batchUpdate तरीके का इस्तेमाल करके पेज या पेज एलिमेंट बनाते समय, आपके पास नए ऑब्जेक्ट के लिए एक ऑब्जेक्ट आईडी तय करने का विकल्प होता है. इससे आपको एक ऑब्जेक्ट बनाने और उसी बैच अपडेट करने के अनुरोध में, उसमें बदलाव करने में मदद मिलती है. इससे Slides API में कॉल की संख्या कम होती है और कोटा के इस्तेमाल को कम किया जाता है.

हमारा सुझाव है कि ज़्यादातर मामलों में, आप रैंडम ऑब्जेक्ट आईडी जनरेट करें. उदाहरण के लिए, अगर Java का इस्तेमाल किया जा रहा है, तो java.util.UUID.randomUUID().toString() ठीक से काम करेगा.

जब आपका ऐप्लिकेशन ज़्यादा समय तक ऑब्जेक्ट पर नज़र रखना चाहता हो, तो ऑब्जेक्ट आईडी पर भरोसा न करें, क्योंकि यह बदल सकता है. ज़्यादा जानकारी के लिए, यह सेक्शन देखें.

ऑब्जेक्ट आईडी का इस्तेमाल किए बिना ऑब्जेक्ट पर नज़र रखना

Slides API का अनुरोध करने पर, ऑब्जेक्ट आईडी को आम तौर पर सुरक्षित रखा जाता है. (किसी भी अपवाद के बारे में, तरीके के रेफ़रंस दस्तावेज़ में बताया गया है.) Drive API की मदद से पूरे प्रज़ेंटेशन की कॉपी बनाने से, ऑब्जेक्ट आईडी भी सुरक्षित रहते हैं.

हालांकि, Slides के यूज़र इंटरफ़ेस (यूआई) में प्रज़ेंटेशन बदलने के बाद, ऑब्जेक्ट आईडी में बदलाव पर निर्भर नहीं रह सकता. उदाहरण के लिए, अगर किसी पेज एलिमेंट को कॉपी करके चिपकाने के लिए, कोई व्यक्ति Slides यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करता है और मूल एलिमेंट को मिटा देता है, तो पेज एलिमेंट के लिए अब एक नया यूनीक आईडी होगा. साथ ही, एपीआई के ज़रिए पहले दिया गया आईडी मिट जाएगा. इस वजह से, हम यह सुझाव नहीं देते हैं कि आप ऑब्जेक्ट आईडी को अपने ऐप्लिकेशन के स्टोरेज में सेव करें. इसके बजाय, आपको प्रज़ेंटेशन में ऑब्जेक्ट को उसकी टेक्स्ट सामग्री या वैकल्पिक लेख के ज़रिए खोजना चाहिए.

आम तौर पर, नए बनाए गए प्रज़ेंटेशन में डिफ़ॉल्ट स्लाइड, मास्टर, और टेक्स्ट बॉक्स के लिए एक जैसे आईडी का इस्तेमाल होता है. ये आईडी समय-समय पर बदल सकते हैं, इसलिए हम यह सुझाव नहीं देते कि आप इस सुविधा पर भरोसा करें. इसके बजाय, उन एलिमेंट को खोजें जिनमें आपको बदलाव करना है. इसके लिए, ऐसे प्रज़ेंटेशन ऑब्जेक्ट का इस्तेमाल करें जो create() या get() को मिले कॉल से मिले व्यू का इस्तेमाल करता है.