消費(fèi)者可用的顯示設(shè)備的增加的多樣性對內(nèi)容作者造成了許多挑戰(zhàn)。例如,在一些場景中,作者可以撰寫被優(yōu)化用于在豎排模式下顯示在移動電話上的文檔,其可能不適合于當(dāng)以橫向模式使用設(shè)備時的展現(xiàn)。當(dāng)使用桌面監(jiān)視器、虛擬現(xiàn)實(shí)顯示設(shè)備、可穿戴式顯示設(shè)備、80”屏幕、視頻或打印頁面顯示時,這樣的文檔的可讀性和外觀可能進(jìn)一步受損。
在另一個層面上,可用顯示設(shè)備的增長的多樣性與通常用于生成文檔的靜態(tài)格式化指令形成對比。例如,作者通常受限于提供特定的格式化指令,例如“將這兩個字設(shè)置為18pt黑體字”、“將此文本放置到距頁面頂部一英寸的3/4”或“放置這兩個圖像并排排列,兩者之間有48pt的間距”。這樣的靜態(tài)格式化指令可能僅適用于幾種顯示格式,并且這種指令通常不預(yù)期或適應(yīng)其他顯示格式。當(dāng)以不期望的格式顯示這樣的內(nèi)容時,可能以與作者原本想到的或預(yù)期的完全不同的方式來展現(xiàn)內(nèi)容。另外,在小屏幕上顯示這樣的內(nèi)容可能將圖像或文本的大小減小到其可能不可讀的點(diǎn)。
此外,通過僅依賴于特定格式化指令,可能不能完全表達(dá)作者的意圖中的一些意圖。例如,手動生成的布局可能受到作者對格式化指令的了解的限制??赡艽嬖诳捎糜谡宫F(xiàn)內(nèi)容的大量格式化選項(xiàng),但是可能未被利用,因?yàn)樗鼈儗τ谧髡呤俏粗幕蛘咭驗(yàn)樽髡邲]有足夠的時間來添加這種顯式格式化。因此,內(nèi)容可能不會以與作者的意愿一致的方式展現(xiàn)。
正是針對這些和其它考慮,展現(xiàn)了在此所做的公開。
技術(shù)實(shí)現(xiàn)要素:
本文描述了基于作者的意圖的內(nèi)容創(chuàng)作的技術(shù)。一般地描述,在一些方面,可以獲得并利用意圖數(shù)據(jù)來生成用于內(nèi)容數(shù)據(jù)的布局。意圖數(shù)據(jù)可以指示關(guān)于如何展現(xiàn)內(nèi)容數(shù)據(jù)的作者的意圖,并且可以利用包含在內(nèi)容數(shù)據(jù)中的多個內(nèi)容元素之間的各種關(guān)系來描述?;谝鈭D數(shù)據(jù),可以針對內(nèi)容數(shù)據(jù)生成布局。例如,可以通過選擇可以滿足作者的意圖的一個或多個候選模板來生成布局。內(nèi)容數(shù)據(jù)可以通過候選模板來置換??梢愿鶕?jù)一組啟發(fā)式規(guī)則對每個模板進(jìn)行評分,并且可以選擇具有最高分?jǐn)?shù)的模板作為生成的布局。
根據(jù)另外的方面,還可以在生成布局時獲得和利用其他信息,諸如描述顯示設(shè)備的設(shè)備能力的數(shù)據(jù)和/或消費(fèi)者偏好。然后可以使用所生成的布局來向作者或其他用戶展現(xiàn)內(nèi)容數(shù)據(jù)。作者可以進(jìn)一步提供反饋以請求調(diào)整或重新生成所生成的布局。反饋可以包括覆蓋布局中使用的意圖解釋的覆蓋反饋和/或改變或添加對于內(nèi)容數(shù)據(jù)的更多意圖數(shù)據(jù)的意圖反饋。
應(yīng)當(dāng)意識到,上述主題可以實(shí)現(xiàn)為計(jì)算機(jī)控制的裝置、計(jì)算機(jī)過程、計(jì)算系統(tǒng)或?qū)崿F(xiàn)為例如計(jì)算機(jī)可讀存儲介質(zhì)的制品。這些特征和其它各個特征將從以下的具體實(shí)施方式的閱讀和相關(guān)聯(lián)的附圖的閱覽中變得顯而易見。
提供該發(fā)明內(nèi)容以便以簡化的形式來引入下面的具體實(shí)施方式中進(jìn)一步描述的概念的選擇。該發(fā)明內(nèi)容不旨在確定所要求保護(hù)的主題的關(guān)鍵特征或主要特征,也不旨在該發(fā)明內(nèi)容用于限定所要求保護(hù)的主題的范圍。此外,所要求保護(hù)的主題不限于解決在本公開的任意部分所提到的任意或全部缺點(diǎn)的實(shí)現(xiàn)方式。
附圖說明
圖1是提供本文所公開的一種用于提供基于用戶意圖來生成用于內(nèi)容數(shù)據(jù)的布局的內(nèi)容創(chuàng)作服務(wù)的機(jī)制的概述描述的系統(tǒng)圖。
圖2是示出了用于基于作者意圖的內(nèi)容創(chuàng)作的本文所展現(xiàn)的方法和技術(shù)的另外方面的框圖。
圖3是示出了包含在核心內(nèi)容數(shù)據(jù)模型中和布局就緒視圖模型中的多個數(shù)據(jù)元素的數(shù)據(jù)結(jié)構(gòu)圖。
圖4示出了可以用于生成用于內(nèi)容數(shù)據(jù)的布局的示例世界方案。
圖5A和5B示出了兩個示例布局和示例布局中的每一個的組件。
圖6是示出了用于內(nèi)容創(chuàng)作的過程的各方面的流程圖。
圖7是示出了用于基于作者意圖生成用于內(nèi)容數(shù)據(jù)的布局的方法的各方面的流程圖。
圖8A示出了在生成布局期間所使用的模板的示例。
圖8B示出了用于利用算法生成用于布局生成的模板的示例。
圖9A示出了可由作者用來輸入內(nèi)容數(shù)據(jù)并指定作者意圖的用戶界面。
圖9B示出了根據(jù)在此展現(xiàn)的方法和技術(shù)的各方面的基于作者意圖生成的布局中所展現(xiàn)的內(nèi)容數(shù)據(jù)的呈現(xiàn)視圖。
圖9C示出了根據(jù)本文所展現(xiàn)的方法和技術(shù)的各方面的以基于作者意圖生成的不同布局中所展現(xiàn)的內(nèi)容數(shù)據(jù)的另一呈現(xiàn)視圖。
圖10是示出了用于基于作者意圖和作者反饋的內(nèi)容創(chuàng)作的本文所展現(xiàn)的方法和技術(shù)的各方面的框圖。
圖11是示出了用于處理關(guān)于基于作者意圖生成的布局的用戶反饋的方法的各方面的流程圖。
圖12示出了根據(jù)本文所提出的方法和技術(shù)的各方面,基于用戶反饋生成的修改后布局中所展現(xiàn)的內(nèi)容數(shù)據(jù)的呈現(xiàn)視圖。
圖13是示出了可用于實(shí)現(xiàn)在創(chuàng)作體驗(yàn)期間提供上下文相關(guān)內(nèi)容的動態(tài)展現(xiàn)的一個或多個配置的一個說明性操作環(huán)境的框圖。
圖14是示出了在創(chuàng)作體驗(yàn)期間提供上下文相關(guān)內(nèi)容的動態(tài)展現(xiàn)的方法的各方面的流程圖。
圖15示出了用于接收創(chuàng)作的內(nèi)容并顯示由圖14的方法生成的建議的內(nèi)容的示例用戶界面。
圖16是示出了在此展現(xiàn)的用于基于用戶輸入生成用于創(chuàng)作的樣本內(nèi)容的方法和技術(shù)的各方面的框圖。
圖17是示出了用于基于用戶輸入來生成用于創(chuàng)作的樣本內(nèi)容的方法的各方面的流程圖。
圖18示出了作者可以利用以輸入內(nèi)容數(shù)據(jù)的第一用戶界面和接收基于輸入的內(nèi)容數(shù)據(jù)所生成的樣本內(nèi)容的第二用戶界面。
圖19是示出了能夠?qū)崿F(xiàn)本文所提出的方法和技術(shù)的各方面的計(jì)算系統(tǒng)的說明性計(jì)算機(jī)硬件和軟件架構(gòu)的計(jì)算機(jī)架構(gòu)圖。
圖20是示出了能夠?qū)崿F(xiàn)本文給出的方法和技術(shù)的各方面的分布式計(jì)算環(huán)境的圖。
圖21是示出了能夠?qū)崿F(xiàn)本文給出的方法和技術(shù)的各方面的計(jì)算設(shè)備的計(jì)算設(shè)備架構(gòu)的計(jì)算機(jī)架構(gòu)圖。
具體實(shí)施方式
以下具體實(shí)施方式針對用于基于用戶意圖的內(nèi)容創(chuàng)作的概念和技術(shù)。一般地描述,這里公開的技術(shù)可以用于提供服務(wù)以生成由作者提供或選擇的用于內(nèi)容數(shù)據(jù)的布局。內(nèi)容數(shù)據(jù)可以包括各種內(nèi)容數(shù)據(jù)元素,諸如文本、圖像、視頻、音頻等。作者可以進(jìn)一步指定他/她關(guān)于如何展現(xiàn)內(nèi)容數(shù)據(jù)的意圖。作者的意圖可以被描述為包含在內(nèi)容數(shù)據(jù)中的內(nèi)容元素之間的各種關(guān)系。
本文描述的技術(shù)可以利用作者指定的意圖來生成用于內(nèi)容數(shù)據(jù)的布局。如本文所使用的術(shù)語,內(nèi)容數(shù)據(jù)的“布局”可以包括用于展現(xiàn)內(nèi)容數(shù)據(jù)的宏級方案,用于內(nèi)容數(shù)據(jù)的一組內(nèi)容數(shù)據(jù)元素的中間級安排方案,以及針對內(nèi)容數(shù)據(jù)元素中的每個的微級方案。在其他方面,當(dāng)生成布局時,還可以考慮在其上顯示內(nèi)容數(shù)據(jù)的顯示設(shè)備的能力。在生成布局時也可以考慮其他因素,例如消費(fèi)者對創(chuàng)作的內(nèi)容的偏好。通過利用這里描述的技術(shù),可以在尊重內(nèi)容作者的意圖的同時,動態(tài)地在各種不同的顯示設(shè)備上恰當(dāng)?shù)夭贾脙?nèi)容數(shù)據(jù)。
根據(jù)其他方面,本文描述的技術(shù)提供在創(chuàng)作體驗(yàn)期間上下文相關(guān)內(nèi)容的動態(tài)展現(xiàn)。在一些配置中,當(dāng)用戶關(guān)于主題寫作時,分析創(chuàng)作的內(nèi)容以識別可用于識別、檢索建議的內(nèi)容并向用戶展現(xiàn)建議的內(nèi)容的一個或多個關(guān)鍵詞??梢詮闹T如搜索引擎、與用戶相關(guān)聯(lián)的數(shù)據(jù)存儲庫、社交媒體資源或其他本地或遠(yuǎn)程文件之類的一個或多個資源接收所建議的內(nèi)容。本文描述的技術(shù)還可能基于光標(biāo)位置從創(chuàng)作的內(nèi)容中選擇關(guān)鍵詞。結(jié)果,所建議的內(nèi)容可以隨著光標(biāo)移動到創(chuàng)作的內(nèi)容中的新位置而改變。另外,本文描述的技術(shù)提供允許選擇和取消選擇一個或多個關(guān)鍵詞的用戶界面控件,其允許用戶通過切換一個或多個控件來定制建議的內(nèi)容。本公開的其他方面還在與本申請同時提交的題為“INFERRING LAYOUT INTENT”的美國專利申請No.14/503,216中提供。
根據(jù)另外的方面,本文描述的技術(shù)基于用戶輸入來生成樣本創(chuàng)作內(nèi)容。一般地描述,樣本內(nèi)容(例如主題的概要)可以從用戶提供的一個或多個關(guān)鍵詞的上下文解釋生成。使用一個或多個關(guān)鍵詞,系統(tǒng)從一個或多個資源檢索內(nèi)容數(shù)據(jù)。內(nèi)容數(shù)據(jù)被解析并用于生成內(nèi)容數(shù)據(jù)的結(jié)構(gòu)。然后該結(jié)構(gòu)用于生成可以展現(xiàn)給用戶的樣本內(nèi)容。所展現(xiàn)的信息可以提供一種用于快速啟動關(guān)于感興趣的特定主題的創(chuàng)作項(xiàng)目的方式。
雖然本文所描述的主題是在與計(jì)算機(jī)系統(tǒng)上的操作系統(tǒng)和應(yīng)用程序的執(zhí)行相結(jié)合而執(zhí)行的程序模塊的一般上下文中展現(xiàn)的,但是本領(lǐng)域技術(shù)人員將認(rèn)識到,可以與其它類型的程序模塊相結(jié)合來執(zhí)行其它實(shí)現(xiàn)方式。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、組件、數(shù)據(jù)結(jié)構(gòu)和其它類型的結(jié)構(gòu)。而且,本領(lǐng)域技術(shù)人員將意識到,本文所描述的主題可以利用其它計(jì)算機(jī)系統(tǒng)配置來實(shí)現(xiàn),所述其它計(jì)算機(jī)系統(tǒng)配置包括手持式設(shè)備、多處理器系統(tǒng)、基于微處理器的或可編程的消費(fèi)電子設(shè)備、微型計(jì)算機(jī)、大型計(jì)算機(jī),等等。
在下面的具體實(shí)施方式中,參考了附圖,附圖構(gòu)成其部分,并且其中通過示例顯示出具體的配置或示例。現(xiàn)在參考附圖,其中,示出了用于基于用戶意圖的內(nèi)容創(chuàng)作的計(jì)算系統(tǒng)、計(jì)算機(jī)可讀存儲介質(zhì)和計(jì)算機(jī)實(shí)現(xiàn)的方法的各方面,其中相似的標(biāo)記在多幅圖中表示相似的元件。如參考圖19-21在下面進(jìn)一步詳述的,存在能夠?qū)嵤┍疚乃枋龅墓δ芎图夹g(shù)的多個應(yīng)用和服務(wù)。
圖1是提供本文所公開的一種用于提供基于用戶意圖生成用于內(nèi)容數(shù)據(jù)的布局的內(nèi)容創(chuàng)作服務(wù)的機(jī)制的概述描述的系統(tǒng)圖。如圖1所示,系統(tǒng)100可以包括支持內(nèi)容創(chuàng)作的一個或多個服務(wù)器計(jì)算機(jī)104。服務(wù)器計(jì)算機(jī)104可以包括web服務(wù)器、應(yīng)用服務(wù)器、網(wǎng)絡(luò)工具、專用計(jì)算機(jī)硬件設(shè)備、個人計(jì)算機(jī)(“PC”)或這些的任何組合和/或本領(lǐng)域已知的其他計(jì)算設(shè)備。
服務(wù)器計(jì)算機(jī)104可以執(zhí)行多個模塊以便提供內(nèi)容創(chuàng)作服務(wù)。例如,如圖1所示,服務(wù)器計(jì)算機(jī)104可以包括用于收集和/或生成內(nèi)容數(shù)據(jù)114的內(nèi)容收集/生成模塊106。作為示例而非限制,內(nèi)容數(shù)據(jù)114可以包括各種內(nèi)容數(shù)據(jù)元素,諸如文本、圖像、視頻、音頻、推特(tweet)、圖表、圖形、表格、不透明web數(shù)據(jù)和/或可以在內(nèi)容創(chuàng)作中利用的任何數(shù)據(jù)元素。內(nèi)容數(shù)據(jù)元素可以通過用戶計(jì)算設(shè)備130從作者102處獲得作為作者輸入112。為了說明的目的,作者輸入112在這里也可以被稱為內(nèi)容數(shù)據(jù),其中從內(nèi)容資源檢索的內(nèi)容數(shù)據(jù)包括對所識別的實(shí)體的描述。用戶計(jì)算設(shè)備130可以是個人計(jì)算機(jī)(“PC”)、桌面工作站、膝上型計(jì)算機(jī)或平板計(jì)算機(jī)、筆記本、個人數(shù)字助理(“PDA”)、電子書閱讀器、智能電話、游戲控制臺、機(jī)頂盒、消費(fèi)電子設(shè)備、服務(wù)器計(jì)算機(jī)或能夠連接到網(wǎng)絡(luò)124并與內(nèi)容收集/生成模塊106通信的任何其他計(jì)算設(shè)備。網(wǎng)絡(luò)124可以是局域網(wǎng)(“LAN”)、廣域網(wǎng)(“WAN”)、因特網(wǎng)或本領(lǐng)域已知的將用戶計(jì)算設(shè)備130連接到內(nèi)容收集/生成模塊106的任何其它網(wǎng)絡(luò)拓?fù)洹?/p>
當(dāng)提供內(nèi)容數(shù)據(jù)元素時,作者102可以通過由內(nèi)容收集/生成模塊106展現(xiàn)給作者102的用戶界面來鍵入文本、上傳圖像或上傳包含內(nèi)容數(shù)據(jù)元素的現(xiàn)有文件。作者102還可以通過用戶界面提供其他數(shù)據(jù),例如用于內(nèi)容數(shù)據(jù)元素的元數(shù)據(jù)??商娲鼗蛘吡硗獾?,作者102可通過利用由布局生成服務(wù)暴露的應(yīng)用編程接口(“API”)通過用戶計(jì)算設(shè)備130提交內(nèi)容元素和/或與其相關(guān)聯(lián)的任何其它數(shù)據(jù)。
根據(jù)另外的方面,還可以從各種內(nèi)容資源126獲得內(nèi)容數(shù)據(jù)元素。內(nèi)容資源126可以包括用戶計(jì)算設(shè)備130本地可訪問的內(nèi)容數(shù)據(jù)存儲庫128A和/或服務(wù)器計(jì)算機(jī)104本地可訪問的內(nèi)容數(shù)據(jù)存儲庫128B中的本地內(nèi)容。內(nèi)容資源126還可以包括通過網(wǎng)絡(luò)124可訪問的內(nèi)容存儲庫128C-128N上的遠(yuǎn)程內(nèi)容。例如,遠(yuǎn)程內(nèi)容可以包括作者的社交媒體賬戶中的內(nèi)容,諸如帖子、已經(jīng)由作者寫的博客、已經(jīng)在作者賬戶下保存的音頻、圖像和/或視頻等。遠(yuǎn)程內(nèi)容還可以包括公開可用的內(nèi)容。
除了內(nèi)容數(shù)據(jù)114之外,內(nèi)容收集/生成模塊106還可以獲得作者102的關(guān)于如何向消費(fèi)者展現(xiàn)內(nèi)容數(shù)據(jù)114的意圖。例如,作者102可能想要比其周圍內(nèi)容數(shù)據(jù)更突出地展現(xiàn)一個圖像。作者102可以進(jìn)一步想要比其他文本更顯著地展現(xiàn)某個文本塊。作者102的意圖可以被獲得作為描述內(nèi)容數(shù)據(jù)114中的內(nèi)容元素中的兩個或更多個之間的關(guān)系的意圖數(shù)據(jù)116。意圖數(shù)據(jù)116還可以指示內(nèi)容數(shù)據(jù)114的預(yù)期用途,諸如被發(fā)布作為在線發(fā)布的博客文章、要在報紙上打印的文章、展現(xiàn)給消費(fèi)者的視頻、要回放給消費(fèi)者的音頻以及其它。在其它示例中,作者102可能想要多個內(nèi)容放在一起,例如,作者102可能需要將文本塊識別為引用語。在此類場景中,系統(tǒng)可以處理從某人而不是原作者或講話者所重復(fù)的文本或語音取得的一組詞。應(yīng)當(dāng)注意,意圖可以通過高級描述來傳達(dá),并且意圖數(shù)據(jù)116可以不包含特定的格式化指令。關(guān)于內(nèi)容數(shù)據(jù)114和意圖數(shù)據(jù)116的附加細(xì)節(jié)將在下面關(guān)于圖3來提供。
一旦獲得內(nèi)容數(shù)據(jù)114和意圖數(shù)據(jù)116,服務(wù)器計(jì)算機(jī)104可以采用布局生成引擎108來基于意圖數(shù)據(jù)116來生成內(nèi)容數(shù)據(jù)114的布局。如上面簡要討論的,用于內(nèi)容數(shù)據(jù)的布局可以包括用于展現(xiàn)內(nèi)容數(shù)據(jù)的宏級方案、用于內(nèi)容數(shù)據(jù)的一組內(nèi)容數(shù)據(jù)元素的布置的中間級方案,以及用于格式化內(nèi)容數(shù)據(jù)元素中的每個的微級方案。用于展現(xiàn)內(nèi)容數(shù)據(jù)的宏級方案可以包括內(nèi)容數(shù)據(jù)的高級結(jié)構(gòu)、內(nèi)容數(shù)據(jù)的整體顏色方案、要將內(nèi)容傳達(dá)給消費(fèi)者的情態(tài)、高階交互模型和/或可以在宏級應(yīng)用于內(nèi)容數(shù)據(jù)的其它設(shè)計(jì)元素。宏級方案的示例可以是世界方案,將參考圖3-圖5對此進(jìn)行詳細(xì)討論。
中間級布置方案可以包括一組內(nèi)容數(shù)據(jù)元素的布置和/或設(shè)計(jì)。為了示出中間級方案的各方面,考慮具有將內(nèi)容數(shù)據(jù)組織成一個或多個部分的高級結(jié)構(gòu)的示例宏級方案,其中每個部分包含一個或多個內(nèi)容數(shù)據(jù)元素。在這樣的示例中,安排的中間級方案可以包括用于部分中的每一個的各種設(shè)計(jì)方面,諸如每個部分中的數(shù)據(jù)元素的布置,要應(yīng)用于部分中的每一個的顏色方案、待應(yīng)用的不同情態(tài)等等。關(guān)于中間級方案的進(jìn)一步細(xì)節(jié)將在下面關(guān)于圖5進(jìn)行討論。
如上所概述,布局可以包括針對內(nèi)容數(shù)據(jù)114中的內(nèi)容數(shù)據(jù)元素的每一個的微級方案。在一些配置中,微級方案可以根據(jù)內(nèi)容數(shù)據(jù)元素的類型而變化。例如,對于文本內(nèi)容數(shù)據(jù)元素,微級方案可以包括用于文本的字體設(shè)計(jì),諸如字體大小、字體顏色、字樣等等。用于文本內(nèi)容數(shù)據(jù)元素的微級方案還可以包括行和段落間距、文本對齊、項(xiàng)目符號或編號等。對于圖像內(nèi)容數(shù)據(jù)元素,微級方案可以包括圖像的大小、位置、縱橫比和/或圖像的其他方面。本文所描述的技術(shù)還可以處理微級內(nèi)容的組合,諸如帶標(biāo)題的圖像。將關(guān)于圖5描述關(guān)于內(nèi)容數(shù)據(jù)元素和微級方案的附加細(xì)節(jié)。應(yīng)當(dāng)理解,上述宏級方案、中間級方案和微級方案僅用于說明,并且不應(yīng)被解釋為限制。附加的布局方案可以包含在除了本文所描述的布局之外的布局中,并且并非所描述的每個方案都可用于生成的布局。
一旦生成布局,定義布局的數(shù)據(jù)和內(nèi)容數(shù)據(jù)可以被傳送作為輸出,為了說明的目的,這里將其稱為“內(nèi)容和布局?jǐn)?shù)據(jù)122”。關(guān)于布局生成引擎108以及內(nèi)容和布局?jǐn)?shù)據(jù)122的附加細(xì)節(jié)在下面關(guān)于圖2-圖9提供。內(nèi)容和布局?jǐn)?shù)據(jù)122然后可以被發(fā)送到呈現(xiàn)設(shè)備110并且被展現(xiàn)給內(nèi)容的消費(fèi)者132以供消費(fèi)或展現(xiàn)給作者102以用于測試和/或?qū)忛喣康?。呈現(xiàn)設(shè)備110可以是PC、桌面型工作站、膝上型計(jì)算機(jī)或平板電腦、筆記本、PDA、電子書閱讀器、智能電話、可佩戴式計(jì)算設(shè)備(諸如智能手表、智能眼鏡、虛擬現(xiàn)實(shí)頭戴式顯示器)、游戲控制臺、機(jī)頂盒、消費(fèi)電子設(shè)備、服務(wù)器計(jì)算機(jī)或具有與其相關(guān)聯(lián)的顯示器并且能夠根據(jù)內(nèi)容和布局?jǐn)?shù)據(jù)122呈現(xiàn)內(nèi)容的任何其他計(jì)算設(shè)備。如果內(nèi)容數(shù)據(jù)114的輸出格式是打印頁面,則呈現(xiàn)設(shè)備110還可以包括打印機(jī)。此外,內(nèi)容數(shù)據(jù)114可以包括音頻信號,并且在該情況下,呈現(xiàn)設(shè)備110還可以包括音頻呈現(xiàn)設(shè)備,諸如MP3播放器。
可以理解,內(nèi)容和布局?jǐn)?shù)據(jù)122的示例是為了說明的目的而提供的,并且不被解釋為限制。如可以理解的,來自任何資源的任何信息、范例、過程或數(shù)據(jù)結(jié)構(gòu)可以與本文描述的技術(shù)一起使用以處理可以用作處理的數(shù)據(jù)或輸出(例如,內(nèi)容和布局?jǐn)?shù)據(jù)122)的任何類型的數(shù)據(jù)。另外,雖然本文描述的技術(shù)涉及“內(nèi)容”或“布局?jǐn)?shù)據(jù)”的處理,但是應(yīng)當(dāng)理解,“內(nèi)容”和/或“布局?jǐn)?shù)據(jù)”可以是任何形式的媒體的一部分、與任何形式的媒體結(jié)合使用,所述媒體例如視頻、靜像或定義2D或3D顯示環(huán)境的任何其它形式的數(shù)據(jù)。例如,通過本文描述的技術(shù)生成、處理或獲得的任何數(shù)據(jù)可以適應(yīng)任何2D或3D顯示環(huán)境,諸如由谷歌眼鏡(GOOGLE GLASS)或OCULUS RIFT使用的顯示環(huán)境。還可以理解,通過本文所描述的技術(shù)獲得、處理或生成的任何數(shù)據(jù)可以是其他形式,諸如具有僅音頻格式的那些數(shù)據(jù),或具有與視覺或非視覺數(shù)據(jù)相關(guān)的音頻分量的格式。因此,使用本文所描述的技術(shù)處理的數(shù)據(jù)可以包括描述布局和/或內(nèi)容的轉(zhuǎn)錄和/或翻譯。
根據(jù)另外的方面,布局生成引擎108還能夠獲得用于生成布局的附加數(shù)據(jù),諸如呈現(xiàn)設(shè)備的設(shè)備能力118、消費(fèi)者偏好120和/或潛在的其他數(shù)據(jù)。設(shè)備能力118可以包括呈現(xiàn)設(shè)備110的各種規(guī)范,諸如分辨率、取向、存儲器約束、圖形能力、瀏覽器能力等。設(shè)備能力118還可以包括靜態(tài)性/動態(tài)性,例如與使用數(shù)字顯示器的通常動態(tài)體驗(yàn)不同的打印頁面。消費(fèi)者偏好120可以包括消費(fèi)者132可以據(jù)此較喜歡要展現(xiàn)內(nèi)容的各種特征和/或風(fēng)格,諸如內(nèi)容的整體結(jié)構(gòu)、顏色方案、背景、動畫風(fēng)格和其它。消費(fèi)者偏好120可以由消費(fèi)者132通過呈現(xiàn)設(shè)備110或通過消費(fèi)者132可訪問的任何其他計(jì)算設(shè)備提供給布局生成引擎108。
當(dāng)生成布局時,布局生成引擎108還可以考慮上述附加數(shù)據(jù)。然而,應(yīng)當(dāng)注意,在布局生成引擎108的各種類型的輸入之間可能存在沖突。例如,意圖數(shù)據(jù)116和消費(fèi)者偏好120可能本質(zhì)上是矛盾的。在這種場景中,需要根據(jù)各種規(guī)則和所涉及的具體情形來解決沖突。例如,內(nèi)容數(shù)據(jù)114可以包含作者可能想要確保所生成的布局匹配其公司風(fēng)格和意圖的優(yōu)質(zhì)內(nèi)容/工作產(chǎn)品,并且因此給予消費(fèi)者偏好120很小的權(quán)重。相反,當(dāng)例如消費(fèi)者具有與顏色選擇、字體大小和動畫樣式有關(guān)的可訪問性關(guān)注時,可以給消費(fèi)者偏好120更高的權(quán)重。如下所述,在一些場景中,可以從包含相關(guān)內(nèi)容數(shù)據(jù)而不是由作者102指定的現(xiàn)有格式化文檔中推斷出意圖數(shù)據(jù)116,并且可以通過將更多權(quán)重分配給消費(fèi)者偏好120而分配給不是意圖數(shù)據(jù)116來生成這樣的場景中的布局。
應(yīng)當(dāng)理解,上述內(nèi)容收集/生成模塊106和布局生成引擎108的各種功能可以被實(shí)現(xiàn)為提供給作者102用于內(nèi)容創(chuàng)作以及提供給消費(fèi)者132用于內(nèi)容消費(fèi)的Web服務(wù)。例如,作者102可以通過web瀏覽器訪問這些功能以生成用于內(nèi)容的布局。內(nèi)容還可以是消費(fèi)者132通過其中在所生成的布局中展現(xiàn)內(nèi)容的web瀏覽器可訪問的。
應(yīng)進(jìn)一步理解,雖然上文描述了內(nèi)容收集/生成模塊106和布局生成引擎108在服務(wù)器計(jì)算機(jī)104上執(zhí)行,但是這些模塊中的任何模塊或其一部分可以在用戶計(jì)算設(shè)備130和/或呈現(xiàn)設(shè)備110上執(zhí)行。例如,內(nèi)容收集/生成模塊106和布局生成引擎108的功能可以被實(shí)現(xiàn)為在作者102操作的用戶計(jì)算設(shè)備130上運(yùn)行的軟件應(yīng)用。在另一示例中,內(nèi)容收集/生成模塊106的一些功能(諸如從作者102獲得作者輸入112和/或從內(nèi)容資源126檢索內(nèi)容)可以實(shí)現(xiàn)為在用戶計(jì)算設(shè)備130上執(zhí)行的客戶端軟件應(yīng)用。客戶端軟件應(yīng)用可以將所獲得的內(nèi)容數(shù)據(jù)114和意圖數(shù)據(jù)116發(fā)送到布局生成引擎108以用于布局生成。
類似地,布局生成引擎108的一些功能可以被實(shí)現(xiàn)為可以在呈現(xiàn)設(shè)備110上執(zhí)行的客戶端軟件應(yīng)用。例如,客戶端軟件應(yīng)用可以包括和實(shí)現(xiàn)諸如所生成的布局的簡單調(diào)整的功能,而不聯(lián)系服務(wù)器計(jì)算機(jī)104。該客戶端軟件應(yīng)用可以被進(jìn)一步配置為收集諸如設(shè)備能力118和消費(fèi)者偏好120之類的數(shù)據(jù),并且發(fā)送給布局生成引擎108以用于布局生成或主要布局修改。
現(xiàn)在轉(zhuǎn)向圖2,其中示出了說明本文展現(xiàn)的用于基于用戶意圖的內(nèi)容創(chuàng)作的方法和技術(shù)的另外方面的框圖。如圖2所示,內(nèi)容收集/生成模塊106可以包括內(nèi)容/意圖引入模塊204,其可以用于從作者102獲得內(nèi)容數(shù)據(jù)114、他/她對內(nèi)容數(shù)據(jù)114的意圖數(shù)據(jù)116以及由作者102提供的其他數(shù)據(jù)。在一些方面,內(nèi)容/意圖引入模塊204可以通過如上所述的用戶界面從作者102獲取數(shù)據(jù),其中作者102可以鍵入文本、上傳圖像、提供用于內(nèi)容數(shù)據(jù)114的元數(shù)據(jù),指定他/她對內(nèi)容數(shù)據(jù)114的意圖,和/或執(zhí)行其他操作以傳達(dá)相關(guān)信息。例如,用戶可以通過從計(jì)算機(jī)生成的選擇的列表中選擇項(xiàng)目來指定意圖或相關(guān)信息,其中所述選擇是基于當(dāng)前理解關(guān)系的。
除了直接從作者102獲得內(nèi)容數(shù)據(jù)114和/或意圖數(shù)據(jù)116之外,還可以從各種內(nèi)容資源126獲得內(nèi)容數(shù)據(jù)114和/或意圖數(shù)據(jù)116。內(nèi)容收集模塊206可以用于收集來自內(nèi)容資源126的內(nèi)容/意圖。然后可以將收集的內(nèi)容/意圖發(fā)送到內(nèi)容/意圖引入模塊204,以與由作者102直接提供的內(nèi)容/意圖組合。
根據(jù)另外的方面,內(nèi)容收集/生成模塊106還可以包括擴(kuò)充模塊208,用于提供附加功能以增強(qiáng)內(nèi)容創(chuàng)作服務(wù)。例如,擴(kuò)充模塊208可以基于在創(chuàng)作過程期間由作者102提供的內(nèi)容數(shù)據(jù)114向作者102提供內(nèi)容建議。擴(kuò)充模塊208還可以生成樣本內(nèi)容作為作者102開始創(chuàng)作過程的起點(diǎn)??梢酝ㄟ^內(nèi)容收集模塊206來收集建議的內(nèi)容和/或樣本內(nèi)容??梢酝ㄟ^內(nèi)容/意圖引入模塊204將建議的內(nèi)容和/或所生成的樣本數(shù)據(jù)展現(xiàn)給作者102,其中作者102可以對建議的內(nèi)容和/或所生成的樣本數(shù)據(jù)進(jìn)行進(jìn)一步選擇。關(guān)于擴(kuò)充模塊208的附加細(xì)節(jié)將在下面關(guān)于圖13-圖18給出。
然后可以將所收集和/或生成的內(nèi)容數(shù)據(jù)114和意圖數(shù)據(jù)116提供為輸出,并且該輸出可以由布局生成引擎108消費(fèi)用于布局生成。在圖2所示的示例中,內(nèi)容數(shù)據(jù)114和意圖數(shù)據(jù)116可以被組織為核心內(nèi)容數(shù)據(jù)模型212并且存儲在內(nèi)容和類同數(shù)據(jù)存儲庫210中。如下面詳述的,類同數(shù)據(jù)存儲庫210可以是內(nèi)容之間的類同度或關(guān)系的存儲庫。類同數(shù)據(jù)存儲庫210可以包括各種項(xiàng)目,諸如層級、聚類、強(qiáng)調(diào)、概要、列表和/或相關(guān)內(nèi)容。關(guān)于核心內(nèi)容數(shù)據(jù)模型212的細(xì)節(jié)將在下面結(jié)合圖3提供。布局生成引擎108可以從內(nèi)容和類同數(shù)據(jù)存儲庫210檢索核心內(nèi)容數(shù)據(jù)模型212,并且基于核心內(nèi)容數(shù)據(jù)模型212生成布局。
根據(jù)一些方面,當(dāng)生成布局時,布局生成引擎108還可以針對各種布局資源來查閱布局資源數(shù)據(jù)存儲庫214。布局資源數(shù)據(jù)存儲庫214可以包含用于宏級方案、中間級方案和/或微級方案的各種模板。例如,布局資源數(shù)據(jù)存儲庫214可以存儲可以用作用于展現(xiàn)內(nèi)容數(shù)據(jù)的宏級方案的一個或多個世界方案。布局資源數(shù)據(jù)存儲庫214還可以包含可以用于生成中間級方案的模板的一個或多個對象,如將關(guān)于圖8B詳細(xì)討論的。布局資源數(shù)據(jù)存儲庫214還可以包含對用戶意圖的各種解釋。例如,對于對圖像進(jìn)行強(qiáng)調(diào)的用戶意圖,解釋可以包括將圖像尺寸增大為大于其旁邊的圖像,將圖像放置在頁面或屏幕中使得其距周圍內(nèi)容有大的空間,調(diào)整圖像大小以便當(dāng)展現(xiàn)時占據(jù)整個屏幕,和/或其他可能的解釋。解釋可以具有與其相關(guān)聯(lián)的一個或多個規(guī)則。規(guī)則可以描述不同解釋之間的關(guān)系、可以采用特定解釋的條件、當(dāng)采用解釋時的建議的格式化命令,等等。布局資源數(shù)據(jù)存儲庫214還可以包括可應(yīng)用于內(nèi)容數(shù)據(jù)114的其他資源,諸如顏色方案和動畫方案。關(guān)于布局的生成的附加細(xì)節(jié)將在下面參照圖6-圖8給出。
如圖2所示,所生成的布局以及內(nèi)容數(shù)據(jù)然后可以被輸出為布局就緒視圖模型216并且存儲在布局就緒視圖模型數(shù)據(jù)存儲庫218中。從布局就緒視圖模型數(shù)據(jù)存儲庫218,呈現(xiàn)設(shè)備110可以獲得并呈現(xiàn)布局就緒視圖模型216以將生成的布局中的內(nèi)容數(shù)據(jù)展現(xiàn)給消費(fèi)者132或作者102。關(guān)于布局就緒視圖模型216的其他方面在下面參考圖3來提供。
根據(jù)另外的方面,可以采用反饋模塊220來從作者102獲得關(guān)于所展現(xiàn)的布局的反饋224。取決于反饋的性質(zhì),反饋可以被發(fā)送到布局生成引擎108以調(diào)整生成的布局,或者它可以被發(fā)送到內(nèi)容收集/生成模塊106以實(shí)現(xiàn)布局的重新生成。作為示例而非限制,作者102可以提供改變他/她最初提供的意圖的意圖反饋,并且這種意圖反饋可以通過內(nèi)容/意圖引入模塊204來獲取,并且用于修改用于生成布局的核心內(nèi)容數(shù)據(jù)模型212。可選地或另外地,作者102可以通過例如請求要展現(xiàn)的替代布局,指出所生成的布局存在何種問題,提供對布局的不滿意部分的示例解決方案或甚至提供要用于某些內(nèi)容數(shù)據(jù)元素的特定格式化命令來提供用于細(xì)化所生成的布局的反饋。關(guān)于反饋處理的進(jìn)一步細(xì)節(jié)將在下面關(guān)于圖10-圖12給出。
圖3示出了包含在核心內(nèi)容數(shù)據(jù)模型212中的詳細(xì)數(shù)據(jù)元素。如圖3所示,內(nèi)容和類同數(shù)據(jù)存儲庫210可以包含一個或多個核心內(nèi)容數(shù)據(jù)模型212A-212N,這里可以單獨(dú)地稱為核心內(nèi)容數(shù)據(jù)模型212或統(tǒng)稱為核心內(nèi)容數(shù)據(jù)模型212。核心內(nèi)容數(shù)據(jù)模型212中的每個可以對應(yīng)于作為一個輸出展現(xiàn)的創(chuàng)作的內(nèi)容。如圖3所示,核心內(nèi)容數(shù)據(jù)模型212可以包括規(guī)范化內(nèi)容數(shù)據(jù)114、意圖數(shù)據(jù)116,內(nèi)容關(guān)聯(lián)數(shù)據(jù)308、元數(shù)據(jù)310和潛在的其他數(shù)據(jù)。規(guī)范化內(nèi)容數(shù)據(jù)114可以包括不具有與其相關(guān)聯(lián)的任何格式化的內(nèi)容數(shù)據(jù)元素。例如,如果規(guī)范化內(nèi)容數(shù)據(jù)114的內(nèi)容數(shù)據(jù)元素包括文本塊,則內(nèi)容數(shù)據(jù)元素可以僅包括文本中所包括的字符的美國信息交換標(biāo)準(zhǔn)代碼(“ASCII”)碼。
核心內(nèi)容數(shù)據(jù)模型212還可以包括描述作者102關(guān)于應(yīng)如何展現(xiàn)內(nèi)容數(shù)據(jù)114的意圖的意圖數(shù)據(jù)116。意圖可以包括作者的顯式或隱式意圖,并且可以由作者102通過指示關(guān)系或選擇內(nèi)容數(shù)據(jù)114中所包含的內(nèi)容數(shù)據(jù)元素的展現(xiàn)選擇來傳達(dá),而不是提供特定/直接格式化命令。作者102的意圖可以包括語義意圖和展現(xiàn)意圖。語義意圖的示例可以包括但不限于順序、組、比較之前/之后、視覺堆棧、增加的強(qiáng)調(diào)、層級和其它。展現(xiàn)意圖的示例可以包括諸如緊湊或松散的間隔、外觀,諸如沒有動畫、適度動畫或主動動畫的現(xiàn)代、傳統(tǒng)或?qū)I(yè)的動畫級別、定時、一次一起顯示這些項(xiàng)目中的全部的展現(xiàn)和/或其他。定義意圖的數(shù)據(jù)在本文中可被稱為意圖數(shù)據(jù)116。
通過利用意圖,作者102可以避免提供特定格式化指令,并且因此允許內(nèi)容數(shù)據(jù)114以適合于不同呈現(xiàn)設(shè)備的各種布置而動態(tài)展現(xiàn),而不偏離作者102的原始意圖。為了便于作者102傳達(dá)他/她的意圖,可以設(shè)計(jì)和提供各種關(guān)系給作者102以供選擇。例如,可以設(shè)計(jì)關(guān)系“強(qiáng)調(diào)”以允許作者102表達(dá)諸如“強(qiáng)調(diào)該文本”或“該元素比該其他元素更重要”的意圖?;谶@樣的意圖,可以例如通過調(diào)整大小、加下劃線、改變顏色和/或可以將文本或元素與其他元素區(qū)分開的任何其他方式來適當(dāng)?shù)馗袷交鄳?yīng)的文本或元素。表I示出了可以被作者102用來描述他/她的意圖的示例關(guān)系的列表。
表I
應(yīng)當(dāng)注意,作者102可能不需要提供上述所有不同類型的意圖。相反,作者102可以從模板中預(yù)定義的意圖數(shù)據(jù)116開始,并且然后在必要時細(xì)化和/或調(diào)整他/她的意圖。如下面將更詳細(xì)地描述的,意圖數(shù)據(jù)116還可以從除作者102之外的其他來源獲得。例如,意圖數(shù)據(jù)116可以從從內(nèi)容資源126檢索的內(nèi)容數(shù)據(jù)的結(jié)構(gòu)或格式化信息導(dǎo)出。當(dāng)從內(nèi)容資源126檢索文章時,文章的結(jié)構(gòu)可以指示文章的標(biāo)題,以及每個部分的標(biāo)題應(yīng)當(dāng)比文章的其他部分被給予更多強(qiáng)調(diào)。類似地,意圖數(shù)據(jù)116還可以從與內(nèi)容數(shù)據(jù)114相關(guān)的其他內(nèi)容或文檔推斷,諸如其中可以檢索內(nèi)容數(shù)據(jù)114的、由作者102提供的文檔,或者具有與作者102想要的風(fēng)格類似的風(fēng)格的文檔?;谒鶎?dǎo)出或推斷的意圖數(shù)據(jù)116,作者102可進(jìn)一步進(jìn)行調(diào)整或添加以傳達(dá)他/她對內(nèi)容數(shù)據(jù)114的意圖。
根據(jù)另外的方面,核心內(nèi)容數(shù)據(jù)模型212還可以包括描述內(nèi)容數(shù)據(jù)114中的內(nèi)容數(shù)據(jù)元素之間的關(guān)系和/或可以與內(nèi)容數(shù)據(jù)114相關(guān)的其他內(nèi)容的內(nèi)容關(guān)聯(lián)數(shù)據(jù)308。例如,規(guī)范化內(nèi)容數(shù)據(jù)114可以包括具有2400×3200的原始分辨率的圖像。當(dāng)在具有低分辨率顯示器的智能電話設(shè)備上展現(xiàn)這種高分辨率圖像時,可以不需要將原始圖像發(fā)送到智能電話。相反,原始圖像可以被下采樣以生成具有較低分辨率的圖像以被發(fā)送到智能電話。在這種場景中,內(nèi)容關(guān)聯(lián)數(shù)據(jù)308可以用于指示原始圖像具有與其相關(guān)聯(lián)的較低分辨率的圖像,并且可以在適當(dāng)時使用。類似地,當(dāng)對該圖像進(jìn)行縮小時,該圖像可能變得過小而不可見。在這種場景中,可使用裁剪來集中于圖像的被作者視為重要的區(qū)域。
此外,如將關(guān)于圖13-15詳細(xì)討論的,可以從內(nèi)容資源126探索和檢索與內(nèi)容數(shù)據(jù)114相關(guān)的內(nèi)容。內(nèi)容關(guān)聯(lián)數(shù)據(jù)308還可以用于描述所檢索到的內(nèi)容與內(nèi)容數(shù)據(jù)114之間的關(guān)系。應(yīng)當(dāng)注意,在內(nèi)容數(shù)據(jù)114的生命周期期間,可以連續(xù)地識別和/或檢索相關(guān)內(nèi)容,并且因此可以周期性地更新內(nèi)容關(guān)聯(lián)數(shù)據(jù)308以反映新識別的相關(guān)內(nèi)容。
根據(jù)內(nèi)容數(shù)據(jù)114,內(nèi)容數(shù)據(jù)元素中的一些可以具有與其相關(guān)聯(lián)的元數(shù)據(jù)。這樣的元數(shù)據(jù)可以存儲在核心內(nèi)容數(shù)據(jù)模型212的元數(shù)據(jù)310中。例如,元數(shù)據(jù)310可以包括內(nèi)容數(shù)據(jù)114中所包含的圖片的元數(shù)據(jù),諸如拍攝圖片的位置、圖片被拍攝的時間、和/或圖片的大小。雖然元數(shù)據(jù)310可能不是由作者102直接指定的意圖,但是它在導(dǎo)出或推斷作者102的意圖和/或在生成內(nèi)容數(shù)據(jù)114的布局時可能是有用的。將意識到,除了這里描述的那些之外,附加數(shù)據(jù)元素可以包含在核心內(nèi)容數(shù)據(jù)模型212中,并且不是描述的每個數(shù)據(jù)元素都可供創(chuàng)作的內(nèi)容使用。
圖3進(jìn)一步示出了存儲在布局就緒視圖模型數(shù)據(jù)存儲庫218中的布局就緒視圖模型216A-216N(其在本文中可以被單獨(dú)地稱為布局就緒視圖模型216或統(tǒng)稱為布局就緒視圖模型216)和可以包含在布局就緒視圖模型216中的數(shù)據(jù)元素。布局就緒視圖模型216可以由布局生成引擎108基于內(nèi)容和類同數(shù)據(jù)存儲庫210中的核心內(nèi)容數(shù)據(jù)模型212生成。當(dāng)生成布局就緒視圖模型216時,布局生成引擎108可以將意圖數(shù)據(jù)116變換成可以一起定義內(nèi)容數(shù)據(jù)114的布局的各種格式化配置。這些格式化配置和內(nèi)容數(shù)據(jù)114可以存儲在布局就緒視圖模型216中并且準(zhǔn)備就緒以由呈現(xiàn)設(shè)備110呈現(xiàn)。
具體來說,圖3中所示的布局就緒視圖模型216包括要展現(xiàn)的規(guī)范化的內(nèi)容數(shù)據(jù)114,以及內(nèi)容數(shù)據(jù)114的布局304。如上所述,用于內(nèi)容數(shù)據(jù)的布局可以包括用于展現(xiàn)內(nèi)容數(shù)據(jù)的宏級方案、用于內(nèi)容數(shù)據(jù)的一組內(nèi)容數(shù)據(jù)元素的中間級布置方案,以及用于內(nèi)容數(shù)據(jù)元素中的每個的微級方案。圖3中所示的布局304包括可以用作布局304的宏級方案的世界方案312。世界配置312可以指定布局304的總體結(jié)構(gòu),并且描述高階交互假設(shè)、布局約束、和/或潛在的其他約束/假設(shè)。圖4示出了可以在內(nèi)容數(shù)據(jù)114的布局304中使用的若干示例世界方案。在表II中提供了圖4所示的世界方案中的每一個的詳細(xì)描述。應(yīng)當(dāng)理解,表II中展現(xiàn)的世界方案僅用于說明,并且不應(yīng)被解釋為限制。除了本文描述的那些之外,可以設(shè)計(jì)和利用附加的世界方案。
表II
如圖4所示,示例世界方案中的每個可以包括一個或多個部分404(其在本文中可以單獨(dú)稱為部分404或統(tǒng)稱為部分404)。部分404可以用作中間級方案以將內(nèi)容數(shù)據(jù)元素布置為組,其中每個組填充一個或幾個頁面或屏幕。一個示例部分可以包括被縮放以利用一些標(biāo)題文本被疊加在圖像的兩個不同區(qū)域上的一些題目文本來填充整個屏幕的單個圖像。另一示例部分可以包括分割成三列的大文本塊,其圍繞具有其中的視頻縮略圖的16×9縱橫比視頻回放微件。這些部分可以被設(shè)計(jì)為一般化和多用途的,使得在建立各種各樣的世界方案期間,可以將整屏幕的內(nèi)容的部分用作構(gòu)建塊。在一些配置中,所述部分可以一次包括屏幕,但是它們也可以以任何邏輯方式延伸超過屏幕。例如,觀看30個密切相關(guān)的圖像,它們可以被示為聚類在一起,但是滾動離開屏幕。在這樣的配置中,聚類的末尾可以包括在下一內(nèi)容之前的空白空間。下面將參照圖8A和8B詳細(xì)討論用于部分404的布置方案的生成。
如上所述,世界方案可以存儲在布局資源數(shù)據(jù)存儲庫214中。另外或可選地,世界方案可以存儲在布局生成引擎108可訪問的任何數(shù)據(jù)存儲設(shè)備中。應(yīng)當(dāng)進(jìn)一步理解,第三方也可以構(gòu)建可以并入到系統(tǒng)中的、存儲在布局資源數(shù)據(jù)存儲庫214中和/或由布局生成引擎108利用的世界方案。
返回參考圖3,布局304還可以包括部分布置314A-314C,其每一個可以描述世界配置312的對應(yīng)部分404的布置或設(shè)計(jì)。由于每個部分404通??梢园ㄒ粋€或多個內(nèi)容數(shù)據(jù)元素,所以這些內(nèi)容數(shù)據(jù)元素的格式化可以用作布局的微級方案。這樣的微級方案可以在包含于布局304中的元素格式配置316A-316C中進(jìn)行描述。
應(yīng)當(dāng)注意,布局就緒視圖模型216的上述數(shù)據(jù)元素僅用于說明。除了本文所描述的那些之外,附加數(shù)據(jù)元素可以包含在核心內(nèi)容數(shù)據(jù)模型212中,并且并非所描述的每個數(shù)據(jù)元素都可用于創(chuàng)作的內(nèi)容。例如,包含在世界方案312中的部分404本身也可以包括世界方案312,并且因此導(dǎo)致嵌套的世界方案或“世界內(nèi)世界”方案。類似地,部分404可以嵌套在另一個部分中,從而創(chuàng)建嵌套的部分布置。在這種場景中,布局就緒視圖模型216中所包含的數(shù)據(jù)元素可以包含比圖3所示的更多的信息。還應(yīng)當(dāng)注意,根據(jù)嵌套思想,大量的世界方案和/或部分布置可以被創(chuàng)建并用于生成用于內(nèi)容數(shù)據(jù)114的布局304。
還應(yīng)當(dāng)意識到,世界方案、部分布置和元素格式配置到宏級方案、中間級方案和微級方案的映射僅是說明性的,并且不應(yīng)被解釋為限制。可以采用構(gòu)建宏級方案、中間級方案和微級方案的各種其他方式。例如,在嵌套的世界方案中,中間級方案可以被構(gòu)建為包括嵌套在另一世界方案內(nèi)的世界方案,其可以包括高級結(jié)構(gòu)以及嵌套的世界方案的部分布置??商娲兀短椎氖澜绶桨缚梢员徽J(rèn)為是宏級方案,并且嵌套的世界的部分可以被認(rèn)為是中間級方案。
可以利用圖5A和5B中所示的示例布局進(jìn)一步解釋布局304、世界方案312、部分404以及該部分中所包含的內(nèi)容數(shù)據(jù)元素。圖5A示出了利用包含部分502的全景世界方案的示例布局。在部分502內(nèi),存在若干內(nèi)容數(shù)據(jù)元素504:部分標(biāo)題、文本塊1、文本塊2、圖像1、題目1、圖像2、題目2、圖像3和題目3。這些內(nèi)容數(shù)據(jù)元素504被布置在三列中:第一列是用于部分標(biāo)題;第三列用于圖像3及其題目3;并且第二列用于剩余的內(nèi)容數(shù)據(jù)元素504。在第二列中,內(nèi)容數(shù)據(jù)元素504還可以被布置成兩個子列,每個子列保存文本塊和圖像以及圖像題目??梢栽趯?yīng)于部分502的部分布置314中指定部分502的這種設(shè)計(jì)。此外,部分布置314還可以指定部分502的其他方面,諸如頁邊距、每個列/子列的寬度、每列內(nèi)的內(nèi)容數(shù)據(jù)元素504的相對位置、部分的動畫等。此外,內(nèi)容數(shù)據(jù)元素504中的每個可以具有其自己的格式配置,諸如大小、顏色、字體類型等。每個單獨(dú)的內(nèi)容數(shù)據(jù)元素504的格式配置可以存儲在元素格式配置316中。
當(dāng)選擇不同的方案用于展現(xiàn)內(nèi)容數(shù)據(jù)元素504時,部分布置314和元素格式配置316可以是不同的,并且可以適用于所選擇的世界方案。圖5B示出了在垂直世界方案中展現(xiàn)圖5A所示的內(nèi)容數(shù)據(jù)元素504的布局。在圖5B所示的布局中,內(nèi)容數(shù)據(jù)元素504也被分組在一個部分512中,并且它們被布置成行而不是列。其他布置,諸如頁邊距、行間距、部分512的動畫也可以不同于部分502的布置。類似地,在垂直世界方案中,元素504中的每個可以被不同地格式化,并且因此布局304中所包含的元素格式配置316也可以不同。
應(yīng)當(dāng)理解,圖5A和圖5B中所示的布局僅僅是說明性的,并且可以利用布置內(nèi)容數(shù)據(jù)元素504的其他方式。例如,在圖5A所示的全景世界方案的部分502中所包含的內(nèi)容數(shù)據(jù)元素504可以布局在圖5B所示的垂直世界方案中的不同部分512中。不是部分502和512中的每一個都可以有部分標(biāo)題。在圖5A中所示的部分502中所包含的內(nèi)容數(shù)據(jù)元素504也可以被組織在一個列中,而不是多個列或子列中。另外,內(nèi)容數(shù)據(jù)元素504可以利用各種其他世界方案和/或這些世界方案的組合來布局。
現(xiàn)在轉(zhuǎn)到圖6,下面示出和描述了用于內(nèi)容創(chuàng)作的例程600的各方面。應(yīng)當(dāng)理解,本文公開的方法的操作不一定以任何特定順序展現(xiàn),并且以替換順序執(zhí)行操作中的一些或全部是可能的并且是可預(yù)期的。為了便于描述和說明,以展示的順序展現(xiàn)操作。在不脫離所附權(quán)利要求的范圍的情況下,可以添加、省略和/或同時執(zhí)行操作。
還應(yīng)當(dāng)理解的是,所圖示的方法可以在任何時候結(jié)束,而無需全部執(zhí)行。方法的一些或全部的操作和/或基本上等同的操作,可以通過包含在計(jì)算機(jī)存儲介質(zhì)上的如下文所定義的計(jì)算機(jī)可讀指令的執(zhí)行來實(shí)施。如在說明書和權(quán)利要求書中所使用的術(shù)語“計(jì)算機(jī)可讀指令”及其變體在此擴(kuò)展地用來包含例程、應(yīng)用、應(yīng)用模塊、程序模塊、程序、組件、數(shù)據(jù)結(jié)構(gòu)、算法等。計(jì)算機(jī)可讀指令可以實(shí)現(xiàn)在各種系統(tǒng)配置中,包括單處理器或多處理器系統(tǒng)、微型計(jì)算機(jī)、大型計(jì)算機(jī)、個人計(jì)算機(jī)、手持式計(jì)算設(shè)備、基于微處理器的、可編程的消費(fèi)電子設(shè)備、其組合以及類似物。
因此,應(yīng)當(dāng)意識到,本文所描述的邏輯操作可以實(shí)現(xiàn)為(1)運(yùn)行于計(jì)算系統(tǒng)上的計(jì)算機(jī)實(shí)現(xiàn)的動作或程序模塊的序列,和/或(2)實(shí)現(xiàn)為計(jì)算系統(tǒng)內(nèi)的互連的機(jī)器邏輯電路或電路模塊。實(shí)現(xiàn)方式是取決于計(jì)算系統(tǒng)的性能和其它要求的選擇問題。因此,本文所描述的邏輯操作可以多樣地稱為狀態(tài)、操作、結(jié)構(gòu)設(shè)備、動作或模塊。這些操作、結(jié)構(gòu)設(shè)備、動作和模塊可以利用軟件、固件、專用數(shù)字邏輯及其任意組合來實(shí)現(xiàn)。
如下面將結(jié)合圖19-圖21更詳細(xì)地描述的,例程600的操作在此被描述為至少部分地由諸如內(nèi)容收集/生成模塊106和布局生成引擎108之類的應(yīng)用來實(shí)現(xiàn)。盡管以下圖示涉及內(nèi)容收集/生成模塊106和布局生成引擎108,但是可以理解,例程600的操作也可以以許多其他方式來實(shí)現(xiàn)。例如,例程600可以由實(shí)現(xiàn)內(nèi)容收集/生成模塊106和布局生成引擎108的功能的一個模塊來實(shí)現(xiàn)。另外,例程600的操作中的一個或多個可以替代地或附加地至少部分地由圖19中所示的web瀏覽器應(yīng)用1910或結(jié)合圖20的應(yīng)用服務(wù)2024工作的另一應(yīng)用來實(shí)現(xiàn)。
參考圖6,例程600開始于操作602,其中獲得內(nèi)容數(shù)據(jù)114。如上面關(guān)于圖1和圖2所討論的,內(nèi)容數(shù)據(jù)114可以由作者102,例如通過用戶界面或通過內(nèi)容收集/生成模塊106暴露的API來提供。另外,可以由內(nèi)容收集/生成模塊106從各種內(nèi)容資源126來檢索內(nèi)容數(shù)據(jù)114。
從操作602,例程600進(jìn)行到操作604,其中可以獲得內(nèi)容數(shù)據(jù)114的意圖數(shù)據(jù)116。如上所述,意圖數(shù)據(jù)116描述了關(guān)于如何在不使用特定格式化指令的情況下將內(nèi)容數(shù)據(jù)114展現(xiàn)給消費(fèi)者的作者102的意圖。意圖數(shù)據(jù)116可以通過描述內(nèi)容數(shù)據(jù)114中的內(nèi)容元素中的兩個或更多個之間的關(guān)系和/或通過指定內(nèi)容數(shù)據(jù)元素的展現(xiàn)選擇來描述意圖。意圖數(shù)據(jù)116還可以指示內(nèi)容數(shù)據(jù)114的預(yù)期用途。與內(nèi)容數(shù)據(jù)114類似,可以通過用戶界面或通過內(nèi)容收集/生成模塊106所暴露的API從作者102獲得意圖數(shù)據(jù)116。另外或可替代地,意圖數(shù)據(jù)116或意圖數(shù)據(jù)116的至少一部分可從模板獲得或從內(nèi)容數(shù)據(jù)114導(dǎo)出,例如通過內(nèi)容數(shù)據(jù)114的底層結(jié)構(gòu)。
接下來,在操作606,確定是否已經(jīng)接收到用于生成布局304的指令。如果未接收到用于生成布局304的指令,則例程600可返回到操作602以獲得更多內(nèi)容數(shù)據(jù)114或返回到操作604以獲得更多意圖數(shù)據(jù)116。如果在操作606確定已經(jīng)接收到用于生成布局304的指令,則例程600進(jìn)行到操作608,其中可以基于所獲得的意圖數(shù)據(jù)116針對內(nèi)容數(shù)據(jù)114來生成布局304。
如上所述,布局304可以由布局生成引擎108基于包含內(nèi)容數(shù)據(jù)114和意圖數(shù)據(jù)116的核心內(nèi)容數(shù)據(jù)模型212來生成??梢陨刹季?04以適合內(nèi)容數(shù)據(jù)114并且還滿足作者102的意圖。布局304可以包括多級配置,其可以包含宏級方案、中間級方案和微級方案。根據(jù)一種機(jī)制,宏級方案可以是可以指定布局的總體結(jié)構(gòu)、描述高階交互假設(shè)、布局約束和/或潛在的其他約束/假設(shè)的世界方案。
世界方案可以包括將內(nèi)容數(shù)據(jù)元素布置為組的一個或多個部分,其中每個組對應(yīng)于一個部分并填充一個或幾個頁面或屏幕。世界方案的部分還可以包括其他世界方案,從而形成嵌套的世界方案。應(yīng)當(dāng)理解,不同部分的布置在風(fēng)格和配置方面可以是類似的,以形成內(nèi)容的一致展現(xiàn)。然而,這些布置也可以不同。例如,一個部分中的內(nèi)容結(jié)構(gòu)、頁邊距、顏色方案、樣式、背景可以與另一部分不同。在嵌套的世界方案中,嵌套在一個部分中的世界方案也可能不同于嵌套在另一個部分中的世界方案。如果存在嵌套的世界方案,則可以將部分布置與嵌套的世界方案一起用作布局的中間級方案。此外,內(nèi)容數(shù)據(jù)元素中的每個可以具有其自己的格式配置,并且元素格式配置可以用作微級方案。
如上所述,布局生成引擎108可以訪問在生成布局304時可以利用的其他信息。例如,可以從呈現(xiàn)設(shè)備110獲得設(shè)備能力118,其描述呈現(xiàn)設(shè)備的各方面110,諸如分辨率、取向、存儲器約束、圖形能力、瀏覽器能力等。類似地,布局生成引擎108還可以被提供有消費(fèi)者偏好120以指示消費(fèi)者132可能較喜歡內(nèi)容將按此展現(xiàn)的特征和/或風(fēng)格,諸如內(nèi)容的整體結(jié)構(gòu)、顏色方案、背景、動畫樣式和其他。附加信息可以便于布局生成引擎108以滿足作者102和消費(fèi)者132的意圖/偏好并且適合于呈現(xiàn)設(shè)備110的方式來生成用于內(nèi)容數(shù)據(jù)114的布局304。所生成的布局304以及內(nèi)容數(shù)據(jù)114可以作為布局就緒視圖模型216輸出。下面將參照圖7提供關(guān)于本文公開的用于生成用于內(nèi)容數(shù)據(jù)114的布局304的一個機(jī)制的附加細(xì)節(jié)。
從操作608,例程600進(jìn)行到操作610,其中布局就緒視圖模型216可以被發(fā)送到呈現(xiàn)設(shè)備,使得生成的布局304被展現(xiàn)。從操作610,例程600進(jìn)行到操作612,在操作612,例程結(jié)束。
圖7示出了例示用于基于用戶意圖數(shù)據(jù)116生成用于內(nèi)容數(shù)據(jù)114的布局304的方法的各方面的例程700。將結(jié)合圖8A和圖8B描述圖7,其中圖示出在生成布局304期間使用的模板的示例。在一些實(shí)現(xiàn)方式中,例程700可以由上面關(guān)于圖1和圖2描述的布局生成引擎108執(zhí)行。然而,應(yīng)當(dāng)意識到,例程700也可能由圖1和圖2中所示的操作環(huán)境中的其他系統(tǒng)和/或模塊來執(zhí)行。
例程700開始于操作702處,其中可以選擇可用于展現(xiàn)內(nèi)容數(shù)據(jù)114的多個內(nèi)容模板。內(nèi)容模板可以包括對應(yīng)于宏級方案的模板,諸如用于世界方案的模板,和/或?qū)?yīng)于中間級方案和微級方案的模板,諸如世界方案的部分的模板,以及包含在部分中的內(nèi)容數(shù)據(jù)元素的模板。模板中的一些可以進(jìn)一步包括多個子模板,其中子模板中的每個可以被認(rèn)為是一個模板,并且可以被改變或替換為單個單元。這樣,在操作702中選擇的模板可以具有各種尺寸、比例和/或樣式,并且取決于內(nèi)容數(shù)據(jù)的量,所選模板的數(shù)量可以是數(shù)千、數(shù)萬或甚至數(shù)百萬量級。
內(nèi)容模板的選擇可以基于在布局生成引擎108處可用的數(shù)據(jù)(包括核心內(nèi)容數(shù)據(jù)模型212)和/或任何附加信息(諸如設(shè)備能力118和消費(fèi)者偏好120)。在一些實(shí)現(xiàn)方式中,在布局生成引擎108處可用的數(shù)據(jù)(例如意圖數(shù)據(jù)116和/或設(shè)備能力118)可以被轉(zhuǎn)換為一個或多個格式化約束,并且布局生成引擎108可以選擇滿足格式化約束的內(nèi)容模板。例如,當(dāng)展現(xiàn)兩個圖像且第一圖像比第二圖像更強(qiáng)調(diào)時,如意圖數(shù)據(jù)116所指示的,本文中的技術(shù)可以選擇具有在比第二圖像更大的觀看區(qū)域中展現(xiàn)第一圖像的布置的模板。類似地,當(dāng)設(shè)備能力118指示目標(biāo)呈現(xiàn)設(shè)備110是具有小屏幕尺寸的智能電話時,可以選擇適合于在較小屏幕中展現(xiàn)內(nèi)容的模板。
此外,對于一組內(nèi)容數(shù)據(jù)元素,可以選擇多于一個模板。圖8A示出了可以被選擇以展現(xiàn)圖像元素和文本塊元素的示例模板802A-802C。如圖8所示,所有三個模板802A-802C能夠布局圖像和文本塊,但是在布局的圖像和文本塊的位置、取向和其他方面彼此不同。
所選擇的模板可以例如由設(shè)計(jì)者或通過從現(xiàn)有資源檢索被預(yù)先生成,并且存儲在布局資源數(shù)據(jù)存儲庫214中,其中布局生成引擎108可以選擇并檢索模板。根據(jù)模板的類型,還可以以編程方式生成模板。圖8B示出了這種類型的模板。在圖8B中示出了三種紙牌扇面型的模板802D-802F。雖然這三個模板在視覺上彼此不同,但它們都遵循某種算法表示。具體地,模板802D-802F可以用公式表示為α/N,其中α是扇面布局所跨越的度數(shù),并且N是扇面布局中的元素的數(shù)量。對于模板802D,N=3;對于模板802E,N=7;而對于模板802F,N=11?;谠摴?,可以在需要時生成任意數(shù)量N的模板,而不預(yù)先存儲所有可能的模板,從而節(jié)省存儲空間并增加布局生成方法的靈活性。也可以以類似的方式生成其他類型的模板,例如N元素的網(wǎng)格和對象的正弦波??梢砸庾R到,提供這些示例是為了說明的目的,而不應(yīng)解釋為限制,因?yàn)榭梢允褂萌魏纹渌糜谔幚韮?nèi)容布局的算法。
從操作702,例程700進(jìn)行到操作704,其中可以通過在操作702中選擇的模板來對內(nèi)容數(shù)據(jù)114進(jìn)行置換。例如,可以將圖像和文本塊放入模板802A、802B和802C中的每個。當(dāng)需要時,可以稍微修改模板以適應(yīng)內(nèi)容數(shù)據(jù)元素。例如,模板中的一個或多個對象可以被調(diào)整大小、移位、旋轉(zhuǎn)或以其他方式調(diào)整以適合其中包含的內(nèi)容數(shù)據(jù)元素。可替代地,模板本身可以靈活以適應(yīng)內(nèi)容。例如,被圖像垂直地跟隨的文本段落可以被描述而使得圖像開始于緊鄰文本下方,但是對于不同量的文本,模板可以不同地放置圖像。用于內(nèi)容數(shù)據(jù)114中的所有內(nèi)容數(shù)據(jù)元素的模板可共同形成候選布局304。由于對于每組內(nèi)容數(shù)據(jù)元素可存在多個所選模板,所以這些模板的組合可產(chǎn)生多個候選布局304。
從操作704,例程700進(jìn)行到操作706,其中針對候選布局304中的每一個計(jì)算分?jǐn)?shù)。在候選布局304由多個模板組成的情況下,候選布局304的分?jǐn)?shù)可以通過首先計(jì)算每個模板的分?jǐn)?shù),然后組合分?jǐn)?shù)以生成候選布局304的最終分?jǐn)?shù)來計(jì)算。
在一些實(shí)現(xiàn)方式中,根據(jù)一組啟發(fā)式規(guī)則來計(jì)算模板的分?jǐn)?shù),所述啟發(fā)式規(guī)則可以是一般規(guī)則、世界特定規(guī)則和樣式特定規(guī)則的加權(quán)集合。作為示例而非限制,啟發(fā)式規(guī)則可以包括可讀性規(guī)則、擁擠/接近規(guī)則、適合縱橫比或視口規(guī)則、語義匹配規(guī)則和/或潛在的其他規(guī)則??勺x性規(guī)則可以度量例如文本是否具有足夠的對比度以在其背景的上下文中被讀取。擁擠/接近規(guī)則可以度量對象是否如意圖數(shù)據(jù)116、設(shè)備能力118或消費(fèi)者偏好120所要求的那樣彼此靠近或遠(yuǎn)離。適合縱橫比規(guī)則可以度量圖像或文本如何良好地適合于指定的布局。語義匹配規(guī)則可以度量模板的視覺結(jié)果是否表示語義表達(dá)并匹配內(nèi)容數(shù)據(jù)114的元數(shù)據(jù)中的語義提示。
可以基于上述規(guī)則中的每一個來計(jì)算中間分?jǐn)?shù),并且然后對其進(jìn)行歸一化和加權(quán)以生成模板的分?jǐn)?shù)??梢愿鶕?jù)布局生成引擎108的各種輸入(包括意圖數(shù)據(jù)116、設(shè)備能力118、消費(fèi)者偏好120和其他因素)的相對重要性將權(quán)重分配給相應(yīng)的中間分?jǐn)?shù)。例如,基于適合縱橫比規(guī)則計(jì)算的分?jǐn)?shù)可以指示模板將如何良好地滿足設(shè)備能力118。這樣,如果滿足設(shè)備能力118比滿足消費(fèi)者偏好120更重要,則可以將較高的權(quán)重分配給基于適合縱橫比規(guī)則計(jì)算的分?jǐn)?shù)。
類似地,候選布局304中所包含的模板的分?jǐn)?shù)也可在計(jì)算候選布局304的最終分?jǐn)?shù)之前被歸一化、加權(quán)或以其它方式處理。從操作706,例程700進(jìn)行到操作708,其中具有最高分?jǐn)?shù)的候選布局304可以被選擇為用于內(nèi)容數(shù)據(jù)114的布局304,并且與用于呈現(xiàn)的內(nèi)容數(shù)據(jù)114一起存儲在布局就緒視圖模型216中。從操作708,例程700進(jìn)行到操作710,在操作710中例程700終止。
應(yīng)當(dāng)意識到,在圖7中描述的布局生成過程可以自動地執(zhí)行并且沒有人為干預(yù)。另外,可以在獲得意圖數(shù)據(jù)116之后選擇在布局304中所包含的模板。將這樣的數(shù)據(jù)驅(qū)動模板/布局選擇機(jī)制與其中作者102在預(yù)選模板中填充內(nèi)容數(shù)據(jù)116的方法相比較,前者可以提供更準(zhǔn)確的模板/布局以展現(xiàn)內(nèi)容數(shù)據(jù)114。這是因?yàn)?,作?02在預(yù)先選擇模板時可能并且通常不具有可以適合內(nèi)容數(shù)據(jù)114的所有潛在模板的知識。另外,內(nèi)容數(shù)據(jù)114可以隨著作者102繼續(xù)創(chuàng)作過程而改變。預(yù)先選擇的模板可能不適合于更新的內(nèi)容數(shù)據(jù)114。另一方面,數(shù)據(jù)驅(qū)動模板/布局選擇機(jī)制可以隨著內(nèi)容數(shù)據(jù)114通過利用布局生成引擎108可用的可能的所有模板資源而改變來動態(tài)地更新布局。這樣的過程還可以對作者102透明,并且因此不需要來自作者102的布局設(shè)計(jì)的知識。此外,由于布局304是基于用戶意圖而不是特定格式化指令來選擇的,所以由例程700生成的布局304能夠動態(tài)地適應(yīng)各種輸出格式和呈現(xiàn)設(shè)備,同時仍然滿足作者的意圖。
圖9A示出了創(chuàng)作用戶界面900A,創(chuàng)作用戶界面900A可以被作者102用來輸入內(nèi)容數(shù)據(jù)114、指定用戶意圖數(shù)據(jù)116和/或請求針對輸入內(nèi)容數(shù)據(jù)114生成的布局304。創(chuàng)作用戶界面900A可以包括編輯字段902,其中作者102可以輸入各種內(nèi)容數(shù)據(jù)元素,諸如鍵入文本、上傳圖像等。在一些實(shí)現(xiàn)方式中,編輯字段902可以包括標(biāo)題字段914,其中作者102可以指定內(nèi)容數(shù)據(jù)114的標(biāo)題,和/或內(nèi)容數(shù)據(jù)114的一部分的標(biāo)題。
創(chuàng)作用戶界面900A還可以包括用戶界面控件字段904,其中可以提供各種用戶界面控件以促進(jìn)用于內(nèi)容數(shù)據(jù)114的布局生成。如圖9A所示,用戶界面控件字段904可以包括用于將作者意圖指定給內(nèi)容數(shù)據(jù)114的一組用戶界面控件906,諸如用于添加強(qiáng)調(diào)的用戶界面控件、指定內(nèi)容數(shù)據(jù)元素之間的序列的用戶界面控件、用于指定內(nèi)容數(shù)據(jù)元素之間的層級的用戶界面控件,和/或其他用戶界面控件。
例如,作者102可以通過添加強(qiáng)調(diào)來指定他/她的意圖。圖9A示出了添加到文本和圖像的強(qiáng)調(diào)920A-920D。將低強(qiáng)調(diào)920A添加到文本“spring mountain”,表示應(yīng)該向該文本添加少量強(qiáng)調(diào)。類似地,向圖像916添加低強(qiáng)調(diào)920B。分配給文本“I like the most”的中等強(qiáng)調(diào)920C表示應(yīng)該將中等量強(qiáng)調(diào)添加到該文本,并且分配給圖像918的高強(qiáng)調(diào)920D表示應(yīng)當(dāng)向圖像918添加大量的強(qiáng)調(diào)。在一些實(shí)現(xiàn)方式中,具有與其相關(guān)聯(lián)的意圖的內(nèi)容數(shù)據(jù)元素可以在編輯字段902中被不同地格式化,以便用信號通知所分配的意圖。如圖9A所示,星號、括號或其他符號可以附加到添加了強(qiáng)調(diào)的內(nèi)容數(shù)據(jù)元素,并且星號的數(shù)量可以指示已經(jīng)分配的強(qiáng)調(diào)的量。
如下面在圖9B和9C中將示出的,為了實(shí)現(xiàn)強(qiáng)調(diào)920A-920D,布局生成引擎108可以選擇格式配置,諸如用于文本的粗體字體、加下劃線、放大字體,以及選擇格式配置,例如,針對圖像的放大的圖像尺寸。應(yīng)當(dāng)注意,在創(chuàng)作用戶界面900A中可以不使用這些格式配置來格式化相對應(yīng)的內(nèi)容數(shù)據(jù)元素,以便避免作者102給出這些內(nèi)容數(shù)據(jù)元素的格式將是在所生成的布局304中所使用的格式的印象。換句話說,具有與其相關(guān)聯(lián)的意圖的內(nèi)容數(shù)據(jù)元素被格式化或展現(xiàn)的方式可以不同于這些內(nèi)容數(shù)據(jù)元素將在所生成的布局304中展現(xiàn)的方式。然而,在其他實(shí)現(xiàn)中,可以以將在所生成的布局304中采用的方式在編輯字段902中格式化具有相關(guān)聯(lián)的意圖的內(nèi)容數(shù)據(jù)元素。
用戶界面控件字段904還可以包括用于指定內(nèi)容數(shù)據(jù)114的布局304的宏級方案的一組用戶界面控件908。如上所述,宏級方案可以包括世界方案,其可以由布局生成引擎108基于意圖數(shù)據(jù)116和其他附加信息來選擇。可替代地或者另外地,作者102可通過創(chuàng)作用戶界面900A來針對布局304選擇世界方案。類似地,創(chuàng)作用戶界面900A可進(jìn)一步提供允許作者102指定其他類型的宏級方案的用戶界面控件,諸如風(fēng)格、整體顏色方案等。
一旦作者102完成編輯,或者在編輯期間的任何時間,他/她可以選擇用戶界面控件912以請求針對所提供的內(nèi)容數(shù)據(jù)114生成布局304,并在所生成的布局304中預(yù)覽所呈現(xiàn)的內(nèi)容數(shù)據(jù)114。圖9B和9C示出了兩個不同布局304中的呈現(xiàn)的內(nèi)容數(shù)據(jù)114。在預(yù)覽期間的任何時間,作者102可以選擇用戶界面控件910以返回到編輯用戶界面900A。
應(yīng)當(dāng)理解,圖9A中所示的用戶界面控件僅用于說明,并且不應(yīng)被解釋為限制。除了本文所示的那些以外,附加的用戶界面控件/字段可以包括在創(chuàng)作用戶界面900A中,并且不是示出的所有用戶界面控件和/或字段都需要包括在創(chuàng)作用戶界面中。此外,創(chuàng)作用戶界面中的用戶界面控件/字段可以以與所示的不同的方式來布置或設(shè)計(jì)。
現(xiàn)在參考圖9B和圖9C,其中示出了編輯字段902中示出的內(nèi)容數(shù)據(jù)114的兩個呈現(xiàn)視圖。具體地,圖9B示出了呈現(xiàn)的視圖900B,其中內(nèi)容數(shù)據(jù)114在基于垂直世界方案構(gòu)建的布局304中展現(xiàn)。在呈現(xiàn)的視圖900B中,內(nèi)容數(shù)據(jù)元素可以被組織為垂直世界方案的一個部分??梢允褂么蟮淖煮w大小來格式化標(biāo)題字段914中的文本,以使得部分標(biāo)題更突出。強(qiáng)調(diào)920A通過對文本“spring mountain”加下劃線作為解釋的強(qiáng)調(diào)922A來實(shí)現(xiàn),并且強(qiáng)調(diào)920C通過使文本“I like the most”為粗體和斜體作為解釋的強(qiáng)調(diào)922C來實(shí)現(xiàn)。關(guān)于圖像,強(qiáng)調(diào)920B已經(jīng)被解釋為對圖像916調(diào)整尺寸以具有比圖像924更大的尺寸,作為解釋的強(qiáng)調(diào)922B。同樣地,強(qiáng)調(diào)920D已經(jīng)被解釋為布置圖像918以取屏幕的整個底部,作為解釋的強(qiáng)調(diào)922D。
圖9C示出了呈現(xiàn)的視圖900C,其中內(nèi)容數(shù)據(jù)114是在基于全景世界方案構(gòu)建的布局304中展現(xiàn)的。如圖9C所示,呈現(xiàn)的視圖900C可以以列和子列布置內(nèi)容數(shù)據(jù)114。添加到文本“spring mountain”和圖像916和918的強(qiáng)調(diào)以與圖9B所示的類似的方式實(shí)現(xiàn)。然而,對于文本“I like the most”,圖9C中所示的布局304可將其放置在文本和圖像918之間的空間中,作為解釋的強(qiáng)調(diào)922C,并且進(jìn)一步添加陰影效果以強(qiáng)調(diào)其重要性??梢钥闯?,可以使用不同的布局304來不同地展現(xiàn)相同的內(nèi)容數(shù)據(jù)114。在這些布局304中,可以選擇或指定不同的世界方案312,并且部分布置314和元素格式配置316可以不同。此外,根據(jù)布局304的世界配置312、部分布置314和元素格式配置316,相同的意圖數(shù)據(jù)116可以在不同的布局304中被變換為不同的格式配置。
圖10示出了用于基于用戶意圖的內(nèi)容創(chuàng)作的本文所展現(xiàn)的方法和技術(shù)的另外方面。具體地,圖10示出了提供關(guān)于處理作者反饋224的更多細(xì)節(jié)的框圖。如上簡要提及的,可以采用反饋模塊220來從作者102獲得關(guān)于生成的布局304的反饋224。反饋模塊220可以包括用于處理反饋224的覆蓋模塊1004,其可以覆蓋由作者102最初提供的意圖數(shù)據(jù)116的解釋。這種覆蓋反饋224可以直接提供給布局生成引擎108并由布局生成引擎108利用,以生成新的布局304或調(diào)整已經(jīng)生成的布局304。
由作者102提供的覆蓋反饋224可以包括描述布局的不令人滿意的部分和/或在不包括特定格式化指令的情況下應(yīng)如何修改所述部分的高級反饋。例如,作者102可以在反饋224中指出所生成的布局304出了什么問題。使用圖9B中所示的布局作為示例,作者102可以提供反饋224,指示該部分的標(biāo)題應(yīng)當(dāng)更顯著。在一些場景中,作者102可以進(jìn)一步向布局的令人不滿意的部分提供示例解決方案。例如,內(nèi)容數(shù)據(jù)114可以是公司文檔,例如報告或演示,并且作者102可以提供反饋224,指示布局304應(yīng)該具有與公司徽標(biāo)中使用的顏色方案一致的顏色方案。作者102可以進(jìn)一步提供公司標(biāo)志圖像的副本,其可以由布局生成引擎108用來生成或選擇布局304的適當(dāng)顏色方案。應(yīng)當(dāng)注意,作者102還可以提供高級反饋224以請求要生成和展現(xiàn)的替代布局304。
在一些場景中,高級反饋可能不足以傳達(dá)作者102想要遞送的信息。在其他場景中,基于高級反饋224的調(diào)整或重新生成的布局304可能仍然不能令作者102滿意。在任一種情況下,作者102可以提供詳細(xì)反饋224,其可以包括所涉及的內(nèi)容數(shù)據(jù)元素中的至少一些的特定格式化指令。例如,作者102可以在反饋224中指定某一字體大小和顏色應(yīng)當(dāng)用于文本塊,或者特定頁邊距應(yīng)當(dāng)用于布局304中。
應(yīng)當(dāng)意識到,上述示例僅以說明的方式而提供,并且不應(yīng)被解釋為限制??梢杂勺髡?02提供各種其他高級或詳細(xì)反饋224以改進(jìn)或調(diào)整所生成的布局304。還應(yīng)當(dāng)意識到,反饋224可以由作者102以多次迭代來提供。例如,如果在當(dāng)前迭代中基于高級反饋224的調(diào)整布局304仍然不令人滿意,則可以在下一次迭代中提供詳細(xì)反饋224。
在一些實(shí)現(xiàn)方式中,反饋224可以由作者102通過由反饋模塊1004展現(xiàn)的用戶界面來提供。用戶界面可以提供各種用戶界面控件,其可以允許作者102指定布局或呈現(xiàn)內(nèi)容中的在反饋中引用的部分。例如,作者102可以在用戶界面中繪制圓圈以指定布局304的不令人滿意的部分。可替代地或者另外地,作者102可能僅需要輕敲或點(diǎn)擊相關(guān)部分。此外,可以利用本領(lǐng)域中已知的允許作者102上傳文件、指定格式化指令和/或執(zhí)行其他操作的各種機(jī)制來促進(jìn)作者102提供反饋224。應(yīng)當(dāng)理解,用于提供反饋224的用戶界面可以是與創(chuàng)作用戶界面分離的用戶界面,諸如圖9A所示的創(chuàng)作用戶界面900A,或者可以被集成為創(chuàng)作用戶界面的一部分。
反饋模塊220還可以包括用于處理反饋224的意圖改變模塊1002,反饋224被轉(zhuǎn)換或可以被轉(zhuǎn)換為意圖數(shù)據(jù)116。意圖改變模塊1002可以允許作者102提供修改他/她的初始指定意圖或添加更多意圖數(shù)據(jù)的意圖反饋224。在一些場景中,高級反饋224也可以被轉(zhuǎn)換或表達(dá)為意圖反饋224。意圖反饋224可以被提供給內(nèi)容/意圖引入模塊204,以被包括在核心內(nèi)容數(shù)據(jù)模型212的意圖數(shù)據(jù)116中。意圖反饋224可以由作者102通過創(chuàng)作用戶界面提供,或者由覆蓋模塊1004提供給內(nèi)容/意圖引入模塊204。
圖11示出了說明用于處理關(guān)于基于用戶意圖數(shù)據(jù)116生成的布局304的用戶反饋224的方法的方面的例程1100。在一些實(shí)現(xiàn)方式中,例程1100可以由上文關(guān)于圖1、圖2和圖10所描述的反饋模塊220執(zhí)行。然而,應(yīng)當(dāng)意識到,例程1100也可以由在圖1、圖2和圖10所示的操作環(huán)境中的其他系統(tǒng)和/或模塊執(zhí)行。
例程1100在操作1102開始,其中可以獲得關(guān)于所生成的布局304的反饋224。例程1100然后進(jìn)行到操作1104,其中可以確定反饋224是否是覆蓋反饋,即覆蓋用戶意圖的解釋的反饋。例如,布局生成引擎108可以解釋“詞A比其周圍的文本更重要”的用戶意圖,以將文本A格式化為粗體,并且將其周圍的文本格式化為規(guī)則字體。關(guān)于文本A的覆蓋反饋將請求布局生成引擎108不對文本A使用這樣的格式。
這種覆蓋反饋可以是高級反饋,其中作者102可以指示對文本A添加的強(qiáng)調(diào)是不夠的。在這種場景中,布局生成引擎108可以利用該反饋來覆蓋對用戶意圖的先前解釋,并通過例如進(jìn)一步放大字體大小、對文本A加下劃線和/或使用不同的字體來改變文本A的格式??商娲?,覆蓋反饋可以是詳細(xì)反饋,其中作者102可以指定文本A的特定格式,諸如使用12點(diǎn)Arial Black字體。布局生成引擎108可以利用詳細(xì)反饋中提供的特定格式化指令來替換文本A的先前格式。
如果在操作1104確定反饋224是覆蓋反饋224,則例程1100進(jìn)行到操作1106,其中可以覆蓋先前的意圖解釋。根據(jù)反饋224的性質(zhì),如果反饋224是高級反饋,則可以生成新的解釋,或者可以利用反饋224中指定的特定格式。
接下來在操作1108中,可以確定反饋224是否在生成布局304時會引起任何沖突。例如,作者102可以提供詳細(xì)反饋以請求用于圖像A的特定尺寸。然而,這種指定的圖像大小可以禁止圖像A與另一圖像B并排展現(xiàn),如先前由作者102提供的用戶意圖數(shù)據(jù)116中所指示的。如果存在沖突,則例程1100進(jìn)行到操作1112,其中可以請求作者102修改反饋224或意圖數(shù)據(jù)116。如果作者102愿意修改反饋224或意圖數(shù)據(jù)116,則例程1100返回到操作1102。
如果在操作1108確定沒有沖突,則例程1100進(jìn)行到操作1110,其中可以基于覆蓋反饋224來重新生成或調(diào)整布局304。在一些實(shí)現(xiàn)方式中,作者反饋224可以由布局生成引擎108進(jìn)一步存儲和分析。該分析可以便于布局生成引擎108來改進(jìn)未來創(chuàng)作過程中作者意圖的解釋。從操作1110或者從確定作者102沒有提供修改的反饋224的操作1112,例程1110進(jìn)行到操作1116,在操作1116例程1110結(jié)束。
如果在操作1104中,確定反饋224不是其中作者102可以修改或添加意圖數(shù)據(jù)116的覆蓋反饋,例如意圖反饋,則例程1100進(jìn)行到操作1114,其中布局生成引擎108可以基于反饋224來更新布局304,諸如通過根據(jù)上面關(guān)于圖7描述的方法重新生成布局304。從操作1114,例程1100進(jìn)行到操作1116,在操作1116例程1110結(jié)束。
應(yīng)當(dāng)理解,圖11中所示的方法僅僅是說明性的,并且不應(yīng)被解釋為限制性的。可以使用處理反饋224的各種其他方式。例如,當(dāng)在操作1108中檢測到?jīng)_突時,不是請求作者102修改反饋224,布局生成引擎108可以嘗試解決沖突并且在請求修改的反饋之前向作者102提供一個或多個解決方案。例如,可以通過稍微改變受影響的用于其他內(nèi)容數(shù)據(jù)元素的意圖數(shù)據(jù)116和/或通過稍微修改作者102提供的反饋224來解決沖突。作者102可以選擇所提出的解決方案之一或如果他/她對解決方案不滿意,則提供修改的反饋224。
圖12示出了作為呈現(xiàn)視圖900B的修改版本的呈現(xiàn)視圖1200。在該示例中,根據(jù)關(guān)于呈現(xiàn)視圖900B中展現(xiàn)的布局的用戶反饋224來進(jìn)行修改。具體地,反饋224包括請求更加顯著地展現(xiàn)部分瓦片1204的高級反饋,指定使文本“spring mountain”為粗體的詳細(xì)反饋,以及還有更加強(qiáng)調(diào)文本“I like the most!”的意圖反饋?;诜答?24,布局生成引擎108可以采用裝飾字體(例如Algerian字體)來展現(xiàn)部分標(biāo)題;文本1206已經(jīng)按照反饋224中所請求的被設(shè)置為粗體;并且文本1208已經(jīng)被加下劃線并且在它所屬的文本塊和圖像922D之間重新定位。如上所述,如果作者102對更新的呈現(xiàn)視圖1200仍然不滿意,則他/她可以提供進(jìn)一步的反饋224以請求對所生成的布局304的更多改變。
如上所概述,本文描述了用于在創(chuàng)作體驗(yàn)期間提供上下文相關(guān)內(nèi)容的動態(tài)展現(xiàn)的技術(shù)。一般來說,當(dāng)用戶關(guān)于主題寫作時,分析從用戶接收的創(chuàng)作內(nèi)容以識別可用于識別、檢索建議的內(nèi)容并向用戶展現(xiàn)建議的內(nèi)容的一個或多個關(guān)鍵詞??梢詮闹T如搜索引擎、與用戶相關(guān)聯(lián)的數(shù)據(jù)存儲庫、社交媒體資源或其他本地或遠(yuǎn)程文件之類的一個或多個內(nèi)容資源接收建議的內(nèi)容。本文所描述的技術(shù)還基于光標(biāo)位置從創(chuàng)作的內(nèi)容中選擇關(guān)鍵詞。結(jié)果,建議的內(nèi)容可以隨著光標(biāo)移動到創(chuàng)作的內(nèi)容中的新位置而改變。另外,本文描述的技術(shù)提供允許選擇和取消選擇一個或多個關(guān)鍵詞的用戶界面控件,其允許用戶通過切換一個或多個控件來定制建議的內(nèi)容。本文公開的技術(shù)和概念可以用于幫助諸如博主的用戶關(guān)于一個或多個感興趣的主題進(jìn)行寫作。
圖13是示出了可用于實(shí)現(xiàn)用于在創(chuàng)作體驗(yàn)期間提供上下文相關(guān)內(nèi)容的動態(tài)展現(xiàn)的一個或多個配置的一個說明性操作環(huán)境的系統(tǒng)圖??梢砸庾R到,系統(tǒng)1300包括圖1中描繪的系統(tǒng)100的多個組件。另外,圖13示出了系統(tǒng)1300,其包括用于接收來自用戶計(jì)算設(shè)備130的輸入112(這里也稱為“作者輸入112”或“內(nèi)容數(shù)據(jù)”)的內(nèi)容/意圖引入模塊204。系統(tǒng)1300還包括用于根據(jù)輸入112確定一個或多個關(guān)鍵詞的內(nèi)容建議模塊1302。內(nèi)容建議模塊1302還被配置為識別并檢索建議的內(nèi)容1304。為了說明的目的,建議的內(nèi)容1304在本文中也被稱為“附加內(nèi)容數(shù)據(jù)”。內(nèi)容建議模塊1302還被配置為在作者輸入112被修改時識別并檢索新的建議的內(nèi)容1304。內(nèi)容收集模塊206與一個或多個內(nèi)容資源126、內(nèi)容建議模塊1302和內(nèi)容/意圖引入模塊204通信,以將建議的內(nèi)容1304傳送到用戶計(jì)算設(shè)備130。系統(tǒng)1300還可以包括用于處理和解釋圖像的圖像分析模塊1305。另外,系統(tǒng)1300還可以包括如本文所述的用于處理、生成和顯示數(shù)據(jù)的群集檢測模塊1307。如下面將詳細(xì)描述的,這些模塊協(xié)同操作以基于對輸入112的改變來動態(tài)地識別和顯示建議的內(nèi)容1304。
在一些配置中,輸入112可從內(nèi)容/意圖引入模塊204傳送到內(nèi)容建議模塊1302,在內(nèi)容建議模塊1302中輸入112被處理以識別一個或多個關(guān)鍵詞。如下面將更詳細(xì)地描述的,可以通過使用在文本輸入字段的特定區(qū)域周圍定義的窗口來選擇一個或多個關(guān)鍵詞。在一些配置中,窗口相對于文本輸入應(yīng)用的光標(biāo)的位置定位在文本輸入字段中。然后,內(nèi)容建議模塊1302將所選關(guān)鍵詞傳送到內(nèi)容收集模塊206,以從一個或多個內(nèi)容資源126檢索建議的內(nèi)容1304。在一些說明性示例中,內(nèi)容資源126可以包括搜索引擎、與用戶相關(guān)聯(lián)的數(shù)據(jù)存儲庫、社交媒體資源或其他本地或遠(yuǎn)程文件。建議的內(nèi)容1304和所選關(guān)鍵詞中的一個或多個可以從內(nèi)容建議模塊1302傳送到內(nèi)容/意圖引入模塊204。內(nèi)容/意圖引入模塊204可以傳送建議的內(nèi)容1304和所選擇的關(guān)鍵詞中的一個或多個到用戶計(jì)算設(shè)備130以供顯示給作者102。另外,可以將意圖數(shù)據(jù)116、可以包括建議的內(nèi)容1304的內(nèi)容數(shù)據(jù)114傳送到布局引擎108以用于進(jìn)一步處理。
現(xiàn)在轉(zhuǎn)到圖14,在下面示出和描述用于在創(chuàng)作體驗(yàn)期間提供上下文相關(guān)內(nèi)容的動態(tài)展現(xiàn)的例程1400的各方面。應(yīng)當(dāng)理解,本文公開的方法的操作不一定以任何特定順序展現(xiàn),并且以替換順序執(zhí)行操作中的一些或全部是可能的并且是可預(yù)期的。為了便于描述和說明,以示出的順序展現(xiàn)操作。在不脫離所附權(quán)利要求的范圍的情況下,可以添加、省略和/或同時執(zhí)行操作。
如圖14所示,例程1400開始于操作1402,其中內(nèi)容/意圖引入模塊204獲得輸入112,這里也稱為“輸入數(shù)據(jù)”或“創(chuàng)作的內(nèi)容”。一般地描述,輸入112可以包括諸如文本、圖像、圖形和/或可以用于創(chuàng)作材料的任何其他數(shù)據(jù)的任何內(nèi)容。在一些配置中,當(dāng)輸入112被輸入到編輯界面時,輸入112可以被同時傳送到內(nèi)容/意圖引入模塊204。輸入112還可以被傳送到內(nèi)容建議模塊1302,在內(nèi)容建議模塊1302中,可以在從用戶計(jì)算設(shè)備130接收到輸入112時來分析輸入112。
在一些配置中,輸入112還可以包括定義光標(biāo)或指針的位置的數(shù)據(jù)??梢砸庾R到,文本編輯應(yīng)用可以利用光標(biāo)來指示當(dāng)前編輯點(diǎn)。光標(biāo)可以重新定位到文本的不同位置以向一個或多個期望的編輯點(diǎn)提供添加或編輯。如下面更詳細(xì)描述的,為了便于在此描述的技術(shù),定義光標(biāo)相對于其他輸入數(shù)據(jù)(例如文本字符或圖像)的位置的數(shù)據(jù)可以包括在輸入112中。如下面將更詳細(xì)地描述的,光標(biāo)或指針相對于任何輸入內(nèi)容(諸如文本或圖像)的位置可以用于識別輸入112的特征,諸如,關(guān)鍵詞或上下文相關(guān)的元數(shù)據(jù)。
接下來,在操作1404,內(nèi)容建議模塊1302分析輸入112以識別一個或多個特征。一般地描述,特征可以是可以用于從輸入112得出上下文的任何類型的信息。在一些配置中,特征可以包括從輸入112選擇的一個或多個關(guān)鍵詞??梢砸庾R到,一個或多個關(guān)鍵詞可以通過使用多種不同的算法和技術(shù)來識別。例如,如果輸入112包括文本段落,則一種或多種技術(shù)可以確定某些類型的詞可以具有比文本中的其他詞更高的優(yōu)先級。例如,名詞或動詞可以具有比連詞更高的優(yōu)先級。在其他示例中,可以與用戶的簡檔或可用性歷史相關(guān)聯(lián)的詞可以具有比其他詞更高的優(yōu)先級。諸如詞類型的優(yōu)先級的一個或多個因素可以用于選擇一個或多個關(guān)鍵詞。
操作1404還可以分析其他類型的輸入數(shù)據(jù),例如圖像,以確定一個或多個特征。例如,可以分析圖像的元數(shù)據(jù)以提取一個或多個關(guān)鍵詞。另外,諸如面部或?qū)ο笞R別技術(shù)的其他技術(shù)可以用于識別圖像的特征,并且這樣的技術(shù)可以生成描述特征的一個或多個上下文相關(guān)的關(guān)鍵詞??梢砸庾R到,包括在輸入112中的其他形式的媒體,例如視頻數(shù)據(jù)或定義3D環(huán)境的數(shù)據(jù),也可以被分析以確定特征和/或關(guān)鍵詞。
接下來,在操作1406中,內(nèi)容建議模塊1302可以分析光標(biāo)位置以識別或強(qiáng)調(diào)一個或多個特征。可以意識到,編輯界面的光標(biāo)可以指示當(dāng)前編輯位置。例如,在用于編輯文本的界面中,光標(biāo)的位置標(biāo)識當(dāng)接收到輸入時將插入文本或其他對象的位置。還可以意識到,光標(biāo)可以隨著用戶添加文本或其他內(nèi)容而移動。通過使用光標(biāo)位置來強(qiáng)調(diào)特征或關(guān)鍵詞,可以在用戶添加內(nèi)容時選擇新的特征或關(guān)鍵詞。因此,從用戶體驗(yàn)的角度來看,向用戶顯示的建議的內(nèi)容可以隨著內(nèi)容被添加或者隨光標(biāo)被移動而動態(tài)地更新。
可以意識到,操作1406可以與操作1404結(jié)合使用,其中光標(biāo)位置用于強(qiáng)調(diào)所選擇的關(guān)鍵詞??商娲?,操作1406可用于代替操作1404,在操作1404中基于光標(biāo)位置來選擇輸入112的關(guān)鍵詞和其他特征。還可以意識到,其他可視指示符的位置可以與光標(biāo)一起使用或替代光標(biāo)使用。例如,一個或多個關(guān)鍵詞的選擇或?qū)λx關(guān)鍵詞的強(qiáng)調(diào)可以基于指針的位置或任何其他用戶控制的輸入(例如觸摸姿勢)的位置。操作1406的附加細(xì)節(jié)和示例在下面更詳細(xì)地描述并且在圖15中示出。
接下來,在操作1408中,系統(tǒng)1300基于所識別的特征和/或關(guān)鍵詞從一個或多個內(nèi)容資源126檢索建議的內(nèi)容1304。如上所概述,可以從諸如搜索引擎、與用戶相關(guān)聯(lián)的數(shù)據(jù)存儲庫、社交媒體資源或其他本地或遠(yuǎn)程文件之類的一個或多個資源接收建議的內(nèi)容1304。在一些說明性示例中,可以從個人數(shù)據(jù)存儲檢索建議的內(nèi)容1304,諸如存儲在本地設(shè)備中的文件或存儲在基于服務(wù)器的存儲服務(wù)(例如,GOOGLE DRIVE或DROPBOX)中的文件。在其他說明性示例中,可以從諸如BING或GOOGLE的搜索引擎和/或諸如FACEBOOK、LINKEDIN的一個或多個社交網(wǎng)絡(luò)和/或任何其他在線服務(wù)檢索建議的內(nèi)容1304。本地或基于網(wǎng)絡(luò)的數(shù)據(jù)庫還可以用作內(nèi)容資源126??梢砸庾R到,用于利用關(guān)鍵詞或特征的已知技術(shù)可以用于識別建議的內(nèi)容1304,對建議的內(nèi)容1304排序和檢索建議的內(nèi)容1304。在一些配置中,特征可以包括圖像數(shù)據(jù)。在這樣的配置中,圖像數(shù)據(jù)可以被傳送到一個或多個資源以識別和檢索建議的內(nèi)容1304。這樣的配置可以利用已知的圖像分析技術(shù)來識別和檢索建議的內(nèi)容1304。
接下來,在操作1410中,系統(tǒng)1300可以展現(xiàn)建議的內(nèi)容1304。可以意識到,建議的內(nèi)容1304的展現(xiàn)可以利用用于顯示建議的內(nèi)容1304或者將建議的內(nèi)容1304傳送給另一計(jì)算設(shè)備或模塊的一種或多種技術(shù)。例如,在一些配置中,建議的內(nèi)容1304可以從內(nèi)容/意圖引入模塊204傳送到用戶計(jì)算設(shè)備130以顯示給作者102。操作1410的附加細(xì)節(jié)和示例在下面更詳細(xì)地描述且示出在圖15中。
接下來,在操作1412中,系統(tǒng)1300可以接收用于選擇或取消選擇特征和/或關(guān)鍵詞的命令。一般地描述,顯示建議的內(nèi)容1304的用戶界面還可以顯示用于從一個或多個內(nèi)容資源126檢索建議的內(nèi)容1304的所選關(guān)鍵詞或特征。在一些配置中,所選關(guān)鍵詞或特征可以被布置在控件(例如,按鈕)中,其允許用戶切換各個特征或各個關(guān)鍵詞的使用。
例如,如果輸入112包括通過使用上述技術(shù)描述到具有山和湖泊的風(fēng)景的公園的旅行的文本,則所選擇的關(guān)鍵詞可以是“公園”、“湖泊”和“山”。假定所選擇的關(guān)鍵詞用于檢索建議的內(nèi)容1304,在該說明性示例中,系統(tǒng)1300可以檢索并展現(xiàn)具有與所選關(guān)鍵詞相關(guān)的元數(shù)據(jù)的用戶的ONEDRIVE或另一網(wǎng)絡(luò)可訪問存儲位置中的圖像。在該說明性示例中,還假設(shè)展現(xiàn)圖像的用戶界面可以包括“公園”按鈕、“湖”按鈕和“山”按鈕。通過致動每個按鈕,可以選擇和取消選擇各個關(guān)鍵詞。因此,通過使用按鈕,系統(tǒng)1300可以在每個關(guān)鍵詞被選擇或取消選擇時修改建議的內(nèi)容1304的展現(xiàn)。提供該示例僅用于說明目的,并且不被解釋為限制,因?yàn)榭梢允褂糜糜谶x擇和取消選擇特征和/或關(guān)鍵詞的任何技術(shù)。操作1412的附加細(xì)節(jié)和示例在下面更詳細(xì)地描述并且在圖15中示出。
接下來,在操作1414中,系統(tǒng)1300可以從建議的內(nèi)容1304接收對一個或多個對象的選擇,并且將所選內(nèi)容與輸入112組合。一般來說,建議的內(nèi)容1304可以包括多個對象,例如,圖像、文本的部分和/或其他類型的數(shù)據(jù)。在一個說明性示例中,建議的內(nèi)容1304可以包括可以在輸入112(例如,創(chuàng)作的內(nèi)容)的顯示旁邊的用戶界面上顯示的多個圖像。通過使用一個或多個圖形用戶界面特征,用戶可以從建議的內(nèi)容1304中選擇圖像中的一個并將所選擇的圖像插入到創(chuàng)作的內(nèi)容中。在另一示例中,建議的內(nèi)容1304可以包括文本的部分,該文本的部分可以被選擇并放置到創(chuàng)作的內(nèi)容中。操作1414的附加細(xì)節(jié)和示例在下面更詳細(xì)地描述并且在圖15中示出。
接下來,在操作1416中,系統(tǒng)1300可以獲得作者的意圖。上面提供了用于獲得和處理意圖數(shù)據(jù)116的技術(shù)的細(xì)節(jié)。操作1416可以以類似于圖6中所示的例程600的一個或多個操作的方式來配置。如所描述的,存在多種用于處理和傳達(dá)作者的意圖的技術(shù)。
接下來,在操作1418中,可以包括建議的內(nèi)容1304的意圖數(shù)據(jù)116和內(nèi)容數(shù)據(jù)114從內(nèi)容/意圖引入模塊204傳送到布局引擎108,其中所傳送的數(shù)據(jù)以如上所述的方式進(jìn)行處理。一旦意圖數(shù)據(jù)116和/或內(nèi)容數(shù)據(jù)114被傳送到布局引擎108,則例程1400在操作1420處終止。
現(xiàn)在參考圖15,在下面示出和描述用于接收輸入112并顯示建議的內(nèi)容1304A-1304I(在本文統(tǒng)稱為并且一般地稱為“建議的內(nèi)容1304”)的輸入界面1500。如圖所示,界面1500包括用于顯示建議的內(nèi)容1304的內(nèi)容建議部分1504。此外,界面1500配置有用于接收和顯示輸入112的編輯部分1505。在一些配置中,由于創(chuàng)作的內(nèi)容通過用戶而輸入在編輯部分1505中,所以處理創(chuàng)作的內(nèi)容以識別一個或多個關(guān)鍵詞以識別和顯示建議的內(nèi)容1304。
如上所述,在一些配置中,對諸如關(guān)鍵詞的特征的選擇可以基于光標(biāo)1506的位置。在一些配置中,光標(biāo)1506周圍的預(yù)定義區(qū)域可以用于確定一個或多個所選關(guān)鍵詞。為了說明的目的,光標(biāo)1506周圍的預(yù)定義區(qū)域在這里可以被稱為“窗口1508”,其在圖15中用虛線表示。因此,當(dāng)用戶輸入創(chuàng)作的內(nèi)容時,窗口1508可以跟隨光標(biāo),從而向當(dāng)前編輯位置附近的詞提供焦點(diǎn)。本文公開的技術(shù)和其他技術(shù)可以用于在窗口1508內(nèi)選擇關(guān)鍵詞,并且所選擇的關(guān)鍵詞可以用于獲得建議的內(nèi)容1304。
界面1500還允許用戶從內(nèi)容建議部分1504中選擇一個或多個項(xiàng)目,并將所選擇的項(xiàng)目插入到編輯部分1505中。圖15中所示的示例示出了修改的示例,其中三個圖像1304A、1304D和1304I被選擇并被定位到編輯部分1505中??梢砸庾R到,所選內(nèi)容的選擇和定位可以通過一種或多種已知技術(shù)來實(shí)現(xiàn),包括用于允許用戶拖放圖像或其他內(nèi)容到期望位置的用戶界面特征。
也如上所概述,界面1500可以用建議的內(nèi)容1304來顯示所選擇的關(guān)鍵詞,例如所選擇的特征。參考上述說明性示例,圖15示出示例的界面,示出“公園”按鈕、“湖”按鈕和“山”按鈕。通過致動每個按鈕,可以選擇和取消選擇單個關(guān)鍵詞。因此,通過使用按鈕,系統(tǒng)1300可以在每個關(guān)鍵詞被選擇或取消選擇時修改建議的內(nèi)容1304的展現(xiàn)。如果用戶例如致動“山”按鈕,則可以去除山的圖像或用其他圖像替換。
在一些配置中,上述技術(shù)可以利用從輸入112得出的上下文數(shù)據(jù)來識別輸入的主題,并且基于輸入的主題,系統(tǒng)識別并檢索關(guān)于與輸入的主題相關(guān)的附加主題的內(nèi)容。在這樣的配置中,可以分析輸入112,并且系統(tǒng)可以生成上下文數(shù)據(jù)。已知的技術(shù)可以用于分析輸入112以識別諸如人、地點(diǎn)或事物的對象。描述所識別的主題的數(shù)據(jù)可以用于識別可以展現(xiàn)給用戶的一個或多個相關(guān)對象。通過在輸入112的輸入期間向作者提供附加主題,作者可以及時獲得關(guān)于可能未被預(yù)期的內(nèi)容的信息。
在一個說明性示例中,作者102可以提供描述倫敦和柏林的歷史的輸入。在處理這種類型的輸入時,內(nèi)容建議模塊1302可以識別和/或生成指示作者102正在關(guān)于某個主題(例如,歐洲國家的首都)進(jìn)行寫作的上下文數(shù)據(jù)。使用上下文數(shù)據(jù),系統(tǒng)然后可以進(jìn)一步識別相關(guān)主題,諸如其他歐洲國家的首都,諸如羅馬或貝爾格萊德。然后可以檢索與相關(guān)對象相關(guān)聯(lián)的建議的內(nèi)容,例如圖片、文本或其他形式的媒體,并展現(xiàn)給作者102。例如,可以在內(nèi)容建議部分1504中展現(xiàn)與羅馬或貝爾格萊德相關(guān)的圖片、文本或其他媒體。這樣的技術(shù)可以通過在用戶創(chuàng)作文檔時提供上下文相關(guān)的話題來增強(qiáng)作者的用戶體驗(yàn)。
除了識別相關(guān)對象,在一些配置中,上述技術(shù)可以利用從輸入112得出的上下文數(shù)據(jù)來確定可用于檢索建議的內(nèi)容1304的查詢的類型。在這樣的配置中,可以分析輸入112,并且內(nèi)容建議模塊1302可以生成查詢以從內(nèi)容資源126檢索上下文相關(guān)的數(shù)據(jù)。
在一個說明性的示例中,作者102可以以陳述“Brad Pitt與他的孩子做許多活動”的句子的形式提供輸入112。從這種類型的輸入,系統(tǒng)可以處理輸入112并識別特定的話題。例如,內(nèi)容建議模塊1302可以解釋該樣本輸入,并確定它與Brad Pitt的個人生活相關(guān)。內(nèi)容建議模塊1302然后可以基于Brad Pitt的個人生活(例如愛好,活動等)來展現(xiàn)建議的內(nèi)容1304。這樣的技術(shù)允許內(nèi)容建議模塊1302檢索與作者的內(nèi)容上下文相關(guān)的建議的內(nèi)容1304。例如,通過使用本文所描述的技術(shù),關(guān)于Brad Pitt的個人生活的樣本輸入可能不產(chǎn)生關(guān)于Brad Pitt的電影或職業(yè)的建議的內(nèi)容1304。
在另一個說明性的示例中,考慮其中作者正在寫關(guān)于“在他們的新林肯中開車”的概要的輸入112。當(dāng)通過系統(tǒng)獲得這樣的輸入時,本文描述的技術(shù)可以用于生成指示作者正在描述汽車而不是前總統(tǒng)的上下文數(shù)據(jù)。相反,如果輸入112包括語句,例如“Lincoln出生于2月12日”,則系統(tǒng)可以分析該輸入并生成指示作者正在寫關(guān)于前總統(tǒng)的上下文數(shù)據(jù)。上下文數(shù)據(jù)可以用于構(gòu)建檢索與作者的內(nèi)容上下文相關(guān)的建議的內(nèi)容1304的查詢。
如上所概述,用于檢索建議的內(nèi)容1304的關(guān)鍵詞可以基于光標(biāo)位置。在一些配置中,除了使用光標(biāo)位置之外,選擇關(guān)鍵詞的過程可以基于作者提供作為輸入112的內(nèi)容的結(jié)構(gòu)。一般地描述,輸入112可以包括一個或多個元素,諸如換行符、部分標(biāo)頭、標(biāo)題或其他格式化特征。本文描述的技術(shù)可以解釋輸入的這些元素以選擇用于獲得建議的內(nèi)容1304的一個或多個關(guān)鍵詞。
在一個說明性的示例中,考慮包括標(biāo)題、部分標(biāo)題和多個段落的輸入。在本示例中,第一段落描述了巴黎的特定網(wǎng)站,而第二段落描述了倫敦的特定網(wǎng)站。如果作者當(dāng)前正在第二段落中輸入文本,則基于諸如換行符的文檔元素,系統(tǒng)可以確定第二段落中的關(guān)鍵詞比第一段落中的關(guān)鍵詞更相關(guān)。因此,在該示例中,用于檢索建議的內(nèi)容1304的所選關(guān)鍵詞可以更加集中于與倫敦和倫敦的網(wǎng)站相關(guān)的關(guān)鍵詞??梢砸庾R到,在一些實(shí)現(xiàn)方式中,這樣的技術(shù)可以涉及生成輸入的樹結(jié)構(gòu)。樹結(jié)構(gòu)可以基于輸入的一個或多個元素,諸如標(biāo)題、部分標(biāo)題、換行符、格式化指示符或其他特性。使用光標(biāo)的位置,或者甚至不使用光標(biāo)的位置,可以基于樹結(jié)構(gòu)(例如,輸入112的結(jié)構(gòu))來選擇關(guān)鍵詞。在不使用光標(biāo)的位置的配置中,關(guān)鍵詞可以是基于樹的最近輸入的元素、關(guān)鍵詞之間的間隔或考慮樹的結(jié)構(gòu)的任何其它技術(shù)來選擇。
如上所述,本文描述了用于基于用戶輸入來生成樣本創(chuàng)作的內(nèi)容的技術(shù)。一般地描述,樣本內(nèi)容(例如主題的概要)可以從用戶提供的一個或多個關(guān)鍵詞的上下文解釋中生成。使用一個或多個關(guān)鍵詞,系統(tǒng)從一個或多個資源檢索內(nèi)容數(shù)據(jù)。內(nèi)容數(shù)據(jù)被解析并用于生成內(nèi)容數(shù)據(jù)的結(jié)構(gòu)。然后該結(jié)構(gòu)用于生成可以展現(xiàn)給用戶的樣本內(nèi)容。所展現(xiàn)的信息可以提供一種用于快速啟動關(guān)于感興趣的特定主題的創(chuàng)作項(xiàng)目的方式。
本文公開的技術(shù)和概念可以用于幫助用戶(例如,學(xué)生、業(yè)余博主)關(guān)于一個或多個感興趣的主題進(jìn)行寫作。在一些說明性的示例中,本文所公開的技術(shù)可以解釋諸如使用一個或兩個關(guān)鍵詞的最小輸入來編譯信息并且從一個或多個資源(諸如Wiki、來自YOUTUBE的視頻、來自BING NEWS的新聞文章或來自其他資源的其他內(nèi)容)來構(gòu)建結(jié)構(gòu)化概要。傳送給用戶的輸出可以包括建議的內(nèi)容的結(jié)構(gòu),諸如標(biāo)題、部分標(biāo)題和樣本句子。輸出的結(jié)構(gòu)可以來自信號資源,諸如來自WIKIPEDIA的文章,或者該結(jié)構(gòu)可以是來自許多資源的信息的聚合,包括來自一個或多個用戶的輸入。另外,可以確定和處理描述關(guān)系類型的數(shù)據(jù)以創(chuàng)建結(jié)構(gòu)。
圖16是示出了可用于實(shí)現(xiàn)用于基于用戶輸入來生成樣本創(chuàng)作的內(nèi)容的一個或多個配置的一個說明性操作環(huán)境的系統(tǒng)圖??梢砸庾R到,系統(tǒng)1600包括圖1中描繪的系統(tǒng)100的多個組件,其細(xì)節(jié)在上面描述。另外,圖16示出了系統(tǒng)1600包括用于將輸入數(shù)據(jù)和樣本內(nèi)容與計(jì)算設(shè)備(例如用戶計(jì)算設(shè)備130)通信的內(nèi)容/意圖引入模塊204。系統(tǒng)1600還包括冷啟動模塊1606用于處理輸入數(shù)據(jù)以確定一個或多個內(nèi)容資源126并從內(nèi)容資源126接收相關(guān)內(nèi)容1604。此外,冷啟動模塊1606處理相關(guān)內(nèi)容1604以確定樣本內(nèi)容1610的結(jié)構(gòu)。如將詳細(xì)說明的,這些模塊協(xié)同操作以基于諸如一個或多個關(guān)鍵詞1602的輸入來生成樣本內(nèi)容1610并將樣本內(nèi)容1610遞送到用戶計(jì)算機(jī)設(shè)備130。
在一些配置中,用戶計(jì)算設(shè)備130提供傳送到內(nèi)容/意圖引入模塊204的一個或多個關(guān)鍵詞1602,并且內(nèi)容/意圖引入模塊204將一個或多個關(guān)鍵詞1602傳送到冷啟動模塊1606。冷啟動模塊1606然后處理關(guān)鍵詞1602以確定實(shí)體類型。冷啟動模塊1606然后利用關(guān)鍵詞1602和/或定義實(shí)體類型的數(shù)據(jù)來選擇一個或多個內(nèi)容資源126。然后,內(nèi)容收集模塊206將一個或多個查詢傳遞到所選擇的內(nèi)容資源126,以獲得相關(guān)內(nèi)容1604。如上所概述,所選的內(nèi)容資源126的示例可以包括Wiki站點(diǎn)、文章的數(shù)據(jù)庫、視頻的數(shù)據(jù)庫或包含可搜索信息的其他資源。一旦內(nèi)容收集模塊206獲得相關(guān)內(nèi)容1604,則將相關(guān)內(nèi)容1604傳送到冷啟動模塊1606,在冷啟動模塊1606中,相關(guān)內(nèi)容1604被處理以確定用于輸出(例如,樣本內(nèi)容1610)的結(jié)構(gòu)。內(nèi)容/意圖引入模塊204可以將樣本內(nèi)容1610傳送到用戶計(jì)算設(shè)備130以展現(xiàn)給作者102。另外,內(nèi)容/意圖引入模塊204可以將內(nèi)容數(shù)據(jù)114和意圖數(shù)據(jù)116傳送到布局引擎108,用于進(jìn)一步處理,這在上文進(jìn)行了說明并在圖6中示出。
現(xiàn)在轉(zhuǎn)到圖17,以下示出并描述了用于基于用戶輸入生成樣本內(nèi)容1610的例程1700的各方面。應(yīng)當(dāng)理解,本文公開的方法的操作不一定以任何特定順序展現(xiàn),并且以替換順序執(zhí)行操作中的一些或全部是可能的并且是可預(yù)期的。為了便于描述和說明,以示出的順序展現(xiàn)操作。在不脫離所附權(quán)利要求的范圍的情況下,可以添加、省略和/或同時執(zhí)行操作。
如圖17所示,例程1700開始于操作1702,其中內(nèi)容/意圖引入模塊204獲得輸入,該輸入可以是一個或多個關(guān)鍵詞1602的形式。在一些配置中,一個或多個關(guān)鍵詞1602由內(nèi)容/意圖引入模塊204接收并傳送到冷啟動模塊1606以用于進(jìn)一步處理。在一個說明性的示例中,在操作1702,輸入可以包括單個關(guān)鍵詞,諸如“內(nèi)布拉斯加(Nebraska)”??梢岳斫?,輸入可以包括多于一個關(guān)鍵詞。然而,本文展現(xiàn)的技術(shù)可以基于一個或兩個關(guān)鍵詞來提供相關(guān)內(nèi)容數(shù)據(jù)114。還可以意識到,輸入可以是其他形式。例如,用戶可以提供一個或多個圖像作為輸入??梢苑治鲆粋€或多個圖像或任何其他接收到的數(shù)據(jù)以生成一個或多個關(guān)鍵詞,或者圖像或其他數(shù)據(jù)可以用作搜索標(biāo)準(zhǔn)。
接下來,在操作1704中,冷啟動模塊1606處理輸入(例如,一個或多個關(guān)鍵詞1602)以檢測一個或多個實(shí)體。一般來說,為了檢測實(shí)體,冷啟動模塊1606解釋輸入并確定一個或多個關(guān)鍵詞1602的上下文含義。在一些配置中,一個或多個關(guān)鍵詞1606的解釋可涉及識別實(shí)體類型的過程。實(shí)體類型例如可以是州、城市、人或與人、地點(diǎn)、對象或主體相關(guān)聯(lián)的任何類別的信息。提供這些示例是為了說明的目的,而不應(yīng)解釋為限制。參考本示例,在輸入是關(guān)鍵詞“內(nèi)布拉斯加”的情況下,冷啟動模塊1606可以在操作1704中確定關(guān)鍵詞與被表征為“州”的實(shí)體類型相關(guān)聯(lián)。在操作1704中識別一個或多個實(shí)體之后,如下所述,定義實(shí)體類型的數(shù)據(jù)和一個或多個關(guān)鍵詞1602可以用于識別一個或多個內(nèi)容資源。
在一些配置中,一個或多個內(nèi)容資源126可以用于檢測和標(biāo)識實(shí)體類型和/或?qū)嶓w。在這樣的配置中,關(guān)鍵詞1602可以被傳送到一個或多個內(nèi)容資源126,例如BING、GOOGLE、維基百科(WIKIPEDIA)或被配置為接收輸入并基于輸入來生成內(nèi)容的任何其他內(nèi)容資源??梢砸庾R到,從一個或多個內(nèi)容資源126接收的任何內(nèi)容可以被解釋和處理以識別實(shí)體和/或?qū)嶓w類型。還可以意識到,來自一個資源的結(jié)果可以用于識別實(shí)體和/或?qū)嶓w類型。此外,可以意識到,可以聚合來自多個資源的結(jié)果以識別實(shí)體和/或?qū)嶓w類型。
接下來,在操作1706中,冷啟動模塊1606基于實(shí)體類型和/或一個或多個關(guān)鍵詞1602來識別內(nèi)容資源126。在一些配置中,冷啟動模塊1606可以存儲將實(shí)體類型關(guān)聯(lián)到一個或多個資源的數(shù)據(jù)。例如,如果實(shí)體類型是諸如城市或州的位置,則冷啟動模塊1606可以將該實(shí)體類型與諸如WIKIPEDIA、在線百科全書或另一內(nèi)容資源的特定內(nèi)容資源相關(guān)聯(lián)??梢砸庾R到,提供這些示例內(nèi)容資源僅用于說明目的,而不應(yīng)被解釋為限制。在本示例中,實(shí)體類型“位置”可以用關(guān)鍵詞“Nebraska”標(biāo)識,并且利用該實(shí)體類型,內(nèi)容收集模塊206可以將WIKIPEDIA識別為所選內(nèi)容資源126之一。在識別一個或多個所選內(nèi)容資源126時,描述所選內(nèi)容資源126的標(biāo)識的數(shù)據(jù)可以被傳送到內(nèi)容收集模塊206。
接下來,在操作1708中,內(nèi)容收集模塊206使用所選內(nèi)容資源126的標(biāo)識從所選內(nèi)容資源126獲得相關(guān)內(nèi)容1604。在操作1708中,例如,內(nèi)容收集模塊206可以引導(dǎo)查詢到所選內(nèi)容資源126以獲得相關(guān)內(nèi)容1604。為了說明的目的,相關(guān)內(nèi)容1604在這里也被稱為“內(nèi)容數(shù)據(jù)”。在一個說明性示例中,針對所選內(nèi)容資源126的查詢可以包括描述實(shí)體類型和/或關(guān)鍵詞1602的數(shù)據(jù)??梢砸庾R到,傳送到內(nèi)容資源126的查詢可以是任何形式,并且查詢可以包括伴隨或替換一個或多個關(guān)鍵詞1602和/或?qū)嶓w類型的信息或數(shù)據(jù)。在一個說明性示例中,對內(nèi)容資源126的查詢可以是指向所選內(nèi)容資源126的URL。URL可以包括一個或多個關(guān)鍵詞1602和/或?qū)嶓w類型和/或與關(guān)鍵詞1602相關(guān)的其他上下文信息。
響應(yīng)于查詢,所選內(nèi)容資源126可以將相關(guān)內(nèi)容1604返回到內(nèi)容收集模塊206。在當(dāng)前示例中,基于關(guān)鍵詞“Nebraska”和實(shí)體類型,內(nèi)容資源126(在該示例中是WIKIPEDIA)可以以Web頁面的形式返回相關(guān)內(nèi)容1604。可以意識到,相關(guān)內(nèi)容1604可以是任何格式,例如標(biāo)記文檔、WORD文檔或數(shù)據(jù)庫文件。一旦接收到相關(guān)內(nèi)容1604,內(nèi)容收集模塊206可以將相關(guān)內(nèi)容1604傳送到冷啟動模塊1606,在冷啟動模塊1606中相關(guān)內(nèi)容1604被進(jìn)一步處理。
接下來,在操作1710中,冷啟動模塊1606可以通過分析相關(guān)內(nèi)容1604的結(jié)構(gòu)元素來生成樣本內(nèi)容1610的結(jié)構(gòu)。一般地描述,可以從任何所接收內(nèi)容的分析所導(dǎo)出的相關(guān)內(nèi)容1604和/或其他上下文信息的結(jié)構(gòu)被用于生成樣本內(nèi)容1610的結(jié)構(gòu)。例如,相關(guān)內(nèi)容1604中的標(biāo)題或標(biāo)頭標(biāo)簽可以用于標(biāo)識具有提高的優(yōu)先級的文本,例如指示主題、子主題或需要部分標(biāo)題的文本。這樣的文本可以與樣本內(nèi)容1610中的一個或多個結(jié)構(gòu)元素(例如,部分標(biāo)題)相關(guān)聯(lián)。在其他示例中,增加的字體大小或粗體文本可以用于標(biāo)識具有提高的優(yōu)先級的文本??梢砸庾R到,任何接收到的內(nèi)容(諸如相關(guān)內(nèi)容1604)內(nèi)的任何數(shù)據(jù)類型或格式化指示符可以用作識別樣本內(nèi)容1610的結(jié)構(gòu)元素的基礎(chǔ)。為了說明的目的,樣本內(nèi)容1610在本文中稱為“樣本內(nèi)容數(shù)據(jù)”。
除了諸如標(biāo)題或部分標(biāo)題的結(jié)構(gòu)元素的識別之外,本文公開的技術(shù)可以識別和利用來自相關(guān)內(nèi)容1604和/或任何接收內(nèi)容的樣本句子。一般來說,樣本句子可用于通過提供一個或多個主題或部分的初始內(nèi)容來幫助作者啟動撰寫。例如,在一些配置中,當(dāng)識別出主題或子主題時,冷啟動模塊1606可以提取與主題或子主題相關(guān)的一個或兩個簡單句子,諸如在標(biāo)頭或標(biāo)題之后的句子。結(jié)果,在操作1710中生成的樣本內(nèi)容1610和/或內(nèi)容數(shù)據(jù)114可以包括具有標(biāo)題、部分標(biāo)題和樣本句子的結(jié)構(gòu)。
除了分析相關(guān)內(nèi)容1604的結(jié)構(gòu)元素以確定樣本內(nèi)容1610的結(jié)構(gòu)的結(jié)構(gòu)之外,內(nèi)容可以由冷啟動模塊1606生成。生成的內(nèi)容,例如標(biāo)題、部分標(biāo)題和/或樣本句子可以用于補(bǔ)充從相關(guān)內(nèi)容1604獲得的上述結(jié)構(gòu)元素和樣本句子??商娲?,所生成的內(nèi)容可以單獨(dú)使用或與其他收集的信息結(jié)合使用??梢砸庾R到,所生成的內(nèi)容可以從搜索查詢、存儲的數(shù)據(jù)、歷史使用信息或由系統(tǒng)1600獲得的其他數(shù)據(jù)中導(dǎo)出。
參考涉及“內(nèi)布拉斯加”查詢的當(dāng)前示例,相關(guān)內(nèi)容1604可以是從WIKIPEDIA返回的Web頁面的形式。標(biāo)簽、定義數(shù)據(jù)類型的數(shù)據(jù)、格式化數(shù)據(jù)和/或Web頁面的其他元數(shù)據(jù)可以用作確定樣本內(nèi)容1610的結(jié)構(gòu)的基礎(chǔ)。在該示例中,生成的樣本內(nèi)容1610可以將輸入“內(nèi)布拉斯加”布置作為標(biāo)題。此外,在該示例中,假定相關(guān)內(nèi)容1604包含粗體標(biāo)題中的多個詞:概要(Synopsis)、關(guān)于內(nèi)布拉斯加的新聞(News on Nebraska)、地理(Geography)和經(jīng)濟(jì)(Economy)。另外,在該示例中,假定相關(guān)內(nèi)容1604包含在每個加粗體標(biāo)題之后的幾個句子。給定相關(guān)內(nèi)容1604的該示例結(jié)構(gòu),所生成的樣本內(nèi)容1610可以具有這樣的結(jié)構(gòu):具有標(biāo)題(內(nèi)布拉斯加)、部分標(biāo)題(Synopsis、News on Nebraska、Geography和Economy)和樣本句子。本示例的其他細(xì)節(jié)和操作1710的其它細(xì)節(jié)在下面提供并且在圖18中示出。
如可以意識到的,盡管結(jié)構(gòu)元素(例如標(biāo)簽、數(shù)據(jù)類型和其他信息)可以用于確定樣本內(nèi)容1610的結(jié)構(gòu),但是可以使用用于識別結(jié)構(gòu)和相關(guān)信息的任何方法。例如,如果相關(guān)內(nèi)容1604是圖像或視頻的形式,則任何圖形展現(xiàn)的文本和使呈現(xiàn)的文本突出顯示的其他可視指示符的格式可以被解釋為標(biāo)識一個或多個結(jié)構(gòu)元素。
再次返回到圖17,例程1700在操作1712處進(jìn)行,其中系統(tǒng)1700生成意圖數(shù)據(jù)116。在上面的描述中提供了用于處理意圖數(shù)據(jù)的技術(shù)的細(xì)節(jié),意圖數(shù)據(jù)也被稱為“用戶意圖”。也如上所概述的,在一些配置中,在本文中也被稱為“意圖”或“指示意圖的數(shù)據(jù)”的意圖數(shù)據(jù)116可以強(qiáng)調(diào)或優(yōu)先化文本的某些主題或部分。另外,意圖數(shù)據(jù)116還可以指示內(nèi)容的預(yù)期用途,諸如被發(fā)布為在線公布的博客文章、要在報紙中印出的文章、展現(xiàn)給消費(fèi)者的待發(fā)布視頻以及其他用途。如上所述,意圖可以影響由布局生成引擎108產(chǎn)生的輸出的生成。還如上所述,意圖可以從多個源中導(dǎo)出。例如,意圖可以基于對樣本內(nèi)容1610和/或相關(guān)內(nèi)容1604的結(jié)構(gòu)的解釋。
在一些配置中,一種類型的意圖可以基于與一個或多個詞或短語相關(guān)聯(lián)的優(yōu)先級。例如,參考涉及“內(nèi)布拉斯加”查詢的當(dāng)前示例,與標(biāo)題相關(guān)聯(lián)的文本可以具有比與部分標(biāo)題相關(guān)聯(lián)的文本更高的優(yōu)先級。類似地,在另一示例中,部分標(biāo)題可以具有比樣本句子更高的優(yōu)先級。如上所概述,定義一個或多個優(yōu)先級的數(shù)據(jù)(例如意圖)可以由布局引擎108使用以用于進(jìn)一步處理模型。如上文所述,在包括圖10的描述的許多部分中,意圖數(shù)據(jù)116可以用其它方式來處理。例如,作者可以提供到來自源的格式化內(nèi)容分離成內(nèi)容存儲庫和類同庫(其捕獲意圖)的方式的改變。
接下來,在操作1714中,意圖數(shù)據(jù)116和內(nèi)容數(shù)據(jù)114可以從內(nèi)容/意圖引入模塊204傳送到布局引擎108。如上所述,布局引擎108可以多種不同的方式處理意圖數(shù)據(jù)116和/或內(nèi)容數(shù)據(jù)114,其細(xì)節(jié)在上面提供。除了與布局引擎108進(jìn)行數(shù)據(jù)通信之外,可以使用一個或多個界面在顯示設(shè)備上向用戶展現(xiàn)內(nèi)容數(shù)據(jù)114。一旦將意圖數(shù)據(jù)116和/或內(nèi)容數(shù)據(jù)114傳送到布局引擎108,例程1700在操作1716處終止。
如上所概述,參考操作1710,本文描述的技術(shù)可以生成樣本內(nèi)容1610。在一些配置中,冷啟動模塊1606可以分析相關(guān)內(nèi)容1604以導(dǎo)出與相關(guān)內(nèi)容1604相關(guān)的上下文信息。在一個說明性的示例中,對相關(guān)內(nèi)容1604的分析可以識別一個或多個實(shí)體,諸如人、地點(diǎn)或?qū)ο?。另外,對相關(guān)內(nèi)容1604的分析可以識別具有與所識別的實(shí)體的一個或多個關(guān)聯(lián)的相關(guān)實(shí)體。例如,相關(guān)內(nèi)容1604的上下文分析可以識別第一實(shí)體,諸如人,以及相關(guān)實(shí)體,諸如該人的配偶。根據(jù)該信息,冷啟動模塊1606可以生成附加內(nèi)容,諸如部分標(biāo)頭、標(biāo)題、樣本句子或描述任何所識別的實(shí)體和/或相關(guān)實(shí)體的任何其它內(nèi)容。
在一個說明性的示例中,如果用戶輸入包含字符串“Brad Pitt”的輸入,則冷啟動模塊1606可以將演員(actor)識別為一個實(shí)體。此外,冷啟動模塊1606可以分析相關(guān)內(nèi)容1604并識別相關(guān)實(shí)體,諸如家庭成員?;趯?dǎo)出的上下文信息,冷啟動模塊1606可以生成附加的部分標(biāo)題,例如關(guān)于配偶、每個孩子或其他家庭成員的部分標(biāo)題。另外,冷啟動模塊1606可以生成另外的樣本句子。可以意識到,冷啟動模塊1606可以聚合和/或修改檢索到的內(nèi)容。因此,可以生成新的結(jié)構(gòu)元素和/或內(nèi)容。
在操作1710的一些配置中,冷啟動模塊1606可以被配置為對從相關(guān)內(nèi)容1606導(dǎo)出的結(jié)構(gòu)進(jìn)行隨機(jī)化。例如,參考涉及內(nèi)布拉斯加查詢的上述示例,涉及概要、城市&州的現(xiàn)有結(jié)構(gòu)可能改變成不同的結(jié)構(gòu)。例如,可以重新布置、重新編寫或以其它方式修改部分標(biāo)頭,以在每次使用相同輸入時不同地顯現(xiàn)??梢砸庾R到,考慮到輸出將被用作創(chuàng)作工具,使輸出的結(jié)構(gòu)隨機(jī)化的過程可能是有益的。這樣的特征允許系統(tǒng)1700適應(yīng)大量用戶,而無需針對每個用戶創(chuàng)建具有相同結(jié)構(gòu)的樣本數(shù)據(jù)。
現(xiàn)在參考圖18,下面示出和描述了用于接收輸入的輸入界面1800。如圖18所示,輸入界面1800配置有用于接收諸如文本輸入的輸入的字段1802??梢砸庾R到,字段1802可以被配置為接收和編輯文本和其他形式的數(shù)據(jù)。另外,輸入界面1800可以被配置為向內(nèi)容/意圖引入模塊204傳送文本和其他形式的數(shù)據(jù)。輸入界面1800還可以配置有一個或多個控件,例如“生成”按鈕1804。當(dāng)生成按鈕1804被調(diào)用時,來自字段1802的數(shù)據(jù)或文本可以從界面1800傳送到內(nèi)容/意圖引入模塊204以進(jìn)行處理。
圖18還示出了被配置為顯示數(shù)據(jù)或信息(諸如樣本內(nèi)容1610)的顯示界面1801。當(dāng)應(yīng)用于涉及“內(nèi)布拉斯加”查詢的當(dāng)前示例時,顯示界面1800被配置為顯示在操作1710中生成的樣本內(nèi)容1610。如圖所示,顯示界面1801顯示標(biāo)題1806、部分標(biāo)題(1808A-1808D)和相關(guān)樣本句子(1810A-1810C)的列表。顯示界面1801可以被配置為與內(nèi)容/意圖引入模塊204進(jìn)行文本和其他形式的數(shù)據(jù)通信。另外,顯示界面1801可以被配置為顯示圖像1812,其可以由樣本內(nèi)容1610或任何其他資源或模塊來提供。另外,顯示界面1801可以被配置為允許用戶編輯所顯示的內(nèi)容,諸如文本或圖像。例如,用戶可以編輯標(biāo)題、一個或多個部分標(biāo)題、一個或多個樣本句子或一個或多個圖像。
圖19示出了能夠執(zhí)行程序組件的計(jì)算機(jī)的示例性的計(jì)算機(jī)架構(gòu)1900的附加的細(xì)節(jié),所述程序組件如本文所描述的用于提供用于基于用戶意圖生成用于內(nèi)容數(shù)據(jù)的布局的內(nèi)容創(chuàng)作服務(wù)。因此,圖19所示的計(jì)算機(jī)架構(gòu)1900可以圖示出服務(wù)器計(jì)算機(jī)、移動電話、PDA、智能電話、桌面型計(jì)算機(jī)、上網(wǎng)本計(jì)算機(jī)、平板式計(jì)算機(jī)和/或膝上型計(jì)算機(jī)的架構(gòu)。計(jì)算機(jī)架構(gòu)1900可用于執(zhí)行本文展現(xiàn)的軟件組件的任意方面。
圖19所示的計(jì)算機(jī)架構(gòu)1900包括中央處理單元1902(“CPU”)、包括隨機(jī)存取存儲器1906(“RAM”)和只讀存儲器(“ROM”)1908的系統(tǒng)存儲器1904以及將存儲器1904與CPU 1902耦合的系統(tǒng)總線1910。包含了例如在啟動期間幫助在計(jì)算機(jī)架構(gòu)1900內(nèi)的元件之間傳輸信息的基本例程的基本輸入/輸出系統(tǒng)存儲在ROM 1908中。計(jì)算機(jī)架構(gòu)1900還可以包括大容量存儲設(shè)備1912,其用于存儲操作系統(tǒng)1918,以及一個或多個應(yīng)用程序,其包括但不限于布局生成引擎108、內(nèi)容收集/生成模塊106和web瀏覽器應(yīng)用1910。
大容量存儲設(shè)備1912通過與總線1910連接的大容量存儲控制器(未示出)來與CPU 1902連接。大容量存儲設(shè)備1912及其相關(guān)聯(lián)的計(jì)算機(jī)可讀介質(zhì)提供了用于計(jì)算機(jī)架構(gòu)1900的非易失性存儲。雖然在本文所包含的計(jì)算機(jī)可讀介質(zhì)的描述是指大容量存儲設(shè)備,如固態(tài)驅(qū)動器、硬盤或CD-ROM驅(qū)動器,但是本領(lǐng)域技術(shù)人員應(yīng)當(dāng)意識到計(jì)算機(jī)可讀介質(zhì)可以是能夠由計(jì)算機(jī)架構(gòu)1900訪問的任何可用的計(jì)算機(jī)存儲介質(zhì)或通信介質(zhì)。
通信介質(zhì)可包括計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊、或調(diào)制數(shù)據(jù)信號中的其它數(shù)據(jù)如載波或其他傳輸機(jī)制,并且包括任何輸送介質(zhì)。術(shù)語“調(diào)制數(shù)據(jù)信號”是指其一個或多個特性以將信息編碼到信號中的方式進(jìn)行設(shè)定或改變的信號。通過示例而不是限制的方式,通信介質(zhì)可以包括諸如有線網(wǎng)或直接連線連接的有線介質(zhì)以及諸如聲波、RF、紅外和其他無線介質(zhì)的無線介質(zhì)。上述任意的組合也應(yīng)當(dāng)包含在計(jì)算機(jī)可讀介質(zhì)的范圍內(nèi)。
通過舉例而不是限制的方式,計(jì)算機(jī)存儲介質(zhì)可以包括以用于諸如計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)的信息的存儲的任何方法或技術(shù)實(shí)現(xiàn)的易失性和非易失性的、可移動和非可移動的介質(zhì)。例如,計(jì)算機(jī)介質(zhì)包括但不限于RAM、ROM、EPROM、EEPROM、閃速存儲器或其它固態(tài)存儲器技術(shù)、CD-ROM、數(shù)字多功能盤(“DVD”)、HD-DVD、BLU-RAY或其它光學(xué)存儲、磁盒、磁帶、磁盤存儲或其它磁存儲設(shè)備、或者能夠用于存儲所需的信息且能夠由計(jì)算機(jī)架構(gòu)1900訪問的任何其它介質(zhì)。為了權(quán)利要求的目的,短語“計(jì)算機(jī)存儲介質(zhì)”或“計(jì)算機(jī)可讀存儲介質(zhì)”及其變化形式本身不包含波、信號和/或其它暫態(tài)的和/或無形的通信介質(zhì)。
根據(jù)各個配置,計(jì)算機(jī)架構(gòu)1900可以通過網(wǎng)絡(luò)1056和/或另一網(wǎng)絡(luò)(未示出)利用到遠(yuǎn)程計(jì)算機(jī)的邏輯連接而操作于網(wǎng)絡(luò)環(huán)境中。計(jì)算機(jī)架構(gòu)1900可以通過與總線1910連接的網(wǎng)絡(luò)接口單元1914而連接到網(wǎng)絡(luò)1056。應(yīng)當(dāng)意識到,網(wǎng)絡(luò)接口單元1914可以用來連接到其它類型的網(wǎng)絡(luò)以及遠(yuǎn)程計(jì)算機(jī)系統(tǒng)。計(jì)算機(jī)架構(gòu)1900還可以包括用于接收和處理來自包括鍵盤、鼠標(biāo)或電子指示筆(圖8中未示出)的多個其它設(shè)備的輸入的輸入/輸出控制器1916。類似地,輸入/輸出控制器1916可以提供輸出給顯示屏、打印機(jī)或其它類型的輸出設(shè)備(圖8中未示出)。
應(yīng)當(dāng)意識到,本文所描述的軟件組件在加載到CPU 1902中且執(zhí)行時可以將CPU 1902和整個計(jì)算機(jī)架構(gòu)1900從通用計(jì)算系統(tǒng)變換成經(jīng)定制而促進(jìn)本文展現(xiàn)的功能的專用計(jì)算系統(tǒng)。CPU 1902可以由任意數(shù)量的晶體管或其它離散電路元件構(gòu)成,這些晶體管和離散電路元件可以單獨(dú)地或者統(tǒng)一地設(shè)想任意數(shù)量的狀態(tài)。更具體地,CPU 1902可以響應(yīng)于包含在本文公開的軟件模塊內(nèi)的可執(zhí)行指令而作為有限狀態(tài)機(jī)來操作。這些計(jì)算機(jī)可執(zhí)行指令可以通過指定CPU 1902如何在狀態(tài)之間轉(zhuǎn)變而變換CPU 1902,從而變換構(gòu)成CPU 1902的晶體管或其它離散硬件元件。
對本文展現(xiàn)的軟件模塊進(jìn)行編碼也可以變換本文展現(xiàn)的計(jì)算機(jī)可讀介質(zhì)的物理結(jié)構(gòu)。在本說明書的不同的實(shí)現(xiàn)方式中,物理結(jié)構(gòu)的具體的變換可以取決于各種因素。這些因素的示例可以包括但不限于用來實(shí)現(xiàn)計(jì)算機(jī)可讀介質(zhì)的技術(shù),計(jì)算機(jī)可讀介質(zhì)是表征為主存儲還是輔存儲,等等。例如,如果計(jì)算機(jī)可讀介質(zhì)實(shí)現(xiàn)為基于半導(dǎo)體的存儲器,則本文公開的軟件可以通過變換半導(dǎo)體存儲器的物理狀態(tài)而編碼到計(jì)算機(jī)可讀介質(zhì)上。例如,軟件可以變換構(gòu)成半導(dǎo)體存儲器的晶體管、電容器、或其它離散電路元件的狀態(tài)。軟件還可以變換這些組件的物理狀態(tài)從而在其中存儲數(shù)據(jù)。
作為另一示例,本文所公開的計(jì)算機(jī)可讀介質(zhì)可以利用磁或光技術(shù)來實(shí)現(xiàn)。在這些實(shí)現(xiàn)方式中,當(dāng)軟件編碼到其中時,本文所展現(xiàn)的軟件可以變換磁或光介質(zhì)的物理狀態(tài)。這些變換可以包括改變在給定的磁介質(zhì)內(nèi)的特定位置的磁特性。這些變換還可以包括改變在給定的光介質(zhì)內(nèi)的特定位置的物理特征或特性,以改變那些位置的光學(xué)特性。物理介質(zhì)的其它變換是可能的,不偏離本說明書的范圍和主旨,提供了上述示例僅為了利于該論述。
根據(jù)上述,應(yīng)當(dāng)意識到,許多類型的物理變換可以發(fā)生在計(jì)算機(jī)架構(gòu)1900內(nèi)從而存儲和執(zhí)行本文展現(xiàn)的軟件組件。還應(yīng)當(dāng)意識到,計(jì)算機(jī)架構(gòu)1900可以包括其它類型的計(jì)算設(shè)備,包括手持式計(jì)算機(jī)、嵌入式計(jì)算機(jī)系統(tǒng)、個人數(shù)字助理以及本領(lǐng)域技術(shù)人員所知的其它類型的計(jì)算設(shè)備。還可想到,計(jì)算機(jī)架構(gòu)1900可以不包括圖19所示的全部組件,可以包括圖19中未明確示出的其它組件,或者可以使用完全不同于圖19所示的架構(gòu)。
圖20描繪了能夠執(zhí)行本文所述的用于提供基于用戶意圖的內(nèi)容創(chuàng)作以及其它方面的軟件組件的示例性的分布式計(jì)算環(huán)境2000。因此,圖20所示的分布式計(jì)算環(huán)境2000能夠用于執(zhí)行本文展現(xiàn)的軟件組件的任意方面。例如,分布式計(jì)算環(huán)境2000可用于執(zhí)行內(nèi)容收集/生成模塊106、布局生成引擎108和/或本文所述的其它軟件組件的各方面。
根據(jù)各個實(shí)現(xiàn)方式,分布式計(jì)算環(huán)境2000包括操作于網(wǎng)絡(luò)2004上、與網(wǎng)絡(luò)2004通信或者作為網(wǎng)絡(luò)2004的部分而操作的計(jì)算環(huán)境2002。網(wǎng)絡(luò)2004可以是或者可以包括網(wǎng)絡(luò)124,如上文參考圖19所說明的。網(wǎng)絡(luò)2004還可以包括各種接入網(wǎng)絡(luò)。一個或多個客戶端設(shè)備2006A-2006N(下文統(tǒng)一地和/或一般地稱為“客戶端2006”)能夠經(jīng)由網(wǎng)絡(luò)2004和/或其它連接(圖20中未示出)與計(jì)算環(huán)境2002通信??蛻舳?006可以包括用戶計(jì)算設(shè)備130和/或呈現(xiàn)設(shè)備110。在一個圖示的配置中,客戶端2006包括計(jì)算設(shè)備2006A,諸如膝上型計(jì)算機(jī)、桌面型計(jì)算機(jī)或其它計(jì)算設(shè)備;片式或平板式計(jì)算設(shè)備(“平板計(jì)算設(shè)備”)2006B;移動計(jì)算設(shè)備2006C,如移動電話、智能電話或其它移動計(jì)算設(shè)備;服務(wù)器計(jì)算機(jī)2006D;和/或其它設(shè)備2006N。應(yīng)當(dāng)理解的是,任意數(shù)量的客戶端2006能夠與計(jì)算環(huán)境2002通信。本文參考圖19和圖21描述了和圖示出客戶端2006的兩個示例的計(jì)算架構(gòu)。應(yīng)當(dāng)理解的是,圖示的客戶端2006和本文所圖示和描述的計(jì)算架構(gòu)是示例性的,而不應(yīng)解釋為以任何方式限制。
在圖示的配置中,計(jì)算環(huán)境2002包括應(yīng)用服務(wù)器2008、數(shù)據(jù)存儲裝置2010以及一個或多個網(wǎng)絡(luò)接口2012。根據(jù)各個實(shí)現(xiàn)方式,應(yīng)用服務(wù)器2008的功能可以由作為網(wǎng)絡(luò)2004的部分執(zhí)行或者與網(wǎng)絡(luò)2004通信的一個或多個服務(wù)器計(jì)算機(jī)來提供。應(yīng)用服務(wù)器2008能夠托管各種服務(wù)、虛擬機(jī)、端口和/或其它資源。在圖示的配置中,應(yīng)用服務(wù)器2008托管了用于托管應(yīng)用或其它功能的一個或多個虛擬機(jī)2014。根據(jù)各個實(shí)現(xiàn)方式,虛擬機(jī)2014托管了用于基于用戶意圖的內(nèi)容創(chuàng)作的一個或多個應(yīng)用和/或軟件模塊。應(yīng)當(dāng)理解的是,該配置是示例性的,而不應(yīng)解釋為以任何方式限制。應(yīng)用服務(wù)器2008還托管或提供對一個或多個端口、鏈接頁面、Web站點(diǎn)和/或其它信息(“Web端口”)2016的接入。
根據(jù)各個實(shí)現(xiàn)方式,應(yīng)用服務(wù)器2008還包括一個或多個郵箱服務(wù)2018和一個或多個消息傳遞服務(wù)2020。郵箱服務(wù)2018可以包括電子郵件(“email”)服務(wù)。郵箱服務(wù)2018還可以包括各種個人信息管理(“PIM”)服務(wù),包括但不限于日歷服務(wù)、通訊錄管理服務(wù)、協(xié)作服務(wù)和/或其它服務(wù)。消息傳遞服務(wù)2020可以包括但不限于即時消息傳遞服務(wù)、聊天服務(wù)、論壇服務(wù)和/或其它通信服務(wù)。
應(yīng)用服務(wù)器2008還可以包括一個或多個社交聯(lián)網(wǎng)服務(wù)2022。社交聯(lián)網(wǎng)服務(wù)2022可以包括各種社交聯(lián)網(wǎng)服務(wù),包含但不限于用于共享或張貼狀態(tài)更新、即時消息、鏈接、照片、視頻和/或其它信息的服務(wù);用于評論或顯示對文章、產(chǎn)品、博客或其它資源的興趣的服務(wù);和/或其它服務(wù)。在一些配置中,社交聯(lián)網(wǎng)服務(wù)2022由如下提供或包含如下:FACEBOOK社交聯(lián)網(wǎng)服務(wù)、LINKEDIN專業(yè)聯(lián)網(wǎng)服務(wù)、MYSPACE社交聯(lián)網(wǎng)服務(wù)、FOURSQUARE地理聯(lián)網(wǎng)服務(wù)、YAMMER辦公同事聯(lián)網(wǎng)服務(wù),等等。在其它配置中,社交聯(lián)網(wǎng)服務(wù)2022由可能或可能沒有明確地表明為社交聯(lián)網(wǎng)提供商的其它服務(wù)、站點(diǎn)和/或提供商來提供。例如,一些web網(wǎng)站允許用戶在各種活動和/或上下文中經(jīng)由電子郵件、聊天服務(wù)和/或其它手段彼此交互,例如,閱讀出版物、評論商品或服務(wù)、發(fā)布、協(xié)作、游戲等。這些服務(wù)的示例包括但不限于來自華盛頓埃德蒙頓的微軟公司的WINDOWS LIVE服務(wù)和XBOX LIVE服務(wù)。其它服務(wù)是可能的且可想到。
社交聯(lián)網(wǎng)服務(wù)2022還可以包括評論、發(fā)博客和/或微博服務(wù)。這些服務(wù)的示例包括但不限于,YELP評論服務(wù)、KUDZU審閱服務(wù)、YAMMER企業(yè)微博服務(wù)、TWITTER消息傳遞服務(wù)、GOOGLE BUZZ服務(wù)和/或其它服務(wù)。應(yīng)當(dāng)意識到,上述服務(wù)列表不是窮盡的,而且為了簡要起見在此沒有提到過多的附加的和/或可替代的社交聯(lián)網(wǎng)服務(wù)2022。因此,上述配置是示例性的,而不應(yīng)解釋為以任何方式進(jìn)行限制。根據(jù)各個實(shí)現(xiàn)方式,社交聯(lián)網(wǎng)服務(wù)2022可以托管用于提供本文所述的用于優(yōu)化媒體的視覺角度的功能的一個或多個應(yīng)用和/或軟件模塊。例如,應(yīng)用服務(wù)器2008中的任意一個可以傳送或利于本文所述的功能和特征。例如,運(yùn)行于電話或任何其它客戶端2006上的社交聯(lián)網(wǎng)應(yīng)用、郵箱客戶端、消息傳遞客戶端或?yàn)g覽器可以與聯(lián)網(wǎng)服務(wù)2022通信且促進(jìn)上文結(jié)合圖3所描述的功能(即使是部分地)。
如圖20所示,應(yīng)用服務(wù)器2008還能夠托管其它服務(wù)、應(yīng)用、端口和/或其它資源(“其它資源”)2024。其它資源2024可以包括但不限于圖像處理功能。因此,應(yīng)當(dāng)意識到計(jì)算環(huán)境2002能夠提供本文所提供的公開的概念和技術(shù)與各種郵箱、消息傳遞、社交聯(lián)網(wǎng)和/或其它服務(wù)或資源的整合。
如上所述,計(jì)算環(huán)境2002可以包括數(shù)據(jù)存儲裝置2010。根據(jù)各個實(shí)現(xiàn)方式,數(shù)據(jù)存儲2010的功能由操作于網(wǎng)絡(luò)2004上或者與網(wǎng)絡(luò)2004通信的一個或多個數(shù)據(jù)庫來提供。數(shù)據(jù)存儲2010的功能還能夠由被配置成托管用于計(jì)算環(huán)境2002的數(shù)據(jù)的一個或多個服務(wù)器計(jì)算機(jī)來提供。數(shù)據(jù)存儲裝置2010可以包括、托管或提供一個或多個真實(shí)的或虛擬的數(shù)據(jù)存儲數(shù)據(jù)存儲2026A-2026N(下文統(tǒng)一地和/或一般地稱為“數(shù)據(jù)存儲2026”)。數(shù)據(jù)存儲2026被配置成托管由內(nèi)容創(chuàng)建應(yīng)用813所使用或創(chuàng)建的數(shù)據(jù)和/或其它數(shù)據(jù)。雖然圖20中未示出,但是數(shù)據(jù)存儲2026還能夠托管或存儲圖像、數(shù)據(jù)結(jié)構(gòu)、推薦引擎執(zhí)行的算法、和/或內(nèi)容創(chuàng)建程序或另一模塊(例如,程序模塊108)所使用的其它數(shù)據(jù)。數(shù)據(jù)存儲2026的方面可以與例如ONEDRIVE、DROPBOX或GOOGLEDRIVE的服務(wù)相關(guān)聯(lián)。
計(jì)算環(huán)境2002能夠與網(wǎng)絡(luò)接口2012通信或者由網(wǎng)絡(luò)接口2012訪問。網(wǎng)絡(luò)接口2012可以包括用于支持包括但不限于客戶端2006和應(yīng)用服務(wù)器2008在內(nèi)的兩個或更多個計(jì)算設(shè)備之間的通信的各種類型的網(wǎng)絡(luò)硬件和軟件。應(yīng)當(dāng)意識到,網(wǎng)絡(luò)接口2012還可以用來連接到其它類型的網(wǎng)絡(luò)和/或計(jì)算機(jī)系統(tǒng)。
應(yīng)當(dāng)理解的是,本文所描述的分布式計(jì)算環(huán)境2000能夠?yàn)楸疚乃枋龅能浖娜我夥矫嫣峁┠軌虮慌渲贸蓤?zhí)行本文公開的軟件組件的任意方面的任意數(shù)量的虛擬計(jì)算資源和/或其它分布式計(jì)算功能。根據(jù)本文公開的概念和技術(shù)的各個實(shí)現(xiàn)方式,分布式計(jì)算環(huán)境2000將在本文描述為服務(wù)的軟件功能提供給客戶端2006。應(yīng)當(dāng)理解的是,客戶端2006可以包括真實(shí)的或虛擬的機(jī)器,包括但不限于服務(wù)器計(jì)算機(jī)、web服務(wù)器、個人計(jì)算機(jī)、移動計(jì)算設(shè)備、智能電話和/或其它設(shè)備。因此,本文所公開的概念和技術(shù)的各種配置使得被配置成訪問分布式計(jì)算環(huán)境2000的任何設(shè)備能夠使用本文所描述的用于優(yōu)化媒體的視覺角度以及其它方面的功能。在一個具體的示例中,如上文所概述的,本文所述的技術(shù)可以至少部分地通過與圖20的應(yīng)用服務(wù)器2008協(xié)作的圖19的web瀏覽器應(yīng)用1910來實(shí)現(xiàn)。
現(xiàn)在轉(zhuǎn)到圖21,能夠執(zhí)行本文所描述的用于優(yōu)化媒體的視覺角度的各種軟件組件的計(jì)算設(shè)備的示例性的計(jì)算設(shè)備架構(gòu)2100。計(jì)算設(shè)備架構(gòu)2100能應(yīng)用于部分地由于形狀因數(shù)、無線連接能力和/或電池供電操作而促進(jìn)移動計(jì)算的計(jì)算設(shè)備。在一些配置中,計(jì)算設(shè)備包括但不限于移動電話、平板式設(shè)備、片式設(shè)備、便攜式視頻游戲設(shè)備等。計(jì)算設(shè)備架構(gòu)2100能應(yīng)用于圖20所示的任意客戶端2006。此外,計(jì)算設(shè)備架構(gòu)2100的方面可以應(yīng)用于傳統(tǒng)的桌面型計(jì)算機(jī)、便攜式計(jì)算機(jī)(例如,膝上型設(shè)備、筆記本設(shè)備、超級便攜式設(shè)備和上網(wǎng)本)、服務(wù)器計(jì)算機(jī)和其它計(jì)算機(jī)系統(tǒng),如本文參考圖19所描述的。例如,下文所公開的單觸摸和多觸摸方面可應(yīng)用于使用觸摸屏的桌面型計(jì)算機(jī)或某種其它觸摸使能設(shè)備,諸如觸摸使能跟蹤墊或觸摸使能鼠標(biāo)。
圖21所示的計(jì)算設(shè)備架構(gòu)2100包括處理器2102、存儲器組件2104、網(wǎng)絡(luò)連接組件2106、傳感器組件2108、輸入/輸出組件2110和電力組件2112。在圖示的配置中,處理器2102與存儲器組件2104、網(wǎng)絡(luò)連接組件2106、傳感器組件2108、輸入/輸出(“I/O”)組件2110和電力組件2112通信。雖然沒有示出圖21所示的各個組件之間的連接,但是該組件能夠交互而實(shí)施設(shè)備功能。在一些配置中,組件被配置成經(jīng)由一個或多個總線(未示出)通信。
處理器2102包括中央處理器(“CPU”),其被配置成處理數(shù)據(jù),執(zhí)行一個或多個應(yīng)用程序的計(jì)算機(jī)可執(zhí)行指令,并且與計(jì)算設(shè)備架構(gòu)2100的其它組件通信從而實(shí)施本文所描述的各種功能。處理器2102可以用來執(zhí)行本文所呈現(xiàn)的軟件組件的方面,尤其是那些至少部分地使用觸摸使能輸入的方面。
在一些配置中,處理器2102包括圖形處理單元(“GPU”),其被配置成加速CPU所執(zhí)行的操作,包括但不限于,通過執(zhí)行通用科學(xué)和/或工程計(jì)算應(yīng)用所實(shí)施的操作,以及諸如高分辨率視頻(例如,720P,1080P和更大分辨率)、視頻游戲、三維(“3D”)建模應(yīng)用等圖形密集計(jì)算應(yīng)用。在一些配置中,處理器2102被配置成與分立的GPU(未示出)通信。在任何情況下,CPU和GPU可以依照協(xié)同處理的CPU/GPU計(jì)算模型來配置,其中應(yīng)用的順序的部分在CPU上執(zhí)行,并且計(jì)算密集部分由GPU來加速。
在一些配置中,連同下文所描述的其它組件中的一個或多個一起,處理器2102是片上系統(tǒng)(“SoC”)或者包含在SoC中。例如,SoC可以包括處理器2102、GPU、網(wǎng)絡(luò)連接組件2106中的一個或多個以及傳感器組件2108中的一個或多個。在一些配置中,處理器2102部分地利用封裝上封裝“PoP”集成電路封裝技術(shù)來制作。而且,處理器2102可以是單核或多核處理器。
處理器2102可以依照自英國劍橋的ARM HOLDINGS許可使用的ARM架構(gòu)來創(chuàng)建??商娲?,處理器2102可依照x86架構(gòu)來創(chuàng)建,例如可從加利福尼亞山景城的因特爾公司以及其它獲得。在一些配置中,處理器2102是可從加利福尼亞的圣地牙哥的QUALCOMM得到的SNAPDRAGON SoC、可從加利福尼亞的圣塔克拉拉的NVIDIA得到的TEGRA SoC、可從韓國首爾的三星公司得到的HUMMINGBIRD SoC、可從德克薩斯州的達(dá)拉斯的德州儀器得到的Open Multimedia Application Platform("OMAP")SoC、上述SoC中的任一個的定制版本或?qū)S蠸oC。
存儲器組件2104包括隨機(jī)存取存儲器(“RAM”)2114、只讀存儲器(“ROM”)2116、集成存儲存儲器(“集成存儲”)2118和可移除存儲存儲器(“可移除存儲”)2120。在一些配置中,RAM 2114或其部分、ROM 2118或其部分和/或RAM 2114和ROM 2118的某種組合集成到處理器2102中。在一些配置中,ROM 2118被配置成存儲固件、操作系統(tǒng)或其部分(例如,操作系統(tǒng)內(nèi)核)和/或從集成存儲2118或可移除存儲2120裝載操作系統(tǒng)內(nèi)核的引導(dǎo)加載程序。
集成存儲2118可以包括固態(tài)存儲器、硬盤或固態(tài)存儲器和硬盤的組合。集成存儲2118可以釬焊到或以其它方式連接到邏輯板上,處理器2102以及本文所描述的其它組件也可以連接到該邏輯板上。因此,集成存儲2118集成到計(jì)算設(shè)備中。集成存儲2118被配置成存儲本文所描述的操作系統(tǒng)或其部分、應(yīng)用程序、數(shù)據(jù)和其它軟件組件。
可移除存儲2120可以包括固態(tài)存儲器、硬盤或固態(tài)存儲器和硬盤的組合。在一些配置中,可移除存儲2120被提供以取代集成存儲2118。在其它配置中,可移除存儲2120被提供作為附加的可選存儲。在一些配置中,可移除存儲2120與集成存儲2118邏輯地組合而使得總可用存儲可用作為總組合存儲容量。在一些配置中,向用戶顯示集成存儲2118和可移除存儲2120的總組合容量,而不是集成存儲2118和可移除存儲2120的單獨(dú)的存儲容量。
可移除存儲2120被配置成插入可移除存儲存儲器槽(未示出)或其它機(jī)構(gòu),可移除存儲2120插入可移除存儲存儲器槽或其它機(jī)構(gòu)且緊固到其上以利于可移除存儲2120能夠借以與諸如處理器2102的計(jì)算設(shè)備的其它組件通信的連接。可移除存儲2120可以嵌入各種存儲器卡形式中,包括但不限于,PC卡、CompactFlash卡、記憶棒、安全數(shù)字(“SD”)、迷你SD(miniSD)、微型SD(microSD)、通用集成電路板(“UICC”)(例如,訂閱者身份模塊(“SIM”)或通用SIM(“USIM”))、專有形式,等等。
可以理解的是,存儲器組件2104中的一個或多個能夠存儲操作系統(tǒng)。根據(jù)各個配置,操作系統(tǒng)包括但不限于來自塞班公司的SYMBIAN OS、來自華盛頓雷德蒙頓的微軟公司的WINDOWS MOBILE OS、來自微軟公司的WINDOWS PHONE OS、來自微軟公司的WINDOWS、來自加利福尼亞的帕羅奧圖的惠普公司的PALM WEBOS、來自加拿大多倫多的Research in Motion Limited of Waterloo的BLACKBERRY OS、來自加利福尼亞的庫比蒂諾的蘋果公司的IOS以及來自加利福尼亞的山景城的谷歌公司的ANDROID OS??上氲狡渌僮飨到y(tǒng)。
網(wǎng)絡(luò)連接組件2106包括無線廣域網(wǎng)組件(“WWAN組件”)2122、無線局域網(wǎng)組件(“WLAN組件”)2124以及無線個域網(wǎng)組件(“WPAN組件”)2126。網(wǎng)絡(luò)連接組件2106利于從和向網(wǎng)絡(luò)2156或另一網(wǎng)絡(luò)的通信,網(wǎng)絡(luò)可以是WWAN、WLAN或WPAN。雖然僅示出了網(wǎng)絡(luò)2156,但是網(wǎng)絡(luò)連接組件1006可促進(jìn)與多個網(wǎng)絡(luò)的同時通信,包括圖20的網(wǎng)絡(luò)2004。例如,網(wǎng)絡(luò)連接組件2106可以促進(jìn)經(jīng)由WWAN、WLAN或WPAN中的一個或多個與多個網(wǎng)絡(luò)的同時通信。
網(wǎng)絡(luò)2156可以是或者可以包括WWAN,諸如使用一個或多個移動遠(yuǎn)程通信技術(shù)來經(jīng)由WWAN組件2122提供語音和/或數(shù)據(jù)服務(wù)給使用計(jì)算設(shè)備架構(gòu)2100的計(jì)算設(shè)備的移動遠(yuǎn)程通信網(wǎng)絡(luò)。移動遠(yuǎn)程通信技術(shù)可以包括但不限于全球移動通信系統(tǒng)(“GSM”)、碼分多址(“CDMA”)ONE、CDMA2000、通用移動遠(yuǎn)程通信系統(tǒng)(“UMTS”)、長期演進(jìn)(“LTE”)和世界微波接入互操作(“WiMAX”)。而且,網(wǎng)絡(luò)2156可以使用各種信道接入方法(其可以或者可以不由上述標(biāo)準(zhǔn)來使用),包括但不限于,時分多址(“TDMA”)、頻分多址(“FDMA”)、CDMA、寬帶CDMA(“W-CDMA”)、正交頻分多路復(fù)用(“OFDM”)、空分多址(“SDMA”)和類似方法。數(shù)據(jù)通信可以利用如下來提供:通用分組無線電服務(wù)(“GPRS”)、全局演進(jìn)增強(qiáng)數(shù)據(jù)率(“EDGE”)、高速分組接入(“HSPA”)協(xié)議系列(包括高速下行鏈路分組接入(“HSDPA”)、增強(qiáng)上行鏈路(“EUL”)或另外稱為高速上行鏈路分組接入(“HSUPA”)、演進(jìn)的HSPA(“HSPA+”))、LTE、以及其它各種當(dāng)前和未來的無線數(shù)據(jù)訪問標(biāo)準(zhǔn)。網(wǎng)絡(luò)2156可被配置成利用上述技術(shù)的任意組合來提供語音和/或數(shù)據(jù)通信。網(wǎng)絡(luò)2156可被配置成或適于依照未來一代的技術(shù)來提供語音和/或數(shù)據(jù)通信。
在一些配置中,WWAN組件2122被配置成提供到網(wǎng)絡(luò)2156的雙重多模式連接。例如,WWAN組件2122可以被配置成提供到網(wǎng)絡(luò)2156的連接,其中網(wǎng)絡(luò)2156經(jīng)由GSM和UMTS技術(shù),或者經(jīng)由技術(shù)的某種其它組合來提供服務(wù)??商娲兀鄠€WWAN組件2122可用來實(shí)施該功能,和/或提供附加功能來支持其它非兼容技術(shù)(即,不能得到單個WWAN組件支持)。WWAN組件2122可促進(jìn)到多個網(wǎng)絡(luò)(例如,UMTS網(wǎng)絡(luò)和LTE網(wǎng)絡(luò))的類似的連接。
網(wǎng)絡(luò)2156可以是依照電氣與電子工程師協(xié)會(“IEEE”)802.11標(biāo)準(zhǔn)中的一個或多個而操作的WLAN,所述標(biāo)準(zhǔn)諸如IEEE 802.11a、802.11b、802.11g、802.11n和/或未來的802.11標(biāo)準(zhǔn)(在本文統(tǒng)稱為WI-FI)。還可以想到草稿802.11標(biāo)準(zhǔn)。在一些配置中,WLAN利用一個或多個無線WI-FI接入點(diǎn)來實(shí)現(xiàn)。在一些配置中,無線WI-FI接入點(diǎn)中的一個或多個是能夠與WWAN連接的、充當(dāng)WI-FI熱點(diǎn)的另一計(jì)算設(shè)備。WLAN組件2124被配置成經(jīng)由WI-FI接入點(diǎn)與網(wǎng)絡(luò)2156連接。這些連接可經(jīng)由各種加密技術(shù)來確保,加密技術(shù)包括但不限于WI-FI保護(hù)接入(“WPA”)、WPA2、有線等價隱私(“WEP”)和類似技術(shù)。
網(wǎng)絡(luò)2156可以是依照紅外數(shù)據(jù)聯(lián)盟(“IrDA”)、BLUETOOTH、無線通用串行總線(“USB”)、Z-Wave、ZIGBEE或某其它短程無線技術(shù)來操作的WPAN。在一些配置中,WPAN組件2126被配置成促進(jìn)與諸如外圍設(shè)備、計(jì)算機(jī)或其它計(jì)算設(shè)備的其它設(shè)備經(jīng)由WPAN的通信。
傳感器組件2108包括磁力計(jì)2128、環(huán)境光傳感器2130、接近傳感器2132、加速度計(jì)2134、陀螺儀2136和全球定位系統(tǒng)傳感器(“GPS傳感器”)2138??上氲?,諸如但不限于溫度傳感器或震動檢測傳感器的其它傳感器也可以包含在計(jì)算設(shè)備架構(gòu)2100中。
磁力計(jì)2128可以被配置成測量磁場的強(qiáng)度和方向。在一些配置中,磁力計(jì)2128提供對存儲在存儲器組件2104中的一個內(nèi)的羅盤應(yīng)用程序的測量從而為用戶提供參考系內(nèi)的精確的方向,包括主要方向,北、南、東和西??梢詫Π_盤組件的導(dǎo)航應(yīng)用程序提供類似的測量。可想到通過磁力計(jì)2128所獲得的測量的其它用途。
環(huán)境光傳感器2130被配置成測量環(huán)境光。在一些配置中,環(huán)境光傳感器2130提供對存儲在存儲器組件2104中的一個內(nèi)的應(yīng)用程序的測量從而自動地調(diào)節(jié)顯示器(下面所述)的亮度從而補(bǔ)償?shù)凸庹窄h(huán)境和高光照環(huán)境。可想到通過環(huán)境光傳感器2130所獲得的測量的其它用途。
接近傳感器2132被配置成在不直接接觸的情況下檢測靠近計(jì)算設(shè)備的物體或事物的存在。在一些配置中,接近傳感器2132檢測用戶的身體(例如,用戶的面部)的存在且提供該信息給存儲在存儲器組件2104中之一內(nèi)的、使用接近信息來使能或禁用計(jì)算設(shè)備的某功能的應(yīng)用程序。例如,電話應(yīng)用程序可以響應(yīng)于接收到接近信息而自動禁用觸摸屏(下面說明),使得用戶的面部不會在通話期間不利地結(jié)束通話或使能/禁用電話應(yīng)用程序內(nèi)的其它功能。接近傳感器2128所檢測到的接近的其它用途可被想到。
加速度計(jì)2134被配置成測量正確的加速度。在一些配置中,來自加速度計(jì)2134的輸出由應(yīng)用程序用作控制應(yīng)用程序的某功能的輸入機(jī)制。例如,應(yīng)用程序可以是視頻游戲,其中人物、其部分或?qū)ο箜憫?yīng)于經(jīng)由加速度計(jì)2134接收到的輸入而移動或以其它方式被操縱。在一些配置中,來自加速度計(jì)2134的輸出提供給應(yīng)用程序以便用于在橫向模式與縱向模式之間切換、計(jì)算坐標(biāo)加速度,或者檢測落差??梢韵氲郊铀俣扔?jì)2134的其它用途。
陀螺儀2136被配置成測量和維持方位。在一些配置中,來自陀螺儀2136的輸出由應(yīng)用程序用作控制應(yīng)用程序的某功能的輸入機(jī)制。例如,陀螺儀2136能夠用于視頻游戲應(yīng)用或某其它應(yīng)用的3D環(huán)境內(nèi)的移動的精確識別。在一些配置中,應(yīng)用程序使用來自陀螺儀2136和加速度計(jì)2134的輸出來增強(qiáng)應(yīng)用程序的某種功能的控制??上氲酵勇輧x2136的其它用途。
GPS傳感器2138被配置成接收來自GPS衛(wèi)星的信號以用于計(jì)算位置。通過GPS傳感器2138計(jì)算的位置可由需要或受益于位置信息的任何應(yīng)用程序使用。例如,通過GPS傳感器2138計(jì)算的位置可用于導(dǎo)航應(yīng)用程序以提供從該位置到目的地的方向或者從目的地到該位置的方向。而且,GPS傳感器2138可以用于將位置信息提供給基于外部位置的服務(wù),諸如E911服務(wù)。GPS傳感器2138可以使用網(wǎng)絡(luò)連接組件2106中的一個或多個獲得經(jīng)由WI-FI、WIMAX和/或蜂窩三角測量技術(shù)所生成的位置信息以輔助GPS傳感器2138獲得位置鎖定。GPS傳感器2138還可用于輔助GPS(“A-GPS”)系統(tǒng)。
I/O組件2110包括顯示器2140、觸摸屏2142、數(shù)據(jù)I/O接口組件(“數(shù)據(jù)I/O”)2144、音頻I/O接口組件(“音頻I/O”)2146、視頻I/O接口組件(“視頻I/O”)2148和照相機(jī)2150。在一些配置中,顯示器2140和觸摸屏2142組合。在一些配置中,數(shù)據(jù)I/O組件2144、音頻I/O組件2146和視頻I/O組件2148中的兩個或更多個被組合。I/O組件2110可以包括被配置為支持下面所描述的各種接口的分立的處理器,或者可以包括內(nèi)置于處理器2102中的處理功能。
顯示器2140是被配置成以視覺形式呈現(xiàn)信息的輸出設(shè)備。特別地,顯示器2140可以呈現(xiàn)圖形用戶接口(“GUI”)元件、文本、圖像、視頻、通知、虛擬按鈕、虛擬鍵盤、消息傳遞數(shù)據(jù)、因特網(wǎng)內(nèi)容、設(shè)備狀況、時間、日期、日歷數(shù)據(jù)、偏好、地圖信息、位置信息以及任何其它能夠以視覺形式呈現(xiàn)的信息。在一些配置中,顯示器2140是使用了任何有源或無源矩陣技術(shù)以及任何背光技術(shù)(如果使用)的液晶顯示器(“LCD”)。在一些配置中,顯示器2140是有機(jī)發(fā)光二極管(“OLED”)顯示器??上氲狡渌@示器類型。
還可以意識到,音頻I/O組件2146可以被配置為傳送其他形式的輸出,諸如僅音頻輸出。如上所述,本文描述的系統(tǒng)可以生成與布局和內(nèi)容相關(guān)的輸出,其可以包括描述布局和/或內(nèi)容的其他數(shù)據(jù)的轉(zhuǎn)錄和/或翻譯。
觸摸屏2142,在本文中稱為“觸摸使能屏幕”,是被配置成檢測觸摸的存在和位置的輸入設(shè)備。觸摸屏2142可以是電阻觸摸屏、電容觸摸屏、表面聲波觸摸屏、紅外觸摸屏、光學(xué)成像觸摸屏、分散信號觸摸屏、聲脈沖識別觸摸屏,或者可以使用任何其它觸摸屏技術(shù)。在一些配置中,觸摸屏2142作為透明層包含到顯示器2140之上以使用戶能夠使用一個或多個觸摸來與呈現(xiàn)在顯示器2140上的對象或其它信息交互。在其它配置中,觸摸屏2142是并入未包含顯示器2140的計(jì)算設(shè)備的表面上的觸摸板。例如,計(jì)算設(shè)備可以具有并入顯示器2140上的觸摸屏和與顯示器2140相對的表面上的觸摸板。
在一些配置中,觸摸屏2142是單觸摸式觸摸屏。在其它配置中,觸摸屏2142是多觸摸式觸摸屏。在一些配置中,觸摸屏2142被配置成檢測離散的觸摸、單觸摸姿勢和/或多觸摸姿勢。為方便,這些在本文統(tǒng)稱為姿勢。現(xiàn)在將描述多個姿勢。應(yīng)當(dāng)理解的是,這些姿勢是示例性的,而不旨在限制隨附權(quán)利要求的范圍。而且,所描述的姿勢、附加姿勢和/或可替代姿勢以軟件來實(shí)現(xiàn)而與觸摸屏2142一起使用。因此,開發(fā)者可以創(chuàng)建特定于特定的應(yīng)用程序的姿勢。
在一些配置中,觸摸屏2142支持輕敲姿勢,其中用戶對呈現(xiàn)在顯示器2140上的項(xiàng)輕敲觸摸屏2142一次。輕敲姿勢可由于各種原因而使用,包括但不限于,打開或發(fā)動用戶所輕敲的無論什么。在一些配置中,觸摸屏2142支持雙輕敲姿勢,其中用戶對呈現(xiàn)在顯示器2140上的項(xiàng)輕敲觸摸屏2142兩次。雙輕敲姿勢可由于各種原因而使用,包括但不限于在階段中縮小或放大。在一些配置中,觸摸屏2142支持輕敲且保持姿勢,其中用戶輕敲觸摸屏2142且保持接觸至少預(yù)定義時間。輕敲且保持姿勢可由于各種原因而使用,包括但不限于,打開上下文特定菜單。
在一些配置中,觸摸屏2142支持平移姿勢,其中用戶將手指放在觸摸屏2142上且在觸摸屏2142上移動手指的同時保持與觸摸屏2142接觸。平移姿勢可由于各種原因而使用,包括但不限于,在受控速率下移過屏幕、圖像或菜單。還可以設(shè)想多手指平移姿勢。在一些配置中,觸摸屏2142支持輕彈姿勢,其中用戶沿用戶想要屏幕移動的方向劃動手指。輕彈姿勢可由于各種原因而使用,包括但不限于,水平地或者垂直地滾動通過菜單或頁。在一些配置中,觸摸屏2142支持捏合與伸展姿勢,其中用戶在觸摸屏2142上用兩個手指(例如,拇指和食指)做出捏合運(yùn)動或者移動使兩個手指分開。捏合與伸展姿勢可由于各種原因而使用,包括但不限于,逐漸地縮小或放大網(wǎng)站、地圖或圖片。
雖然已經(jīng)參考用于執(zhí)行姿勢的一個或多個手指的使用描述了上述姿勢,但是諸如足趾的其它附件或諸如指示筆的對象也可用于與觸摸屏2142交互。因此,上述姿勢應(yīng)當(dāng)理解為示例性的,而不應(yīng)解釋為以任何方式限制。
數(shù)據(jù)I/O接口組件2144被配置成利于向計(jì)算設(shè)備輸入數(shù)據(jù)以及從計(jì)算設(shè)備輸出數(shù)據(jù)。在一些配置中,數(shù)據(jù)I/O接口組件2144包括連接器,該連接器被配置成提供計(jì)算設(shè)備與計(jì)算機(jī)系統(tǒng)之間的有線連接,例如用于同步操作的目的。連接器可以是專用連接器或標(biāo)準(zhǔn)化的連接器,如USB、微型USB、迷你型USB或類似物。在一些配置中,連接器是用于將計(jì)算設(shè)備與諸如對接站的另一設(shè)備、音頻設(shè)備(例如,數(shù)字音樂播放器)或視頻設(shè)備對接的對接連接器。
音頻I/O接口組件2146被配置成提供音頻輸入和/或輸出能力給計(jì)算設(shè)備。在一些配置中,音頻I/O接口組件2144包括被配置成采集音頻信號的麥克風(fēng)。在一些配置中,音頻I/O接口組件2144包括被配置成提供用于耳機(jī)或其它外部揚(yáng)聲器的連接的耳機(jī)插口。在一些配置中,音頻接口組件2146包括用于音頻信號的輸出的揚(yáng)聲器。在一些配置中,音頻I/O接口組件2144包括光纜音頻出口。
視頻I/O接口組件2148被配置成提供視頻輸入和/或輸出能力給計(jì)算設(shè)備。在一些配置中,視頻I/O接口組件2148包括視頻連接器,該視頻連接器被配置成接收來自另一設(shè)備(例如,諸如DVD或BLURAY播放器的視頻媒體播放器)的視頻作為輸入或者將視頻作為輸出發(fā)送到另一設(shè)備(例如,監(jiān)控器、電視機(jī)或某其它外部顯示器)。在一些配置中,視頻I/O接口組件2148包括高清多媒體接口(“HDMI”)、迷你型HDMI、微型HDMI、顯示端口或用于輸入/輸出視頻內(nèi)容的專用連接器。在一些配置中,視頻I/O接口組件2148或其部分與音頻I/O接口組件2146或其部分組合。
照相機(jī)2150可以被配置成捕獲靜像和/或視頻。照相機(jī)2150可以使用電荷耦合器件(“CCD”)或互補(bǔ)金屬氧化物半導(dǎo)體(“CMOS”)圖像傳感器來捕獲圖像。在一些配置中,照相機(jī)2150包括輔助在低光照環(huán)境下拍攝圖片的閃光燈。用于照相機(jī)2150的設(shè)置可實(shí)現(xiàn)為硬件或軟件按鈕。
雖然沒有示出,一個或多個硬件按鈕也可以包含在計(jì)算設(shè)備架構(gòu)2100中。硬件按鈕可用于控制計(jì)算設(shè)備的某操作方面。硬件按鈕可以是專用按鈕或多用途按鈕。硬件按鈕可以是機(jī)械或基于傳感器的。
圖示的電力組件2112包括一個或多個電池2152,電池能夠連接到電池計(jì)量儀2154。電池2152可以是可再充電的或一次性的??稍俪潆婋姵仡愋桶ǖ幌抻阡嚲酆衔?、鋰離子、鎳鎘和鎳金屬氫化物。電池2152中的每一個可以由一個或多個單元制成。
電池計(jì)量儀2154可以被配置成測量諸如電流、電壓和溫度的電池參數(shù)。在一些配置中,電池計(jì)量儀2154被配置成測量電池的放電速率、溫度、壽命和其它因素的效應(yīng)以在一定誤差百分比內(nèi)預(yù)測剩余壽命。在一些配置中,電池計(jì)量儀2154提供測量給應(yīng)用程序,應(yīng)用程序被配置成使用測量來向用戶呈現(xiàn)有用的電力管理數(shù)據(jù)。電力管理數(shù)據(jù)可以包括所使用的電池百分比、電池剩余百分比、電池狀態(tài)、剩余時間、剩余容量(例如,以瓦特小時數(shù)計(jì))、消耗的電流和電壓中的一項(xiàng)或多項(xiàng)。
電力組件2112還可以包括電力連接器,電力連接器可以與上述I/O組件2110中的一個或多個組合。電力組件2112可以經(jīng)由電力I/O組件與外部電力系統(tǒng)或充電裝備相接。
本文展現(xiàn)的公開可以從以下條款來考慮:
條款1:一種用于基于意圖來生成用于內(nèi)容數(shù)據(jù)的布局的計(jì)算機(jī)實(shí)現(xiàn)的示例,所述方法包括:獲得內(nèi)容數(shù)據(jù),所述內(nèi)容數(shù)據(jù)包括多個內(nèi)容元素;獲得指示關(guān)于如何展現(xiàn)所述內(nèi)容數(shù)據(jù)的意圖的意圖數(shù)據(jù),所述意圖數(shù)據(jù)描述所述多個內(nèi)容元素中的兩個或更多個內(nèi)容元素當(dāng)中的一個或多個關(guān)系;基于所述意圖數(shù)據(jù)來生成用于所述內(nèi)容數(shù)據(jù)的布局。
條款2:如條款1的示例,其中所述布局包括用于使所述內(nèi)容數(shù)據(jù)結(jié)構(gòu)化的宏級方案,并且其中所述宏級方案包括定義所述內(nèi)容數(shù)據(jù)的宏級結(jié)構(gòu)化的世界配置。
條款3:如條款1和2的示例,其中,所述布局還包括用于布置所述多個內(nèi)容元素中的一個或多個的中間級方案,以及用于格式化所述多個內(nèi)容元素中的每一個的微級方案。
條款4:如條款1-3的示例,其中所述世界配置是全景世界配置、垂直世界配置、深度世界配置、畫布世界配置、窄小(nutshell)世界配置、活頁卡片世界配置或時間線世界配置中的一種。
條款5:如條款1-4的示例,其中所述一個或多個部分布置中的一個根據(jù)世界配置來配置。
條款6:如條款1-5的示例,其中基于所述意圖數(shù)據(jù)生成用于所述內(nèi)容數(shù)據(jù)的所述布局包括:基于所述意圖數(shù)據(jù)選擇所述內(nèi)容數(shù)據(jù)的一個或多個內(nèi)容模板;通過所述一個或多個內(nèi)容模板對所述多個內(nèi)容元素進(jìn)行置換,以生成多個候選布局;基于一個或多個啟發(fā)式規(guī)則來計(jì)算所述候選布局中的每一個的分?jǐn)?shù);以及選擇具有最高分?jǐn)?shù)的候選布局作為用于所述內(nèi)容數(shù)據(jù)的布局。
條款7:如條款1-6的示例,其中基于所述意圖數(shù)據(jù)選擇用于所述內(nèi)容數(shù)據(jù)的一個或多個內(nèi)容模板包括:將所述意圖數(shù)據(jù)轉(zhuǎn)換成一個或多個格式化約束;以及將滿足所述格式化約束的一個或多個內(nèi)容模板選擇為所述一個或多個內(nèi)容模板。
條款8:如條款1-7的示例,其中所述內(nèi)容數(shù)據(jù)從包括用于接收所述內(nèi)容數(shù)據(jù)的編輯區(qū)域的用戶界面獲得,并且其中所述內(nèi)容數(shù)據(jù)以與所生成的布局不同的方式顯示在所述編輯區(qū)域中。
條款9:如條款1-8的示例,其中所述用戶界面還包括允許用戶將所述意圖數(shù)據(jù)分配給所述內(nèi)容數(shù)據(jù)的一個或多個用戶界面控件,并且其中以與所生成的布局不同的方式根據(jù)所述意圖數(shù)據(jù)在所述編輯區(qū)域中顯示所述內(nèi)容數(shù)據(jù)。
條款10:如條款1-9的示例,還包括獲得顯示設(shè)備的能力,并且其中所述布局還基于所述顯示設(shè)備的能力來生成。
條款11:一種其中存儲有計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)可讀存儲介質(zhì),當(dāng)通過計(jì)算機(jī)執(zhí)行時,所述計(jì)算機(jī)可執(zhí)行指令使所述計(jì)算機(jī):獲得內(nèi)容數(shù)據(jù),所述內(nèi)容數(shù)據(jù)包括多個內(nèi)容元素;獲得指示如何展現(xiàn)所述內(nèi)容數(shù)據(jù)的意圖的意圖數(shù)據(jù),所述意圖數(shù)據(jù)包括描述所述多個內(nèi)容元素中的兩個或更多個內(nèi)容元素當(dāng)中的一個或多個關(guān)系的數(shù)據(jù);基于所述意圖數(shù)據(jù)來生成用于所述內(nèi)容數(shù)據(jù)的多個候選布局;基于一個或多個啟發(fā)式規(guī)則來計(jì)算所述多個候選布局中的每一個的分?jǐn)?shù);選擇具有最高分?jǐn)?shù)的布局;以及使用所選布局來傳送所述內(nèi)容數(shù)據(jù)。
條款12:如條款11的計(jì)算機(jī)可讀存儲介質(zhì),其中生成所述候選布局包括:基于所述意圖數(shù)據(jù)來選擇用于所述多個內(nèi)容元素的一個或多個內(nèi)容模板;以及通過一個或多個內(nèi)容模板來置換多個內(nèi)容元素以生成多個候選布局。
條款13:如條款11和12的計(jì)算機(jī)可讀存儲介質(zhì),其中所述一個或多個內(nèi)容模板中的至少一個預(yù)存儲在數(shù)據(jù)倉庫內(nèi)且從該數(shù)據(jù)倉庫中選擇。
條款14:如條款11-13的計(jì)算機(jī)可讀存儲介質(zhì),其中所述一個或多個內(nèi)容模板中的至少一個是通過編程方式生成的。
條款15:如條款11-14的計(jì)算機(jī)可讀存儲介質(zhì),其中所述布局包括定義內(nèi)容數(shù)據(jù)的宏級結(jié)構(gòu)化的世界配置。
條款16:如條款11-15的計(jì)算機(jī)可讀存儲介質(zhì),其中所述世界配置包括一個或多個部分布置,并且其中所述一個或多個部分布置中的每一個包括一個或多個元素格式配置。
條款17:一種用于生成用于內(nèi)容的布局的系統(tǒng),包括一個或多個計(jì)算設(shè)備,所述計(jì)算設(shè)備被配置為:獲得內(nèi)容數(shù)據(jù),所述內(nèi)容數(shù)據(jù)包括多個內(nèi)容元素;獲得指示如何展現(xiàn)所述內(nèi)容數(shù)據(jù)的意圖的意圖數(shù)據(jù),所述意圖數(shù)據(jù)描述所述多個內(nèi)容元素中的兩個或更多個內(nèi)容元素當(dāng)中的一個或多個關(guān)系;基于所述意圖數(shù)據(jù)中描述的關(guān)系導(dǎo)出所述內(nèi)容數(shù)據(jù)的一個或多個格式化約束;基于所述意圖數(shù)據(jù)生成滿足所述內(nèi)容數(shù)據(jù)的所述一個或多個格式化約束的多個布局;基于一組啟發(fā)式規(guī)則來從所述多個布局中選擇適合所述內(nèi)容數(shù)據(jù)并最佳地滿足所述意圖數(shù)據(jù)的布局。
條款18:如條款17的系統(tǒng),還包括布局資源數(shù)據(jù)存儲庫,用于存儲用于布局生成的多個內(nèi)容模板,并且其中通過置換所述多個內(nèi)容元素來生成所述多個布局,通過所述多個內(nèi)容模板中的滿足所述一個或多個格式化約束和意圖數(shù)據(jù)的一個或多個內(nèi)容模板來置換所述多個內(nèi)容元素。
條款19:如條款17-18的系統(tǒng),其中選擇適合所述內(nèi)容數(shù)據(jù)并且最佳地滿足所述意圖數(shù)據(jù)的布局包括:基于所述一組啟發(fā)式規(guī)則來計(jì)算所述多個布局中的每一個的分?jǐn)?shù);以及選擇具有最高分?jǐn)?shù)的布局作為所述內(nèi)容數(shù)據(jù)的所選布局。
條款20:如條款17-19的系統(tǒng),其中所述一個或多個計(jì)算設(shè)備還被配置為獲得所展現(xiàn)的內(nèi)容數(shù)據(jù)的消費(fèi)者的偏好,并且其中所述布局進(jìn)一步基于所述消費(fèi)者的偏好而生成。
基于上述,應(yīng)當(dāng)意識到在本文已經(jīng)公開了用于提供基于用戶意圖的內(nèi)容創(chuàng)作的概念和技術(shù)。雖然本文所展現(xiàn)的主題是以特定于計(jì)算機(jī)結(jié)構(gòu)特征的語言、方法和變換動作、具體的計(jì)算機(jī)器和計(jì)算機(jī)可讀介質(zhì)來描述,但是應(yīng)當(dāng)理解,在隨附的權(quán)利要求中限定的本發(fā)明不必局限于本文所描述的具體的特征、動作或媒介。相反,具體的特征、動作和媒介被公開作為實(shí)現(xiàn)權(quán)利要求的示例形式。
上述的主題僅以示例說明的方式來提供,而不應(yīng)當(dāng)解釋為限制。可以在不遵照所圖示和描述的示例的配置和應(yīng)用且不背離本發(fā)明的范圍和主旨的情況下對本文所描述的主題做出各種修改和改動,本發(fā)明的范圍在下面的權(quán)利要求中進(jìn)行了闡述。