Google Dokümanlar, ortak çalışanların onay bekleyen ertelenen düzenlemeler olarak işlev gören öneriler yapmasına olanak tanır.
Belge içeriğini almak için documents.get
yöntemini kullandığınızda içerik, çözülmemiş öneriler içerebilir. documents.get
'ün önerileri nasıl temsil ettiğini kontrol etmek için isteğe bağlı SuggestionsViewMode
parametresini kullanın. Bu parametreyle aşağıdaki filtre koşulları kullanılabilir:
- İçeriği
SUGGESTIONS_INLINE
ile alın. Böylece, silinmeyi veya eklenmeyi bekleyen metin dokümanda görünür. - Tüm önerilerin kabul edildiği bir önizleme olarak içerik alın.
- Tüm öneriler reddedilerek içeriği önizleme olarak öneri olmadan alın.
SuggestionsViewMode
sağlamazsanız Google Dokümanlar API'si, mevcut kullanıcının ayrıcalıklarına uygun varsayılan bir ayar kullanır.
Öneriler ve dizinler
SuggestionsViewMode
değerinin önemli olmasının bir nedeni, yanıttaki dizinlerin, aşağıda gösterildiği gibi öneri olup olmadığına bağlı olarak değişebilmesidir.
Öneri içeren içerikler | Öneri içermeyen içerikler |
---|---|
{ "tabs": [ { "documentTab": { "body": { "content": [ { "startIndex": 1, "endIndex": 31, "paragraph": { "elements": [ { "startIndex": 1, "endIndex": 31, "textRun": { "content": "Text preceding the suggestion\n", "textStyle": {} } } ], "paragraphStyle": { "namedStyleType": "NORMAL_TEXT", "direction": "LEFT_TO_RIGHT" } } }, { "startIndex": 31, "endIndex": 51, "paragraph": { "elements": [ { "startIndex": 31, "endIndex": 50, "textRun": { "content": "Suggested insertion", "suggestedInsertionIds": [ "suggest.vcti8ewm4mww" ], "textStyle": {} } }, { "startIndex": 50, "endIndex": 51, "textRun": { "content": "\n", "textStyle": {} } } ], "paragraphStyle": { "namedStyleType": "NORMAL_TEXT", "direction": "LEFT_TO_RIGHT" } } }, { "startIndex": 51, "endIndex": 81, "paragraph": { "elements": [ { "startIndex": 51, "endIndex": 81, "textRun": { "content": "Text following the suggestion\n", "textStyle": {} } } ], "paragraphStyle": { "namedStyleType": "NORMAL_TEXT", "direction": "LEFT_TO_RIGHT" } } } ] } } } ] }, |
{ "tabs": [ { "documentTab": { "body": { "content": [ { "startIndex": 1, "endIndex": 31, "paragraph": { "elements": [ { "startIndex": 1, "endIndex": 31, "textRun": { "content": "Text preceding the suggestion\n", "textStyle": {} } } ], "paragraphStyle": { "namedStyleType": "NORMAL_TEXT", "direction": "LEFT_TO_RIGHT" } } }, { "startIndex": 31, "endIndex": 32, "paragraph": { "elements": [ { "startIndex": 31, "endIndex": 32, "textRun": { "content": "\n", "textStyle": {} } } ], "paragraphStyle": { "namedStyleType": "NORMAL_TEXT", "direction": "LEFT_TO_RIGHT" } } }, { "startIndex": 32, "endIndex": 62, "paragraph": { "elements": [ { "startIndex": 32, "endIndex": 62, "textRun": { "content": "Text following the suggestion\n", "textStyle": {} } } ], "paragraphStyle": { "namedStyleType": "NORMAL_TEXT", "direction": "LEFT_TO_RIGHT" } } } ] } } } ] }, |
Yukarıdaki yanıtta, "Önerinin ardından gelen metin" satırını içeren paragrafta SuggestionsViewMode
kullanıldığındaki fark gösterilmektedir. Değer SUGGESTIONS_INLINE
olarak ayarlandığında, ParagraphElement
için startIndex
51'den başlar ve endIndex
81'de durur. Öneriler olmadan startIndex
ve endIndex
aralığı 32-62'dir.
Öneriler olmadan içerik alma
Aşağıdaki kısmi kod örneğinde, SuggestionsViewMode
parametresi PREVIEW_WITHOUT_SUGGESTIONS
olarak ayarlanarak bir dokümanın tüm önerilerin reddedildiği (varsa) bir önizlemesi nasıl alınacağı gösterilmektedir.
final string SUGGEST_MODE = "PREVIEW_WITHOUT_SUGGESTIONS"; Document doc = service .documents() .get(DOCUMENT_ID) .setIncludeTabsContent(true) .setSuggestionsViewMode(SUGGEST_MODE) .execute();
SUGGEST_MODE = "PREVIEW_WITHOUT_SUGGESTIONS" result = ( service.documents() .get( documentId=DOCUMENT_ID, includeTabsContent=True, suggestionsViewMode=SUGGEST_MODE, ) .execute() )
SuggestionsViewMode
parametresinin atlanması, parametre değeri olarak DEFAULT_FOR_CURRENT_ACCESS
sağlanmasına eşdeğerdir.
Stil önerileri
Dokümanlar stil önerileri de içerebilir. Bunlar, içerikte değil, biçimlendirme ve sunumda önerilen değişikliklerdir.
Metin ekleme veya silme işlemlerinin aksine, bunlar dizinleri etkilemez (TextRun
'yi daha küçük parçalara ayırabilirler) ancak önerilen stil değişikliğiyle ilgili ek açıklamalar ekler.
Bu tür ek açıklamalardan biri, 2 bölümden oluşan SuggestedTextStyle
'dir:
Önerilen değişiklikten sonra metnin nasıl biçimlendirildiğini açıklayan ancak neyin değiştiğini belirtmeyen
textStyle
.Öneri,
textStyle
alanlarının nasıl değiştirildiğini belirtentextStyleSuggestionState
.
Bu durumu, önerilen bir stil değişikliği içeren aşağıdaki doküman sekmesi özözünde görebilirsiniz:
[01] "paragraph": {
[02] "elements": [
[03] {
[04] "endIndex": 106,
[05] "startIndex": 82,
[06] "textRun": {
[07] "content": "Some text that does not ",
[08] "textStyle": {}
[09] }
[10] },
[11] {
[12] "endIndex": 115,
[13] "startIndex": 106,
[14] "textRun": {
[15] "content": "initially",
[16] "suggestedTextStyleChanges": {
[17] "suggest.xymysbs9zldp": {
[18] "textStyle": {
[19] "backgroundColor": {},
[20] "baselineOffset": "NONE",
[21] "bold": true,
[22] "fontSize": {
[23] "magnitude": 11,
[24] "unit": "PT"
[25] },
[26] "foregroundColor": {
[27] "color": {
[28] "rgbColor": {}
[29] }
[30] },
[31] "italic": false,
[32] "smallCaps": false,
[33] "strikethrough": false,
[34] "underline": false
[35] },
[36] "textStyleSuggestionState": {
[37] "boldSuggested": true,
[38] "weightedFontFamilySuggested": true
[39] }
[40] }
[41] },
[42] "textStyle": {
[43] "italic": true
[44] }
[45] }
[46] },
[47] {
[48] "endIndex": 143,
[49] "startIndex": 115,
[50] "textRun": {
[51] "content": " contain any boldface text.\n",
[52] "textStyle": {}
[53] }
[54] }
[55] ],
[56] "paragraphStyle": {
[57] "direction": "LEFT_TO_RIGHT",
[58] "namedStyleType": "NORMAL_TEXT"
[59] }
[60] }
Yukarıdaki örnekte paragraf, 6., 14. ve 50. satırlardan başlayan 3 metin satırından oluşur. Ortadaki metin satırını inceleyin:
- 16. satır:
suggestedTextStyleChanges
nesnesi var. - 18. satır:
textStyle
, çeşitli biçimlendirmeleri belirtir. - 36. satır:
textStyleSuggestionState
, bu spesifikasyonun yalnızca kalın yazılmış kısmının öneri olduğunu gösterir. - 42. satır: Bu metin satırının italik biçimlendirmesi mevcut dokümanın bir parçasıdır (ve öneriden etkilenmez).
Yalnızca textStyleSuggestionState
içinde true
olarak ayarlanan stil özellikleri önerinin bir parçasıdır.