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

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

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

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

כדי ליצור רשימה, משתמשים 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).setTabId(TAB_ID))));

requests.add(new Request().setCreateParagraphBullets(
        new CreateParagraphBulletsRequest()
                .setRange(new Range()
                        .setStartIndex(1)
                        .setEndIndex(50)
                        .setTabId(TAB_ID))
                .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,
                'tabId': TAB_ID
            },
            'text': 'Item One\n',
        }}, {
        'createParagraphBullets': {
            'range': {
                'startIndex': 1,
                'endIndex':  50,
                'tabId': TAB_ID
            },
            'bulletPreset': 'BULLET_ARROW_DIAMOND_DISC',
        }
    }
]

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

ממירים פסקה לרשימה.
איור 1. ממירים פסקה לרשימה.

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

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

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

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

Java

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

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

Python

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

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