Bạn có thể sử dụng mẫu API Google Tài liệu sau đây để kết xuất nội dung của một tài liệu dưới dạng JSON được định dạng.
Tệp kết xuất có thể giúp bạn hiểu rõ cấu trúc của các tệp Google Tài liệu nói chung hoặc giúp bạn khắc phục các vấn đề liên quan đến cấu trúc và nội dung của một tài liệu cụ thể.
Mã nguồn
Java
import com.google.api.client.auth.oauth2.Credential; import com.google.api.client.extensions.java6.auth.oauth2.AuthorizationCodeInstalledApp; import com.google.api.client.extensions.jetty.auth.oauth2.LocalServerReceiver; import com.google.api.client.googleapis.auth.oauth2.GoogleAuthorizationCodeFlow; import com.google.api.client.googleapis.auth.oauth2.GoogleClientSecrets; import com.google.api.client.googleapis.javanet.GoogleNetHttpTransport; import com.google.api.client.http.javanet.NetHttpTransport; import com.google.api.client.json.JsonFactory; import com.google.api.client.json.jackson2.JacksonFactory; import com.google.api.client.util.store.FileDataStoreFactory; import com.google.api.services.docs.v1.Docs; import com.google.api.services.docs.v1.DocsScopes; import com.google.api.services.docs.v1.model.Document; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.security.GeneralSecurityException; import java.util.Collections; import java.util.List; public class OutputJSON { private static final String APPLICATION_NAME = "Google Docs API Document Contents"; private static final JsonFactory JSON_FACTORY = JacksonFactory.getDefaultInstance(); private static final String TOKENS_DIRECTORY_PATH = "tokens"; private static final String DOCUMENT_ID = "YOUR_DOCUMENT_ID"; /** * Global instance of the scopes required by this sample. If modifying these scopes, delete * your previously saved tokens/ folder. */ private static final List<String> SCOPES = Collections.singletonList(DocsScopes.DOCUMENTS_READONLY); private static final String CREDENTIALS_FILE_PATH = "/credentials.json"; /** * Creates an authorized Credential object. * * @param HTTP_TRANSPORT The network HTTP Transport. * @return An authorized Credential object. * @throws IOException If the credentials.json file cannot be found. */ private static Credential getCredentials(final NetHttpTransport HTTP_TRANSPORT) throws IOException { // Load client secrets. InputStream in = OutputJSON.class.getResourceAsStream(CREDENTIALS_FILE_PATH); GoogleClientSecrets credentials = GoogleClientSecrets.load(JSON_FACTORY, new InputStreamReader(in)); // Build flow and trigger user authorization request. GoogleAuthorizationCodeFlow flow = new GoogleAuthorizationCodeFlow.Builder(HTTP_TRANSPORT, JSON_FACTORY, credentials, SCOPES) .setDataStoreFactory(new FileDataStoreFactory(new java.io.File(TOKENS_DIRECTORY_PATH))) .setAccessType("offline") .build(); LocalServerReceiver receiver = new LocalServerReceiver.Builder().setPort(8888).build(); return new AuthorizationCodeInstalledApp(flow, receiver).authorize("user"); } public static void main(String... args) throws IOException, GeneralSecurityException { // Build a new authorized API client service. final NetHttpTransport HTTP_TRANSPORT = GoogleNetHttpTransport.newTrustedTransport(); Docs docsService = new Docs.Builder(HTTP_TRANSPORT, JSON_FACTORY, getCredentials(HTTP_TRANSPORT)) .setApplicationName(APPLICATION_NAME) .build(); Document response = docsService.documents().get(DOCUMENT_ID).setIncludeTabsContent(true).execute(); Gson gson = new GsonBuilder().setPrettyPrinting().create(); System.out.println(gson.toJson(response)); } }
JavaScript
<!DOCTYPE html> <html> <head> <title> Docs API Extract Body </title> <meta charset="utf-8"/> </head> <body> <p> Docs API Extract Body </p> <!--Add buttons to initiate auth sequence and sign out--> <button id="authorize-button" style="display: none;">Authorize</button> <button id="signout-button" style="display: none;">Sign Out</button> <pre id="content"></pre> <script type="text/javascript"> // Client ID and API key from the Developer Console var CLIENT_ID = '<YOUR_CLIENT_ID>' var API_KEY = '<YOUR_API_KEY>'; // Array of API discovery doc URLs for APIs used by the sample var DISCOVERY_DOCS = [ 'https://docs.googleapis.com/$discovery/rest?version=v1']; // Authorization scopes required by the API; multiple scopes can be // included, separated by spaces. var SCOPES = "https://www.googleapis.com/auth/documents.readonly"; var authorizeButton = document.getElementById('authorize-button'); var signoutButton = document.getElementById('signout-button'); /** * On load, called to load the auth2 library and API client library. */ function handleClientLoad() { gapi.load('client:auth2', initClient); } /** * Initializes the API client library and sets up sign-in state * listeners. */ function initClient() { gapi.client.init({ apiKey: API_KEY, clientId: CLIENT_ID, discoveryDocs: DISCOVERY_DOCS, scope: SCOPES }).then(function () { // Listen for sign-in state changes. gapi.auth2.getAuthInstance().isSignedIn.listen(updateSigninStatus); // Handle the initial sign-in state. updateSigninStatus(gapi.auth2.getAuthInstance().isSignedIn.get()); authorizeButton.onclick = handleAuthClick; signoutButton.onclick = handleSignoutClick; }); } /** * Called when the signed in status changes, to update the UI * appropriately. After a sign-in, the API is called. */ function updateSigninStatus(isSignedIn) { if (isSignedIn) { authorizeButton.style.display = 'none'; signoutButton.style.display = 'block'; printDocBody(); } else { authorizeButton.style.display = 'block'; signoutButton.style.display = 'none'; } } /** * Sign in the user upon button click. */ function handleAuthClick(event) { gapi.auth2.getAuthInstance().signIn(); } /** * Sign out the user upon button click. */ function handleSignoutClick(event) { gapi.auth2.getAuthInstance().signOut(); } /** * Append a pre element to the body containing the given message * as its text node. Used to display the results of the API call. * * @param {string} message Text to be placed in pre element. */ function appendPre(message) { var pre = document.getElementById('content'); var textContent = document.createTextNode(message + '\n'); pre.appendChild(textContent); } /** * Prints the JSON body of a document. */ function printDocBody() { gapi.client.docs.documents.get({ documentId: 'DOCUMENT_ID', includeTabsContent: true }).then(function(response) { var doc = response.result; appendPre(JSON.stringify(doc.body, null, 4)); },function(response) { appendPre('Error: ' + response.result.error.message); }); } </script> <script async="" defer="" onload="this.onload=function(){};handleClientLoad()" onreadystatechange="if (this.readyState === 'complete') this.onload()" src="https://apis.google.com/js/api.js"></script> </body> </html>
Python
Ví dụ về tệp kết xuất tài liệu
Phần này trình bày một tài liệu đơn giản và kết quả JSON tương đương bằng cách sử dụng mã ở trên. Tài liệu nguồn có dạng như sau:
Khi chạy mã trên với tài liệu này, bạn sẽ nhận được kết quả JSON tương tự như sau:
{
"title": "Test mule",
"revisionId": "np_INheZiecEMA",
"suggestionsViewMode": "SUGGESTIONS_INLINE",
"documentId": "18AI89WMd4eI6TFI4VrbmD_srVWJYH2avsXpC_amtLZs",
"tabs": [{
"tabProperties": {
"tabId": "t.0",
"title": "Tab 1",
"index": 0
},
"documentTab": {
"body": {
"content": [{
"endIndex": 1,
"sectionBreak": {
"sectionStyle": {
"columnSeparatorStyle": "NONE",
"contentDirection": "LEFT_TO_RIGHT",
"sectionType": "CONTINUOUS"
}
}
}, {
"startIndex": 1,
"endIndex": 75,
"paragraph": {
"elements": [{
"startIndex": 1,
"endIndex": 75,
"textRun": {
"content": "This is an ordinary paragraph. It is the first paragraph of the document.\n",
"textStyle": {
}
}
}],
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT"
}
}
}, {
"startIndex": 75,
"endIndex": 102,
"paragraph": {
"elements": [{
"startIndex": 75,
"endIndex": 102,
"textRun": {
"content": "Here\u0027s a level one heading\n",
"textStyle": {
}
}
}],
"paragraphStyle": {
"headingId": "h.tzrthsds4pvi",
"namedStyleType": "HEADING_1",
"direction": "LEFT_TO_RIGHT"
}
}
}, {
"startIndex": 102,
"endIndex": 219,
"paragraph": {
"elements": [{
"startIndex": 102,
"endIndex": 171,
"textRun": {
"content": "This is another paragraph. Formatting within this paragraph includes ",
"textStyle": {
}
}
}, {
"startIndex": 171,
"endIndex": 190,
"textRun": {
"content": "these words in bold",
"textStyle": {
"bold": true
}
}
}, {
"startIndex": 190,
"endIndex": 207,
"textRun": {
"content": " and these words ",
"textStyle": {
}
}
}, {
"startIndex": 207,
"endIndex": 217,
"textRun": {
"content": "in italics",
"textStyle": {
"italic": true
}
}
}, {
"startIndex": 217,
"endIndex": 219,
"textRun": {
"content": ".\n",
"textStyle": {
}
}
}],
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT"
}
}
}, {
"startIndex": 219,
"endIndex": 248,
"paragraph": {
"elements": [{
"startIndex": 219,
"endIndex": 248,
"textRun": {
"content": "This is a bulleted list item\n",
"textStyle": {
}
}
}],
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT",
"indentFirstLine": {
"magnitude": 18.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 36.0,
"unit": "PT"
}
},
"bullet": {
"listId": "kix.v1x94gs10mnc",
"textStyle": {
"underline": false
}
}
}
}, {
"startIndex": 248,
"endIndex": 308,
"paragraph": {
"elements": [{
"startIndex": 248,
"endIndex": 308,
"textRun": {
"content": "And this is another one, which has a numbered list under it\n",
"textStyle": {
}
}
}],
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT",
"indentFirstLine": {
"magnitude": 18.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 36.0,
"unit": "PT"
}
},
"bullet": {
"listId": "kix.v1x94gs10mnc",
"textStyle": {
"underline": false
}
}
}
}, {
"startIndex": 308,
"endIndex": 346,
"paragraph": {
"elements": [{
"startIndex": 308,
"endIndex": 346,
"textRun": {
"content": "This is the first numbered list item.\n",
"textStyle": {
}
}
}],
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT",
"indentFirstLine": {
"magnitude": 54.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 72.0,
"unit": "PT"
}
},
"bullet": {
"listId": "kix.2iaql7na7gwi",
"textStyle": {
"underline": false
}
}
}
}, {
"startIndex": 346,
"endIndex": 385,
"paragraph": {
"elements": [{
"startIndex": 346,
"endIndex": 385,
"textRun": {
"content": "This is the second numbered list item.\n",
"textStyle": {
}
}
}],
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT",
"indentFirstLine": {
"magnitude": 54.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 72.0,
"unit": "PT"
}
},
"bullet": {
"listId": "kix.2iaql7na7gwi",
"textStyle": {
"underline": false
}
}
}
}, {
"startIndex": 385,
"endIndex": 460,
"paragraph": {
"elements": [{
"startIndex": 385,
"endIndex": 433,
"textRun": {
"content": "This is the third numbered list item, which has ",
"textStyle": {
}
}
}, {
"startIndex": 433,
"endIndex": 450,
"textRun": {
"content": "these three words",
"textStyle": {
"bold": true
}
}
}, {
"startIndex": 450,
"endIndex": 460,
"textRun": {
"content": " in bold.\n",
"textStyle": {
}
}
}],
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT",
"indentFirstLine": {
"magnitude": 54.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 72.0,
"unit": "PT"
}
},
"bullet": {
"listId": "kix.2iaql7na7gwi",
"textStyle": {
"underline": false
}
}
}
}, {
"startIndex": 460,
"endIndex": 496,
"paragraph": {
"elements": [{
"startIndex": 460,
"endIndex": 496,
"textRun": {
"content": "And a final list item with a bullet\n",
"textStyle": {
}
}
}],
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT",
"indentFirstLine": {
"magnitude": 18.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 36.0,
"unit": "PT"
}
},
"bullet": {
"listId": "kix.ussavk43dhsk",
"textStyle": {
"underline": false
}
}
}
}, {
"startIndex": 496,
"endIndex": 497,
"paragraph": {
"elements": [{
"startIndex": 496,
"endIndex": 497,
"textRun": {
"content": "\n",
"textStyle": {
}
}
}],
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT"
}
}
}, {
"startIndex": 497,
"endIndex": 565,
"table": {
"rows": 2,
"columns": 2,
"tableRows": [{
"startIndex": 498,
"endIndex": 531,
"tableCells": [{
"startIndex": 499,
"endIndex": 515,
"content": [{
"startIndex": 500,
"endIndex": 515,
"paragraph": {
"elements": [{
"startIndex": 500,
"endIndex": 515,
"textRun": {
"content": "Northwest cell\n",
"textStyle": {
}
}
}],
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT"
}
}
}],
"tableCellStyle": {
"rowSpan": 1,
"columnSpan": 1,
"backgroundColor": {
},
"paddingLeft": {
"magnitude": 5.0,
"unit": "PT"
},
"paddingRight": {
"magnitude": 5.0,
"unit": "PT"
},
"paddingTop": {
"magnitude": 5.0,
"unit": "PT"
},
"paddingBottom": {
"magnitude": 5.0,
"unit": "PT"
},
"contentAlignment": "TOP"
}
}, {
"startIndex": 515,
"endIndex": 531,
"content": [{
"startIndex": 516,
"endIndex": 531,
"paragraph": {
"elements": [{
"startIndex": 516,
"endIndex": 531,
"textRun": {
"content": "Northeast cell\n",
"textStyle": {
}
}
}],
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT"
}
}
}],
"tableCellStyle": {
"rowSpan": 1,
"columnSpan": 1,
"backgroundColor": {
},
"paddingLeft": {
"magnitude": 5.0,
"unit": "PT"
},
"paddingRight": {
"magnitude": 5.0,
"unit": "PT"
},
"paddingTop": {
"magnitude": 5.0,
"unit": "PT"
},
"paddingBottom": {
"magnitude": 5.0,
"unit": "PT"
},
"contentAlignment": "TOP"
}
}],
"tableRowStyle": {
"minRowHeight": {
"unit": "PT"
}
}
}, {
"startIndex": 531,
"endIndex": 564,
"tableCells": [{
"startIndex": 532,
"endIndex": 548,
"content": [{
"startIndex": 533,
"endIndex": 548,
"paragraph": {
"elements": [{
"startIndex": 533,
"endIndex": 548,
"textRun": {
"content": "Southwest cell\n",
"textStyle": {
}
}
}],
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT"
}
}
}],
"tableCellStyle": {
"rowSpan": 1,
"columnSpan": 1,
"backgroundColor": {
},
"paddingLeft": {
"magnitude": 5.0,
"unit": "PT"
},
"paddingRight": {
"magnitude": 5.0,
"unit": "PT"
},
"paddingTop": {
"magnitude": 5.0,
"unit": "PT"
},
"paddingBottom": {
"magnitude": 5.0,
"unit": "PT"
},
"contentAlignment": "TOP"
}
}, {
"startIndex": 548,
"endIndex": 564,
"content": [{
"startIndex": 549,
"endIndex": 564,
"paragraph": {
"elements": [{
"startIndex": 549,
"endIndex": 564,
"textRun": {
"content": "Southeast cell\n",
"textStyle": {
}
}
}],
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT"
}
}
}],
"tableCellStyle": {
"rowSpan": 1,
"columnSpan": 1,
"backgroundColor": {
},
"paddingLeft": {
"magnitude": 5.0,
"unit": "PT"
},
"paddingRight": {
"magnitude": 5.0,
"unit": "PT"
},
"paddingTop": {
"magnitude": 5.0,
"unit": "PT"
},
"paddingBottom": {
"magnitude": 5.0,
"unit": "PT"
},
"contentAlignment": "TOP"
}
}],
"tableRowStyle": {
"minRowHeight": {
"unit": "PT"
}
}
}],
"tableStyle": {
"tableColumnProperties": [{
"widthType": "EVENLY_DISTRIBUTED"
}, {
"widthType": "EVENLY_DISTRIBUTED"
}],
"contentDirection": "LEFT_TO_RIGHT"
}
}
}, {
"startIndex": 565,
"endIndex": 589,
"paragraph": {
"elements": [{
"startIndex": 565,
"endIndex": 589,
"textRun": {
"content": "And a level two heading\n",
"textStyle": {
}
}
}],
"paragraphStyle": {
"headingId": "h.dp3ko4q27ips",
"namedStyleType": "HEADING_2",
"direction": "LEFT_TO_RIGHT"
}
}
}, {
"startIndex": 589,
"endIndex": 649,
"paragraph": {
"elements": [{
"startIndex": 589,
"endIndex": 649,
"textRun": {
"content": "And this is a paragraph that follows the level two heading.\n",
"textStyle": {
}
}
}],
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT"
}
}
}]
},
"documentStyle": {
"background": {
"color": {
}
},
"pageNumberStart": 1,
"marginTop": {
"magnitude": 72.0,
"unit": "PT"
},
"marginBottom": {
"magnitude": 72.0,
"unit": "PT"
},
"marginRight": {
"magnitude": 72.0,
"unit": "PT"
},
"marginLeft": {
"magnitude": 72.0,
"unit": "PT"
},
"pageSize": {
"height": {
"magnitude": 792.0,
"unit": "PT"
},
"width": {
"magnitude": 612.0,
"unit": "PT"
}
},
"marginHeader": {
"magnitude": 36.0,
"unit": "PT"
},
"marginFooter": {
"magnitude": 36.0,
"unit": "PT"
},
"useCustomHeaderFooterMargins": true
},
"namedStyles": {
"styles": [{
"namedStyleType": "NORMAL_TEXT",
"textStyle": {
"bold": false,
"italic": false,
"underline": false,
"strikethrough": false,
"smallCaps": false,
"backgroundColor": {
},
"foregroundColor": {
"color": {
"rgbColor": {
}
}
},
"fontSize": {
"magnitude": 11.0,
"unit": "PT"
},
"weightedFontFamily": {
"fontFamily": "Arial",
"weight": 400
},
"baselineOffset": "NONE"
},
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"alignment": "START",
"lineSpacing": 115.0,
"direction": "LEFT_TO_RIGHT",
"spacingMode": "COLLAPSE_LISTS",
"spaceAbove": {
"unit": "PT"
},
"spaceBelow": {
"unit": "PT"
},
"borderBetween": {
"color": {
},
"width": {
"unit": "PT"
},
"padding": {
"unit": "PT"
},
"dashStyle": "SOLID"
},
"borderTop": {
"color": {
},
"width": {
"unit": "PT"
},
"padding": {
"unit": "PT"
},
"dashStyle": "SOLID"
},
"borderBottom": {
"color": {
},
"width": {
"unit": "PT"
},
"padding": {
"unit": "PT"
},
"dashStyle": "SOLID"
},
"borderLeft": {
"color": {
},
"width": {
"unit": "PT"
},
"padding": {
"unit": "PT"
},
"dashStyle": "SOLID"
},
"borderRight": {
"color": {
},
"width": {
"unit": "PT"
},
"padding": {
"unit": "PT"
},
"dashStyle": "SOLID"
},
"indentFirstLine": {
"unit": "PT"
},
"indentStart": {
"unit": "PT"
},
"indentEnd": {
"unit": "PT"
},
"keepLinesTogether": false,
"keepWithNext": false,
"avoidWidowAndOrphan": true,
"shading": {
"backgroundColor": {
}
},
"pageBreakBefore": false
}
}, {
"namedStyleType": "HEADING_1",
"textStyle": {
"fontSize": {
"magnitude": 20.0,
"unit": "PT"
}
},
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT",
"spaceAbove": {
"magnitude": 20.0,
"unit": "PT"
},
"spaceBelow": {
"magnitude": 6.0,
"unit": "PT"
},
"keepLinesTogether": true,
"keepWithNext": true,
"pageBreakBefore": false
}
}, {
"namedStyleType": "HEADING_2",
"textStyle": {
"bold": false,
"fontSize": {
"magnitude": 16.0,
"unit": "PT"
}
},
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT",
"spaceAbove": {
"magnitude": 18.0,
"unit": "PT"
},
"spaceBelow": {
"magnitude": 6.0,
"unit": "PT"
},
"keepLinesTogether": true,
"keepWithNext": true,
"pageBreakBefore": false
}
}, {
"namedStyleType": "HEADING_3",
"textStyle": {
"bold": false,
"foregroundColor": {
"color": {
"rgbColor": {
"red": 0.2627451,
"green": 0.2627451,
"blue": 0.2627451
}
}
},
"fontSize": {
"magnitude": 14.0,
"unit": "PT"
}
},
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT",
"spaceAbove": {
"magnitude": 16.0,
"unit": "PT"
},
"spaceBelow": {
"magnitude": 4.0,
"unit": "PT"
},
"keepLinesTogether": true,
"keepWithNext": true,
"pageBreakBefore": false
}
}, {
"namedStyleType": "HEADING_4",
"textStyle": {
"foregroundColor": {
"color": {
"rgbColor": {
"red": 0.4,
"green": 0.4,
"blue": 0.4
}
}
},
"fontSize": {
"magnitude": 12.0,
"unit": "PT"
}
},
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT",
"spaceAbove": {
"magnitude": 14.0,
"unit": "PT"
},
"spaceBelow": {
"magnitude": 4.0,
"unit": "PT"
},
"keepLinesTogether": true,
"keepWithNext": true,
"pageBreakBefore": false
}
}, {
"namedStyleType": "HEADING_5",
"textStyle": {
"foregroundColor": {
"color": {
"rgbColor": {
"red": 0.4,
"green": 0.4,
"blue": 0.4
}
}
},
"fontSize": {
"magnitude": 11.0,
"unit": "PT"
}
},
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT",
"spaceAbove": {
"magnitude": 12.0,
"unit": "PT"
},
"spaceBelow": {
"magnitude": 4.0,
"unit": "PT"
},
"keepLinesTogether": true,
"keepWithNext": true,
"pageBreakBefore": false
}
}, {
"namedStyleType": "HEADING_6",
"textStyle": {
"italic": true,
"foregroundColor": {
"color": {
"rgbColor": {
"red": 0.4,
"green": 0.4,
"blue": 0.4
}
}
},
"fontSize": {
"magnitude": 11.0,
"unit": "PT"
}
},
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT",
"spaceAbove": {
"magnitude": 12.0,
"unit": "PT"
},
"spaceBelow": {
"magnitude": 4.0,
"unit": "PT"
},
"keepLinesTogether": true,
"keepWithNext": true,
"pageBreakBefore": false
}
}, {
"namedStyleType": "TITLE",
"textStyle": {
"fontSize": {
"magnitude": 26.0,
"unit": "PT"
}
},
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT",
"spaceAbove": {
"unit": "PT"
},
"spaceBelow": {
"magnitude": 3.0,
"unit": "PT"
},
"keepLinesTogether": true,
"keepWithNext": true,
"pageBreakBefore": false
}
}, {
"namedStyleType": "SUBTITLE",
"textStyle": {
"italic": false,
"foregroundColor": {
"color": {
"rgbColor": {
"red": 0.4,
"green": 0.4,
"blue": 0.4
}
}
},
"fontSize": {
"magnitude": 15.0,
"unit": "PT"
},
"weightedFontFamily": {
"fontFamily": "Arial",
"weight": 400
}
},
"paragraphStyle": {
"namedStyleType": "NORMAL_TEXT",
"direction": "LEFT_TO_RIGHT",
"spaceAbove": {
"unit": "PT"
},
"spaceBelow": {
"magnitude": 16.0,
"unit": "PT"
},
"keepLinesTogether": true,
"keepWithNext": true,
"pageBreakBefore": false
}
}]
},
"lists": {
"kix.2iaql7na7gwi": {
"listProperties": {
"nestingLevels": [{
"bulletAlignment": "START",
"glyphType": "ALPHA",
"glyphFormat": "%0.",
"indentFirstLine": {
"magnitude": 54.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 72.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "END",
"glyphType": "ROMAN",
"glyphFormat": "%1.",
"indentFirstLine": {
"magnitude": 90.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 108.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphType": "DECIMAL",
"glyphFormat": "%2.",
"indentFirstLine": {
"magnitude": 126.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 144.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphType": "ALPHA",
"glyphFormat": "%3.",
"indentFirstLine": {
"magnitude": 162.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 180.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "END",
"glyphType": "ROMAN",
"glyphFormat": "%4.",
"indentFirstLine": {
"magnitude": 198.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 216.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphType": "DECIMAL",
"glyphFormat": "%5.",
"indentFirstLine": {
"magnitude": 234.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 252.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphType": "ALPHA",
"glyphFormat": "%6.",
"indentFirstLine": {
"magnitude": 270.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 288.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "END",
"glyphType": "ROMAN",
"glyphFormat": "%7.",
"indentFirstLine": {
"magnitude": 306.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 324.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphType": "DECIMAL",
"glyphFormat": "%8.",
"indentFirstLine": {
"magnitude": 342.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 360.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}]
}
},
"kix.ussavk43dhsk": {
"listProperties": {
"nestingLevels": [{
"bulletAlignment": "START",
"glyphSymbol": "●",
"glyphFormat": "%0",
"indentFirstLine": {
"magnitude": 18.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 36.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphSymbol": "○",
"glyphFormat": "%1",
"indentFirstLine": {
"magnitude": 54.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 72.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphSymbol": "■",
"glyphFormat": "%2",
"indentFirstLine": {
"magnitude": 90.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 108.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphSymbol": "●",
"glyphFormat": "%3",
"indentFirstLine": {
"magnitude": 126.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 144.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphSymbol": "○",
"glyphFormat": "%4",
"indentFirstLine": {
"magnitude": 162.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 180.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphSymbol": "■",
"glyphFormat": "%5",
"indentFirstLine": {
"magnitude": 198.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 216.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphSymbol": "●",
"glyphFormat": "%6",
"indentFirstLine": {
"magnitude": 234.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 252.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphSymbol": "○",
"glyphFormat": "%7",
"indentFirstLine": {
"magnitude": 270.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 288.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphSymbol": "■",
"glyphFormat": "%8",
"indentFirstLine": {
"magnitude": 306.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 324.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}]
}
},
"kix.v1x94gs10mnc": {
"listProperties": {
"nestingLevels": [{
"bulletAlignment": "START",
"glyphSymbol": "●",
"glyphFormat": "%0",
"indentFirstLine": {
"magnitude": 18.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 36.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphSymbol": "○",
"glyphFormat": "%1",
"indentFirstLine": {
"magnitude": 54.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 72.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphSymbol": "■",
"glyphFormat": "%2",
"indentFirstLine": {
"magnitude": 90.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 108.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphSymbol": "●",
"glyphFormat": "%3",
"indentFirstLine": {
"magnitude": 126.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 144.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphSymbol": "○",
"glyphFormat": "%4",
"indentFirstLine": {
"magnitude": 162.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 180.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphSymbol": "■",
"glyphFormat": "%5",
"indentFirstLine": {
"magnitude": 198.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 216.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphSymbol": "●",
"glyphFormat": "%6",
"indentFirstLine": {
"magnitude": 234.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 252.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphSymbol": "○",
"glyphFormat": "%7",
"indentFirstLine": {
"magnitude": 270.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 288.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}, {
"bulletAlignment": "START",
"glyphSymbol": "■",
"glyphFormat": "%8",
"indentFirstLine": {
"magnitude": 306.0,
"unit": "PT"
},
"indentStart": {
"magnitude": 324.0,
"unit": "PT"
},
"textStyle": {
"underline": false
},
"startNumber": 1
}]
}
}
}
}
}]
}
Trừ phi có lưu ý khác, nội dung của trang này được cấp phép theo Giấy phép ghi nhận tác giả 4.0 của Creative Commons và các mẫu mã lập trình được cấp phép theo Giấy phép Apache 2.0. Để biết thông tin chi tiết, vui lòng tham khảo Chính sách trang web của Google Developers. Java là nhãn hiệu đã đăng ký của Oracle và/hoặc các đơn vị liên kết với Oracle.
Cập nhật lần gần đây nhất: 2024-11-24 UTC.