עבודה עם רשימות

ב-Google Docs API יש תמיכה בהמרת פסקאות פשוטות לרשימות עם תבליטים והסרת תבליטים מפסקאות.

המרת פסקה לרשימה

פעולה נפוצה של עיצוב פסקה היא המרה של פסקאות לרשימת תבליטים.

כדי ליצור רשימה, משתמשים ב-method documents.batchUpdate ומספקים CreateParagraphBulletsRequest. כוללים Range כדי לציין את התאים המושפעים ואת BulletGlyphPreset כדי להגדיר את תבנית התבליט.

כל הפסקאות שחופפות לטווח הנתון מסומנות עם תבליטים. אם הטווח שצוין חופף לטבלה, התבליטים מוחלים בתוך התאים בטבלה. רמת הסידור הפנימי של כל פסקה נקבעת על ידי ספירת כרטיסיות מובילות לפני כל פסקה.

אי אפשר לשנות את רמת הסידור הפנימי של תבליט קיים. במקום זאת, צריך למחוק את התבליט, להגדיר את הכרטיסיות הראשיות לפני הפסקה וליצור את התבליט מחדש. למידע נוסף, ראו הסרת תבליטים מרשימה.

אפשר גם להשתמש ב-CreateParagraphBulletsRequest כדי לשנות את סגנון התבליטים ברשימה קיימת.

דוגמת הקוד הבאה מציגה בקשה באצווה שמוסיפה טקסט תחילה בתחילת המסמך, ולאחר מכן יוצרת רשימה מהפסקאות שמשתרעות על 50 התווים הראשונים. ב-BulletGlyphPreset נעשה שימוש בערך BULLET_ARROW_DIAMOND_DISC. כלומר, שלוש רמות הסידור הפנימי של רשימת התבליטים מיוצגות באמצעות חץ, יהלום ודיסק.

Java

      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();

Python

    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. המרת פסקה לרשימה.

הסרת תבליטים מרשימה

כדי להסיר תבליטים מרשימת פסקאות, משתמשים ב-method documents.batchUpdate ומספקים DeleteParagraphBulletsRequest. מוסיפים Range כדי לציין את התאים שהושפעו.

השיטה מוחקת את כל התבליטים שחופפים לטווח הנתון, ללא קשר לרמת הסידור. כדי לשמר באופן חזותי את רמת הסידור הפנימי, כניסת הפיסקה מתווספת בתחילת כל פסקה תואמת.

דוגמת הקוד הבאה מציגה בקשה באצווה למחיקת תבליטים מרשימת פסקאות.

Java

      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();

Python

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

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