با لیست ها کار کنید، با لیست ها کار کنید

Google Docs API از تبدیل پاراگراف های ساده به لیست های گلوله ای و حذف گلوله ها از پاراگراف ها پشتیبانی می کند.

تبدیل یک پاراگراف به لیست

یک عملیات رایج قالب‌بندی پاراگراف، تبدیل پاراگراف‌ها به فهرست گلوله‌ای است.

برای ایجاد یک لیست، از روش documents.batchUpdate استفاده کنید و یک CreateParagraphBulletsRequest ارائه دهید. شامل یک Range برای تعیین سلول های آسیب دیده و یک BulletGlyphPreset برای تنظیم الگوی گلوله.

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

نمی‌توانید سطح تودرتوی یک گلوله موجود را تنظیم کنید. در عوض، باید گلوله را حذف کنید، تب های پیشرو را در مقابل پاراگراف قرار دهید و سپس دوباره گلوله را ایجاد کنید. برای اطلاعات بیشتر، به حذف گلوله‌ها از فهرست مراجعه کنید.

همچنین می توانید از CreateParagraphBulletsRequest برای تغییر سبک گلوله برای لیست موجود استفاده کنید.

نمونه کد زیر یک درخواست دسته‌ای را نشان می‌دهد که ابتدا متنی را در ابتدای سند وارد می‌کند و سپس فهرستی از پاراگراف‌هایی ایجاد می‌کند که شامل 50 کاراکتر اول است. BulletGlyphPreset از BULLET_ARROW_DIAMOND_DISC استفاده می کند که به این معنی است که سه سطح تودرتوی اول لیست گلوله ای با یک فلش، یک الماس و یک دیسک نشان داده می شوند.

جاوا

      List<Request> requests = new ArrayList<>();
      requests.add(new Request().setInsertText(new InsertTextRequest()
              .setText("Item One\n")
              .setLocation(new Location().setIndex(1))));

      requests.add(new Request().setCreateParagraphBullets(
              new CreateParagraphBulletsRequest()
                      .setRange(new Range()
                              .setStartIndex(1)
                              .setEndIndex(50))
                      .setBulletPreset("BULLET_ARROW_DIAMOND_DISC")));

      BatchUpdateDocumentRequest body = new BatchUpdateDocumentRequest().setRequests(requests);
      BatchUpdateDocumentResponse response = docsService.documents()
              .batchUpdate(DOCUMENT_ID, body).execute();

پایتون

    requests = [
         {
            'insertText': {
                'location': {
                    'index': 1
                },
                'text': 'Item One\n',
            }}, {
            'createParagraphBullets': {
                'range': {
                    'startIndex': 1,
                    'endIndex':  50
                },
                'bulletPreset': 'BULLET_ARROW_DIAMOND_DISC',
            }
        }
    ]

    result = service.documents().batchUpdate(
        documentId=DOCUMENT_ID, body={'requests': requests}).execute()

تبدیل یک پاراگراف به لیست
شکل 1. یک پاراگراف را به لیست تبدیل کنید.

گلوله ها را از لیست حذف کنید

برای حذف گلوله‌ها از فهرست پاراگراف، از روش documents.batchUpdate استفاده کنید و یک DeleteParagraphBulletsRequest ارائه دهید. یک Range برای مشخص کردن سلول‌های آسیب‌دیده اضافه کنید.

این روش تمام گلوله هایی را که با محدوده داده شده همپوشانی دارند، صرف نظر از سطح تودرتو، حذف می کند. برای حفظ بصری سطح تودرتو، تورفتگی به ابتدای هر پاراگراف مربوطه اضافه می شود.

نمونه کد زیر یک درخواست دسته ای را نشان می دهد که گلوله ها را از لیست پاراگراف حذف می کند.

جاوا

      List<Request> requests = new ArrayList<>();
      requests.add(new Request().setDeleteParagraphBullets(
              new DeleteParagraphBulletsRequest()
                      .setRange(new Range()
                              .setStartIndex(1)
                              .setEndIndex(50))));

      BatchUpdateDocumentRequest body = new BatchUpdateDocumentRequest().setRequests(requests);
      BatchUpdateDocumentResponse response = docsService.documents()
              .batchUpdate(DOCUMENT_ID, body).execute();

پایتون

    requests = [
         {
            'deleteParagraphBullets': {
                'range': {
                    'startIndex': 1,
                    'endIndex':  50
                },
            }
        }
    ]

    result = service.documents().batchUpdate(
        documentId=DOCUMENT_ID, body={'requests': requests}).execute()