ใช้งานรายการ

Google เอกสาร API รองรับการแปลงย่อหน้าธรรมดาเป็นรายการหัวข้อย่อย และนำหัวข้อย่อยออกจากย่อหน้า

แปลงย่อหน้าเป็นรายการ

การดำเนินการจัดรูปแบบย่อหน้าทั่วไปคือการแปลงย่อหน้าเป็นลิสต์หัวข้อ

หากต้องการสร้างรายการ ให้ใช้วิธี documents.batchUpdate แล้วระบุ CreateParagraphBulletsRequest ใส่ Range เพื่อระบุเซลล์ที่ได้รับผลกระทบและ BulletGlyphPreset เพื่อกำหนดรูปแบบสำหรับหัวข้อย่อย

ระบบจะใส่หัวข้อย่อยให้กับย่อหน้าทั้งหมดที่ทับซ้อนกับช่วงที่กำหนด หากช่วงที่ระบุซ้อนทับกับตาราง ระบบจะใช้หัวข้อภายในเซลล์ตาราง ระดับการฝังของย่อหน้าแต่ละย่อหน้าจะกำหนดโดยการนับแท็บนำหน้าของแต่ละย่อหน้า

คุณปรับระดับการฝังของหัวข้อที่มีอยู่ไม่ได้ แต่คุณต้องลบหัวข้อย่อย ตั้งค่าแท็บนำหน้าย่อหน้า แล้วสร้างหัวข้อย่อยอีกครั้ง ดูข้อมูลเพิ่มเติมได้ที่นำหัวข้อย่อยออกจากรายการ

คุณยังใช้ CreateParagraphBulletsRequest เพื่อเปลี่ยนรูปแบบหัวข้อย่อยสำหรับรายการที่มีอยู่ได้ด้วย

ตัวอย่างโค้ดต่อไปนี้แสดงคําขอแบบเป็นกลุ่มที่แทรกข้อความที่จุดเริ่มต้นของเอกสารก่อน จากนั้นจึงสร้างรายการจากย่อหน้าที่มีอักขระ 50 ตัวแรก BulletGlyphPreset ใช้ BULLET_ARROW_DIAMOND_DISC ซึ่งหมายความว่าระดับการฝัง 3 ระดับแรกของรายการหัวข้อจะแสดงด้วยลูกศร เพชร และแผ่นดิสก์

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