您可以使用 JSON 中的數(shù)據(jù)來復(fù)制最初作為模板創(chuàng)建的圖表,并為其提供新的數(shù)據(jù)表。您可以控制使用特定模板構(gòu)建新演示文稿的順序。模板也可以多次使用。
PowerPoint 模板和 JSON 數(shù)據(jù)都可以本地或遠(yuǎn)程存儲(chǔ)。JSON 數(shù)據(jù)甚至可以由 Web 服務(wù)動(dòng)態(tài)生成。
26.1 think-cell 的 JSON 數(shù)據(jù)結(jié)構(gòu)
think-cell 的 JSON 數(shù)據(jù)示例如下所示,可以在 think-cell 安裝目錄的子文件夾中的文件中找到。JSON 指定要從模板串聯(lián)創(chuàng)建的演示文稿。它符合 的架構(gòu) 。sample.ppttcppttcppttc/ppttc-schema.json
根級別是一個(gè)項(xiàng)數(shù)組。每個(gè)項(xiàng)目都為其圖表指定一個(gè)模板文件和數(shù)據(jù)。可以連接不同的模板,并且可以多次使用單個(gè)模板。在最簡單的情況下,使用單個(gè)模板一次以用數(shù)據(jù)填充該模板中包含的所有圖表。
串聯(lián)模板數(shù)組中的每個(gè)項(xiàng)目都包含兩個(gè)鍵:1 和 2 的值1是 PowerPoint 文件的路徑,其中包含已將名稱設(shè)置為標(biāo)識符的 think-cell 圖表(請參閱 24。自動(dòng)化簡介)。也可以從遠(yuǎn)程位置檢索模板文件,如 26.3 遠(yuǎn)程提供 JSON 數(shù)據(jù)中所述。templatedatatemplate
key 圖像。的值是模板中包含的圖表的 JSON 格式數(shù)據(jù)表列表。列表中的每個(gè)項(xiàng)目都有兩個(gè)屬性:3 和 4。3使用圖表名稱指定圖表并4保存數(shù)據(jù)表。datanametablenametable的值的結(jié)構(gòu) for 4 直接對應(yīng)于未轉(zhuǎn)置的數(shù)據(jù)表,其中 rows 表示 series,columns 表示 categories。對于默認(rèn)圖表,這意味著將表示以下行順序:table
首先具有空單元格的行 (),然后是具有類別名稱的單元格。null
一行 100% 值。如果未使用 100% 值,則將空行指定為 5。
多行,第一個(gè)單元格提供系列名稱,后續(xù)單元格包含數(shù)值。
任何可以命名的圖表都可以在 JSON 中引用。
注意:think-cell 數(shù)據(jù)表范圍內(nèi)的任何單元格都可以包含任何類型的文本。如果需要,還可以填充第一行中的第一個(gè)單元格。
構(gòu)成鍵值的數(shù)據(jù)必須符合架構(gòu)中設(shè)置的某些規(guī)則。鍵本身的值是一個(gè)數(shù)組。子數(shù)組表示數(shù)據(jù)表的行。可以使用 empty array 指定空行。單元格的內(nèi)容由此類子數(shù)組中列出的元素描述。元素的順序?qū)?yīng)于數(shù)據(jù)表中列的順序。必須使用 element 顯式描述空單元格。必須使用另一個(gè)鍵值對來描述包含內(nèi)容的單元格。在這種情況下,鍵描述數(shù)據(jù)類型,值保存要在演示文稿中顯示的實(shí)際數(shù)據(jù)。支持三種不同的數(shù)據(jù)類型:tabletable[]null
6 string對于任何類型的文本。支持所有可打印的 Unicode (UTF-8) 字符。例:{"string":"Echo"}
7 number對于任何類型的數(shù)字。使用的小數(shù)分隔符必須是一個(gè)點(diǎn)。例:{"number":"5"}
8 date對于日期。所需的格式為例:YYYY-MM-DD{"date":"2016-09-04"}
單元格內(nèi)容的任何格式設(shè)置(例如,指定日期格式)都必須在 PowerPoint 模板中完成。
對于命名文本字段,元素僅包含一個(gè)“行”中的一個(gè)“單元格”,因此您需要使用一個(gè) JSON 數(shù)組,如以下片段所示,該數(shù)組將針對元素內(nèi)的每個(gè)命名文本字段出現(xiàn)一次:tabledata
26.2 使用 JSON 數(shù)據(jù)創(chuàng)建演示文稿
JSON 數(shù)據(jù)文件的文件類型必須為 .打開此類文件時(shí):.ppttc
think-cell 讀取文件并檢查其結(jié)構(gòu)完整性。
此時(shí)將創(chuàng)建一個(gè)新的演示文稿。對于 JSON 文件頂層的每個(gè)項(xiàng)目,新演示文稿都包含指定模板的副本。
在模板副本中,由值標(biāo)識的圖表的數(shù)據(jù)表將替換為值中的數(shù)據(jù)。任何標(biāo)簽總數(shù)、標(biāo)簽位置和差異箭頭值或其他圖表修飾都會(huì)更新。nametable
之后,將顯示新的演示文稿。用戶可以進(jìn)一步編輯其內(nèi)容并保存它或以任何其他方式使用它。
您還可以在命令行上從 JSON 數(shù)據(jù)創(chuàng)建演示文稿:
ppttc input.ppttc -o output.pptx
可執(zhí)行文件位于 think-cell 的安裝文件夾中。Calling 可以輕松集成到自動(dòng)化工作流程中。ppttc.exeppttc.exe
26.3 遠(yuǎn)程提供 JSON 數(shù)據(jù)
文件中的 JSON 數(shù)據(jù)也可以由 Web 服務(wù)遠(yuǎn)程生成,并提供給用戶在 Web 瀏覽器中下載。請參閱下面提供的示例以及 think-cell 安裝目錄的子文件夾中的示例。.ppttcsample.htmlppttc
ppttc test
在我們的示例中,當(dāng)用戶請求下載時(shí),JSON 數(shù)據(jù)是動(dòng)態(tài)編譯的。雖然該示例嵌入了靜態(tài)數(shù)據(jù),但您當(dāng)然可以使用您網(wǎng)站上用戶提供的參數(shù)從其他數(shù)據(jù)源動(dòng)態(tài)創(chuàng)建 JSON。
-
數(shù)據(jù)
+關(guān)注
關(guān)注
8文章
7067瀏覽量
89125 -
JSON
+關(guān)注
關(guān)注
0文章
119瀏覽量
6978
原文標(biāo)題:think-cell——使用 JSON 數(shù)據(jù)實(shí)現(xiàn)自動(dòng)化(一)
文章出處:【微信號:哲想軟件,微信公眾號:哲想軟件】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論