Google Slides API به شما امکان می دهد عناصر را در صفحات ارائه اضافه و تغییر دهید. مثالهای موجود در این صفحه نحوه انجام عملیات خواندن رایج با استفاده از روش presentations.batchUpdate
را نشان میدهند.
این نمونه ها از متغیرهای زیر استفاده می کنند:
- PRESENTATION_ID — محل ارائه شناسه ارائه را نشان می دهد. می توانید مقدار این شناسه را از نشانی اینترنتی ارائه کشف کنید.
- PAGE_ID — محل ارائه شناسه شی صفحه را نشان می دهد. می توانید مقدار این مورد را از URL یا با استفاده از درخواست خواندن API بازیابی کنید.
- PAGE_ELEMENT_ID — نشان می دهد که در آن شناسه شی عنصر صفحه را ارائه می کنید. میتوانید این شناسه را برای عناصری که ایجاد میکنید (با برخی محدودیتها ) مشخص کنید یا به Slides API اجازه دهید بهطور خودکار یکی را ایجاد کند. شناسه های عنصر را می توان از طریق درخواست خواندن API بازیابی کرد.
این نمونه ها به عنوان درخواست های HTTP برای خنثی بودن زبان ارائه می شوند. برای یادگیری نحوه اجرای یک بهروزرسانی دستهای به زبانهای مختلف با استفاده از کتابخانههای سرویس گیرنده Google API، به افزودن اشکال و متن مراجعه کنید.
یک کادر متنی به اسلاید اضافه کنید
نمونه کد presentations.batchUpdate
زیر نحوه استفاده از روش CreateShapeRequest
را برای افزودن یک جعبه متن جدید (شامل رشته "My Added Text Box") به اسلاید مشخص شده توسط PAGE_ID نشان می دهد. دو درخواست در بدنه درخواست مشخص شده است - یکی برای ایجاد شکل جعبه متن (با اندازه و مکان معین) و دیگری برای درج متن در آن.
اولین درخواست شناسه شی مورد استفاده برای جعبه متن را مشخص می کند . این به درخواست دوم اجازه میدهد از آن در همان تماس API استفاده کند و هزینههای اضافی را کاهش دهد.
در زیر پروتکل درخواست برای افزودن کادر متنی به اسلاید آمده است:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "createShape": { "objectId": PAGE_ELEMENT_ID, "shapeType": "TEXT_BOX", "elementProperties": { "pageObjectId": PAGE_ID, "size": { "width": { "magnitude": 150, "unit": "PT" }, "height": { "magnitude": 50, "unit": "PT" } }, "transform": { "scaleX": 1, "scaleY": 1, "translateX": 200, "translateY": 100, "unit": "PT" } } } }, { "insertText": { "objectId": PAGE_ELEMENT_ID, "text": "My Added Text Box", "insertionIndex": 0 } } ] }
یک تصویر به اسلاید اضافه کنید
نمونه کد presentations.batchUpdate
زیر نحوه استفاده از روش CreateImageRequest
را برای افزودن یک تصویر به اسلاید مشخص شده توسط PAGE_ID نشان می دهد. API تصویر را با استفاده از IMAGE_URL بازیابی می کند. این درخواست همچنین تصویر را در اسلاید مقیاس و موقعیت می دهد.
در زیر پروتکل درخواست برای افزودن تصویر به اسلاید آمده است:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "createImage": { "url": IMAGE_URL, "elementProperties": { "pageObjectId": PAGE_ID, "size": { "width": { "magnitude": 30, "unit": "PT" }, "height": { "magnitude": 30, "unit": "PT" } }, "transform": { "scaleX": 1, "scaleY": 1, "translateX": 200, "translateY": 100, "unit": "PT" } } } } ] }
حذف یک صفحه یا عنصر صفحه
نمونه کد presentations.batchUpdate
زیر نحوه استفاده از روش DeleteObjectRequest
را برای حذف عنصر صفحه مشخص شده توسط PAGE_ELEMENT_ID و اسلاید مشخص شده توسط PAGE_ID با استفاده از دو درخواست جداگانه نشان می دهد.
در زیر پروتکل درخواست حذف یک صفحه یا عنصر صفحه است:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "deleteObject": { "objectId": PAGE_ELEMENT_ID }, "deleteObject": { "objectId": PAGE_ID } } ] }
متن را در یک شکل مشخص ویرایش کنید
نمونه کد presentations.batchUpdate
زیر نحوه استفاده از روش DeleteTextRequest
را برای جایگزینی بخشی از متن موجود در شکل مشخص شده توسط PAGE_ELEMENT_ID نشان می دهد. برای انجام این کار، ابتدا متن را با استفاده از startIndex
مبتنی بر صفر حذف کنید و سپس متن جدید را در آن موقعیت قرار دهید. در این مثال، رشته متن اصلی "My Shape Text: ????" با "My Shape Text: Trapezoid" جایگزین شده است.
این درخواست فقط بر روی متن در یک شکل مشخص تأثیر می گذارد. برای جایگزینی متن در همه جای یک ارائه، از روش ReplaceAllTextRequest
استفاده کنید.
در زیر پروتکل درخواست ویرایش متن در یک شکل مشخص آمده است:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "deleteText": { "objectId": PAGE_ELEMENT_ID, "textRange": { "type": "FROM_START_INDEX", "startIndex": 15 } } }, { "insertText": { "objectId": PAGE_ELEMENT_ID, "text": "Trapezoid", "insertionIndex": 15 } } ] }
یک تگ شکل را با یک تصویر جایگزین کنید
برچسب ها جعبه های متنی یا شکل هایی با نام رشته ای منحصر به فرد، مانند "account-holder-name" هستند.
نمونه کد presentations.batchUpdate
زیر نحوه استفاده از روش CreateImageRequest
را برای جایگزینی یک نمونه از یک تگ شکل با یک تصویر، حفظ موقعیت یکسان و مقیاس بندی آن برای تناسب با اندازه برچسب و در عین حال حفظ نسبت ابعاد تصویر، نشان می دهد.
این درخواست همچنین می تواند برای جایگزینی یک تصویر با تصویر دیگر استفاده شود. درخواست شامل اضافه کردن تصویر جدید و سپس حذف برچسب است.
متد CreateImageRequest
فقط یک شکل مشخص را جایگزین می کند. برای جایگزینی شکل های برچسب در همه جای یک ارائه، از روش ReplaceAllShapesWithImageRequest
استفاده کنید.
تگ shape دارای ویژگی های PageElement
زیر است (که می توان با استفاده از یک درخواست presentations.pages.get
یافت):
{ "objectId": PAGE_ELEMENT_ID, "size": { "width": { "magnitude": 3000000, "unit": "EMU" }, "height": { "magnitude": 3000000, "unit": "EMU" } }, "transform": { "scaleX": 1.13, "scaleY": 0.62, "translateX": 4800000, "translateY": 450000, "unit": "EMU" }, "shape": { "shapeType": "RECTANGLE" } }
شکل در اسلاید مشخص شده توسط PAGE_ID قرار دارد. برای تعیین تصویری که جایگزین شکل می شود، API تصویر را با استفاده از IMAGE_URL بازیابی می کند. برای حفظ نسبت تصویر و در عین حال محدود کردن آن به اندازه تگ، روش CreateImageRequest
هم اندازه تصویر را بر روی حاصلضرب اندازه و مقیاس برچسب و هم فاکتورهای مقیاس تصویر را بر روی 1
تنظیم می کند. برای اطلاعات بیشتر، نگاه کنید به حفظ نسبت تصویر .
در زیر پروتکل درخواست جایگزینی یک تگ شکل با یک تصویر است:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "createImage": { "url": IMAGE_URL, "elementProperties": { "pageObjectId": PAGE_ID, "size": { "width": { "magnitude": 3000000 * 1.13, "unit": "EMU" }, "height": { "magnitude": 3000000 * 0.62, "unit": "EMU" } }, "transform": { "scaleX": 1, "scaleY": 1, "translateX": 4800000, "translateY": 450000, "unit": "PT" } } } }, { "deleteObject": { "objectId": PAGE_ELEMENT_ID } } ] }