عملیات اسلاید

رابط برنامه‌نویسی کاربردی (API) اسلایدهای گوگل به شما امکان می‌دهد اسلایدها را ایجاد، جابجا و حذف کنید. مثال‌های این صفحه برخی از عملیات رایج روی اسلایدها را با استفاده از متد presentations.batchUpdate نشان می‌دهند.

این مثال‌ها از متغیرهای زیر استفاده می‌کنند:

  • PRESENTATION_ID — نشان می‌دهد که شناسه ارائه را کجا ارائه می‌دهید. می‌توانید مقدار این شناسه را از URL ارائه پیدا کنید.
  • PAGE_ID و PAGE_ID2 — نشان می‌دهد که شناسه‌های شیء صفحه را کجا ارائه می‌دهید. می‌توانید مقدار این شناسه‌ها را از URL یا با استفاده از درخواست خواندن API بازیابی کنید.

این مثال‌ها به عنوان درخواست‌های HTTP ارائه شده‌اند تا از نظر زبانی بی‌طرف باشند. برای یادگیری نحوه پیاده‌سازی به‌روزرسانی دسته‌ای در زبان‌های مختلف با استفاده از کتابخانه‌های کلاینت Google API، به راهنماهای زیر مراجعه کنید: ایجاد اسلاید و افزودن شکل‌ها و متن .

کپی کردن یک اسلاید

نمونه کد presentations.batchUpdate زیر نحوه استفاده از متد DuplicateObjectRequest را برای کپی کردن یک اسلاید و درج آن بعد از اسلاید اصلی در ارائه نشان می‌دهد. اسلاید اصلی توسط PAGE_ID مشخص شده است.

این درخواست به شما امکان می‌دهد مشخص کنید که آیا برخی یا همه شناسه‌های عناصر صفحه باید در کپی باشند (با برخی محدودیت‌ها ). در این مثال، اسلاید اصلی شامل یک عنصر جدول (مشخص شده توسط TABLE_ELEMENT_ID ) است که به یک جدول جدید (مشخص شده توسط COPY_TABLE_ELEMENT_ID ) در کپی اسلاید (مشخص شده توسط COPY_PAGE_ID ) نگاشت شده است. به تمام عناصر دیگر در کپی، شناسه‌های تصادفی داده می‌شود.

برای اطلاعات بیشتر در مورد کپی کردن یک PageElement ، شامل کادرهای متنی، تصاویر، جداول، اشکال پایه، خطوط و ویدیوهای جاسازی شده، به نمونه کپی و ویرایش یک عنصر مراجعه کنید.

پروتکل درخواست کپی کردن یک اسلاید به شرح زیر است:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "duplicateObject": {
        "objectId": PAGE_ID,
        "objectIds": {
          "PAGE_ID": "COPY_PAGE_ID",
          "TABLE_ELEMENT_ID": "COPY_TABLE_ELEMENT_ID"
        }
      }
    }
  ]
}

ایجاد اسلاید

نمونه کد presentations.batchUpdate زیر نحوه استفاده از متد CreateSlideRequest را برای ایجاد یک اسلاید و درج آن به عنوان اسلاید چهارم (با استفاده از insertionIndex مبتنی بر صفر) در ارائه نشان می‌دهد.

اسلاید جدید طوری تنظیم شده است که از PredefinedLayout مربوط به TITLE_AND_TWO_COLUMNS استفاده کند. می‌توانید یک رشته (با برخی محدودیت‌ها ) را به عنوان PAGE_ID اسلاید مشخص کنید، یا با حذف فیلد در درخواست، به API اجازه دهید PAGE_ID تولید کند.

پروتکل درخواست برای ایجاد اسلاید به شرح زیر است:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "createSlide": {
        "objectId": "PAGE_ID",
        "insertionIndex": 3,
        "slideLayoutReference": {
          "predefinedLayout": "TITLE_AND_TWO_COLUMNS"
        }
      }
    }
  ]
}

یک اسلاید ایجاد کنید و متغیرهایی را تغییر دهید

نمونه کد presentations.batchUpdate زیر نحوه استفاده از متد CreateSlideRequest را برای ایجاد یک اسلاید با استفاده از PredefinedLayout مربوط به TITLE_AND_TWO_COLUMNS نشان می‌دهد.

می‌توانید یک رشته را به عنوان PAGE_ID برای اسلاید (با برخی محدودیت‌ها ) مشخص کنید. placeholderIdMappings از Type TITLE استفاده می‌کند. TITLE_ID به شکل placeholder اسلاید اشاره می‌کند تا بتوان آن را تغییر داد.

پروتکل درخواست برای ایجاد اسلاید و تغییر متغیرهای نگهدارنده (placeholders) به صورت زیر است:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "createSlide": {
        "objectId": PAGE_ID,
        "slideLayoutReference": {
          "predefinedLayout": "TITLE_AND_TWO_COLUMNS"
        },
        "placeholderIdMappings": [
          {
            "layoutPlaceholder": {
              "type": "TITLE",
              "index": 0
            },
            "objectId": TITLE_ID,
           },
        ],
      }
    },
    {
      "insertText": {
        "objectId": TITLE_ID,
        "text": "This is my slide title",
      }
    },
  ]
}

انتقال اسلایدها به موقعیت جدید

نمونه کد presentations.batchUpdate زیر نحوه استفاده از متد UpdateSlidesPositionRequest را برای گرفتن دو اسلاید مشخص شده و انتقال آنها به ابتدای ارائه، با حفظ ترتیب نسبی آنها، نشان می‌دهد.

شناسه‌های اسلاید مشخص‌شده ( PAGE_ID و PAGE_ID2 ) باید به ترتیب ارائه موجود و بدون موارد تکراری ارائه شوند. insertionIndex مبتنی بر صفر، محل قرارگیری اسلایدها را بر اساس ترتیب قبل از انجام جابجایی نشان می‌دهد. مقدار آن باید بین صفر و تعداد اسلایدهای موجود در ارائه، شامل موارد زیر، باشد.

پروتکل درخواست برای انتقال اسلایدها به موقعیت جدید به شرح زیر است:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "updateSlidesPosition": {
        "slideObjectIds": [
          PAGE_ID,
          PAGE_ID2
          ],
        "insertionIndex": 0
      }
    }
  ]
}

تنظیم تصویر پس زمینه اسلاید

نمونه کد presentations.batchUpdate زیر نحوه استفاده از متد UpdatePagePropertiesRequest را برای تنظیم تصویر پس‌زمینه اسلاید مشخص شده توسط PAGE_ID نشان می‌دهد. API تصویر را با استفاده از IMAGE_URL بازیابی می‌کند.

از ماسک فیلد برای مشخص کردن این که فقط پس‌زمینه اسلاید باید تغییر کند تا سایر ویژگی‌ها حفظ شوند، استفاده می‌شود. استفاده از ماسک‌های فیلد همچنین عملکرد را بهبود می‌بخشد.

به عنوان یک روش جایگزین، می‌توان از متد UpdatePagePropertiesRequest برای تنظیم پس‌زمینه یک اسلاید به یک رنگ ثابت استفاده کرد.

پروتکل درخواست برای تنظیم تصویر پس زمینه اسلاید به صورت زیر است:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "updatePageProperties": {
        "objectId": PAGE_ID,
        "pageProperties": {
          "pageBackgroundFill": {
            "stretchedPictureFill": {
              "contentUrl": IMAGE_URL
            }
          }
        },
        "fields": "pageBackgroundFill"
      }
    }
  ]
}

ایجاد تصویر بندانگشتی

شما می‌توانید با فراخوانی متد presentations.pages.getThumbnail ، یک تصویر بندانگشتی از آخرین نسخه یک صفحه خاص در ارائه ایجاد کنید، که یک تصویر بندانگشتی از صفحه را به عنوان URL محتوا برمی‌گرداند. URL تصویر دارای طول عمر پیش‌فرض 30 دقیقه است.

همچنین می‌توانید mimeType و thumbnailSize برگردانده شده را با استفاده از فیلد ThumbnailProperties به عنوان پارامتر پرس و جو مشخص کنید.

پروتکل درخواست برای تولید تصویر بندانگشتی صفحه با تنظیم ThumbnailProperties به صورت زیر است:

 GET https://slides.googleapis.com/v1/presentations/PRESENTATION_ID/pages/PAGE_ID/thumbnail?thumbnailProperties.mimeType=PNG&thumbnailProperties.thumbnailSize=MEDIUM
{
  "width": 800,
  "height": 450,
  "contentUrl": "CONTENT_URL"
}