用于演示文稿應(yīng)用的嵌入式web查看器的制造方法
【專利摘要】利用演示文稿web部件來將演示文稿內(nèi)容嵌入網(wǎng)頁。演示文稿web部件被配置成創(chuàng)建諸如內(nèi)聯(lián)框架(“iFrame”)等其中可顯示演示文稿內(nèi)容的web元素。演示文稿web部件配置有用作諸如postMessage(發(fā)布消息)包裝器等消息包裝器的外部應(yīng)用編程接口(“API”),以供內(nèi)部API調(diào)用演示文稿web應(yīng)用的功能來諸如經(jīng)由前進(jìn)通過演示文稿內(nèi)容的各幻燈片操縱演示文稿內(nèi)容。例如,演示文稿web部件和地圖web部件可被顯示在同一網(wǎng)頁上以使得當(dāng)用戶經(jīng)由地圖web部件選擇城市或其它位置時(shí),演示文稿web部件顯示與所選位置相關(guān)聯(lián)的演示文稿內(nèi)容。本文提供其它用例。
【專利說明】用于演示文稿應(yīng)用的嵌入式web查看器
[0001]背景
[0002]諸如文字處理應(yīng)用、電子表格應(yīng)用、演示文稿應(yīng)用等軟件應(yīng)用傳統(tǒng)上被本地地安裝在計(jì)算機(jī)系統(tǒng)上。這些軟件應(yīng)用通常綁定到其上根據(jù)各種許可協(xié)議來安裝軟件應(yīng)用的特定計(jì)算機(jī)系統(tǒng)或計(jì)算機(jī)系統(tǒng)的集合。除了購買許可證和在多個(gè)計(jì)算機(jī)系統(tǒng)上安裝軟件應(yīng)用的成本之外,為了修復(fù)隱錯(cuò)、修復(fù)安全性而升級應(yīng)用以及其它升級的需求和潛在的附加成本可能由于一些用戶不按推薦更新其軟件應(yīng)用而促進(jìn)軟件分化。
[0003]由于這些和其它問題,被開發(fā)成供本地安裝的許多軟件應(yīng)用現(xiàn)在在某些情況下被專門開發(fā)為web應(yīng)用。這種到web應(yīng)用的遷移允許軟件開發(fā)者一致地提供最新版本,而不涉及軟件分化。web應(yīng)用還通過準(zhǔn)許用戶從具有因特網(wǎng)連接和兼容的web瀏覽器的任何計(jì)算機(jī)系統(tǒng)創(chuàng)建、查看和編輯內(nèi)容來向用戶提供更靈活的工作環(huán)境。此外,由于與制造、運(yùn)輸和庫存盤或其上存儲有軟件應(yīng)用的其它介質(zhì)相關(guān)聯(lián)的開銷花費(fèi)的減少,可免費(fèi)或以低于傳統(tǒng)軟件應(yīng)用的成本提供web應(yīng)用。
[0004]特定web應(yīng)用使用web部件來提供內(nèi)容和功能。web部件是在網(wǎng)頁的上下文內(nèi)部運(yùn)行的服務(wù)器側(cè)控件。web部件給予用戶通過簡單地將其添加到網(wǎng)頁來向網(wǎng)頁添加功能的能力。存在允許用戶添加與特定web應(yīng)用相關(guān)聯(lián)的內(nèi)容的web部件,然而不存在用于向網(wǎng)頁添加諸如使用可從美國華盛頓州雷蒙德市的微軟公司購買的本機(jī)MICROSOFT POWERPOINT或其web版本來創(chuàng)建的內(nèi)容之類的演示文稿內(nèi)容的web部件。
[0005]除了提供供顯示的內(nèi)容之外,還經(jīng)常期望利用網(wǎng)頁上的另一 web部件或其它控件來操縱一個(gè)web部件中所顯示的內(nèi)容。例如,可能期望在一頁面中在諸如地圖、列表和/或其它交互式用戶界面元素等其它內(nèi)容的上下文中顯示演示文稿內(nèi)容,以使得當(dāng)用戶選擇地圖上的一個(gè)地方、列表中的一個(gè)項(xiàng)目或以其它方式與用戶界面元素交互時(shí),以有意義的方式顯示演示文稿內(nèi)容。
[0006]本文所做出的本公開正是關(guān)于這些和其他考慮事項(xiàng)而提出的。
[0007]概述
[0008]本文描述了用于利用演示文稿web部件在網(wǎng)頁中嵌入演示文稿內(nèi)容的概念和技術(shù)。根據(jù)本文公開的概念和技術(shù),演示文稿web部件被配置成創(chuàng)建諸如內(nèi)聯(lián)框架(“iFrame”)等其中可顯示演示文稿內(nèi)容的web元素。iFrame是被配置成諸如用于顯示演示文稿內(nèi)容的查看器(如此處所公開的)等外部對象的超文本標(biāo)記語言(“HTML”)元素。
[0009]演示文稿web部件配置有用作諸如postMessage (發(fā)布消息)包裝器等包裝器的外部應(yīng)用編程接口(“API”),以供內(nèi)部API調(diào)用演示文稿web應(yīng)用的功能以便諸如經(jīng)由前進(jìn)通過演示文稿內(nèi)容的各幻燈片來操縱演示文稿內(nèi)容。用作包裝器的外部API可調(diào)用一方法來允許來自被嵌入網(wǎng)頁的不同對象的內(nèi)部API和外部API之間的協(xié)作信息交換。
[0010]根據(jù)一方面,iFrame作為演示文稿web部件的一部分顯示在網(wǎng)頁中,并且演示文稿內(nèi)容被顯示在iFrame中。內(nèi)部API在諸如postMessage等消息中從外部API接收指令并根據(jù)內(nèi)部API接收到的指令來操縱內(nèi)聯(lián)框架內(nèi)的演示文稿內(nèi)容。
[0011]根據(jù)另一方面,演示文稿內(nèi)容被縮放到多個(gè)大小并被高速緩存。接收對演示文稿內(nèi)容的請求,并且響應(yīng)于該請求,檢索演示合適大小的文稿內(nèi)容并將其插入目標(biāo)iFrame。
[0012]根據(jù)又一方面,創(chuàng)建其中顯示演示文稿內(nèi)容的iFrame。在iFrame中執(zhí)行用于查看演示文稿內(nèi)容的web應(yīng)用,并且作為執(zhí)行web應(yīng)用的結(jié)果在內(nèi)聯(lián)框架內(nèi)顯示演示文稿內(nèi)容。
[0013]應(yīng)當(dāng)理解,上述主題可被實(shí)現(xiàn)為計(jì)算機(jī)控制的裝置、計(jì)算機(jī)進(jìn)程、計(jì)算系統(tǒng)或諸如計(jì)算機(jī)可讀存儲介質(zhì)等制品。通過閱讀下面的詳細(xì)描述并審閱相關(guān)聯(lián)的附圖,這些及各種其他特征將變得顯而易見。
[0014]提供本概述是為了以簡化的形式介紹將在以下詳細(xì)描述中進(jìn)一步描述的選擇的概念。本概述并不旨在標(biāo)識所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不旨在將本
【發(fā)明內(nèi)容】
用來限制所要求保護(hù)的主題的范圍。此外,所要求保護(hù)的主題不限于解決在本公開的任一部分中所提及的任何或所有缺點(diǎn)的實(shí)現(xiàn)。
[0015]附圖簡述
[0016]圖1是示出用于此處公開的各實(shí)施例的示例性操作環(huán)境的系統(tǒng)圖。
[0017]圖2是示出根據(jù)一示例性實(shí)施例的演示文稿web部件的圖示。
[0018]圖3是示出根據(jù)一示例性實(shí)施例的設(shè)置用戶界面的圖示。
[0019]圖4是示出根據(jù)一示例性實(shí)施例的用于執(zhí)行包括演示文稿web部件的網(wǎng)頁的方法的各方面的流程圖。
[0020]圖5是示出根據(jù)一示例性實(shí)施例的用于高速緩存演示文稿數(shù)據(jù)的方法的各方面的流程圖。
[0021]圖6是示出根據(jù)一示例性實(shí)施例的用于選擇演示文稿束尺寸的方法的各方面的流程圖。
[0022]圖7是示出根據(jù)一示例性實(shí)施例的用于調(diào)用web應(yīng)用的實(shí)現(xiàn)的方法的各方面的流程圖。
[0023]圖8是示出根據(jù)一示例性實(shí)施例的用于在外部應(yīng)用編程接口(“API”)和調(diào)用該外部API的應(yīng)用之間進(jìn)行通信的方法的各方面的流程圖。
[0024]圖9是示出能夠?qū)崿F(xiàn)此處所提出的實(shí)施例的各方面的計(jì)算系統(tǒng)的示例性計(jì)算機(jī)硬件和軟件體系結(jié)構(gòu)的計(jì)算機(jī)體系結(jié)構(gòu)圖。
[0025]詳細(xì)描述
[0026]以下詳細(xì)描述涉及用于利用演示文稿web部件來在網(wǎng)頁中嵌入演示文稿內(nèi)容的概念和技術(shù)。根據(jù)本文公開的概念和技術(shù),演示文稿web部件被配置成創(chuàng)建諸如iFrame等其中可顯示演示文稿內(nèi)容的web元素。演示文稿web部件配置有用作諸如發(fā)布消息包裝器等包裝器的外部API,以供內(nèi)部API調(diào)用演示文稿web應(yīng)用的功能以便諸如經(jīng)由前進(jìn)通過演示文稿內(nèi)容的各幻燈片來操縱演示文稿內(nèi)容。
[0027]盡管在結(jié)合計(jì)算機(jī)系統(tǒng)上的操作系統(tǒng)和應(yīng)用程序的執(zhí)行而執(zhí)行的程序模塊的一般上下文中提出了本文描述的主題,但是本領(lǐng)域技術(shù)人員將認(rèn)識到,其他實(shí)現(xiàn)可以結(jié)合其他類型的程序模塊來執(zhí)行。一般而言,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、組件、數(shù)據(jù)結(jié)構(gòu)和其他類型的結(jié)構(gòu)。此外,本領(lǐng)域技術(shù)人員將明白,可以利用其他計(jì)算機(jī)系統(tǒng)配置來實(shí)施本文描述的主題,這些計(jì)算機(jī)系統(tǒng)配置包括手持式設(shè)備、多處理器系統(tǒng)、基于微處理器的或可編程消費(fèi)電子產(chǎn)品、小型計(jì)算機(jī)、大型計(jì)算機(jī)等等。
[0028]在以下詳細(xì)描述中,參考了構(gòu)成詳細(xì)描述的一部分并作為說明示出了各【具體實(shí)施方式】或示例的附圖?,F(xiàn)在參考附圖,在其中相同的附圖標(biāo)記貫穿若干附圖表示相同的元素,將描述用于利用演示文稿web部件來在網(wǎng)頁中嵌入演示文稿內(nèi)容的計(jì)算系統(tǒng)、計(jì)算機(jī)可讀存儲介質(zhì)、以及計(jì)算機(jī)實(shí)現(xiàn)的方法的各方面以及其它方面。
[0029]現(xiàn)在參考圖1,將描述用于本文所提出的各實(shí)施例的一個(gè)操作環(huán)境100的各方面。操作環(huán)境100包括在網(wǎng)絡(luò)104上操作或與網(wǎng)絡(luò)104通信的客戶機(jī)計(jì)算機(jī)102??蛻魴C(jī)計(jì)算機(jī)102被配置成執(zhí)行操作系統(tǒng)106以及一個(gè)或多個(gè)應(yīng)用程序,諸如舉例而言web瀏覽器108和/或其他應(yīng)用程序。
[0030]操作系統(tǒng)106是用于控制客戶端計(jì)算機(jī)102的操作的計(jì)算機(jī)程序。應(yīng)用程序是被配置成在操作系統(tǒng)106之上執(zhí)行以提供如本文所述的各種功能的可執(zhí)行程序。web瀏覽器108是用戶可用來經(jīng)由網(wǎng)絡(luò)104訪問萬維網(wǎng)(“web”)上的信息資源的應(yīng)用程序。此外,web瀏覽器108允許用戶訪問服務(wù)器計(jì)算機(jī)110提供的信息和各種功能。
[0031]所示服務(wù)器計(jì)算機(jī)110被配置成執(zhí)行操作系統(tǒng)112以及協(xié)作平臺114中的一個(gè)或多個(gè)應(yīng)用程序,包括例如一個(gè)或多個(gè)web應(yīng)用116和/或其它應(yīng)用程序。操作系統(tǒng)112是用于控制服務(wù)器計(jì)算機(jī)110的操作的計(jì)算機(jī)程序。應(yīng)用程序是被配置成在操作系統(tǒng)112之上執(zhí)行以提供如本文所述的各種功能的可執(zhí)行程序。具體而言,一個(gè)或多個(gè)web應(yīng)用116是可由web瀏覽器108通過網(wǎng)絡(luò)104訪問的應(yīng)用程序。
[0032]在一些實(shí)施例中,web應(yīng)用116至少包括演示文稿web應(yīng)用,但還可包括一個(gè)或多個(gè)文字處理應(yīng)用、電子表格應(yīng)用、演示文稿應(yīng)用、電子郵件應(yīng)用、日歷應(yīng)用、繪圖應(yīng)用和/或可由web瀏覽器108訪問的其它應(yīng)用。例如,web應(yīng)用116可包括全都可以從華盛頓州雷蒙德市的微軟購買的 MICROSOFT WORD, MICROSOFT EXCEL, MICROSOFT POWERPOINT, MICROSOFTOUTLOOK和/或MICROSOFT VISIO的基于web的版本。另選地或另外地,web應(yīng)用116可包括全都可以從加利福尼亞州山景城的谷歌購買的GOOGLE DOCUMENTS, G00GLESPREADSHEETS, GOOGLE PRESENTATIONS, GOOGLE MAIL 和 / 或 GOOGLE DRAWINGS。構(gòu)想其它web應(yīng)用,包括社交網(wǎng)絡(luò)應(yīng)用、照片應(yīng)用、通信應(yīng)用(例如,IP語音和/或即時(shí)消息收發(fā))等。
[0033]在一些實(shí)施例中,協(xié)作平臺114是web應(yīng)用116的中央主機(jī)。例如,客戶機(jī)計(jì)算機(jī)102的用戶可經(jīng)由web瀏覽器108來訪問協(xié)作平臺114以便利用一個(gè)或多個(gè)web應(yīng)用116來創(chuàng)建、編輯和/或查看內(nèi)容。在一些實(shí)施例中,協(xié)作平臺114提供協(xié)作服務(wù),包括但不限于會議、即時(shí)消息收發(fā)、電子郵件、日歷和/或協(xié)作工作空間。例如,協(xié)作工作空間可由多個(gè)用戶用來經(jīng)由web應(yīng)用116對內(nèi)容創(chuàng)建或編輯進(jìn)行協(xié)作。
[0034]在一些實(shí)施例中,協(xié)作平臺114還提供用戶可用來保存經(jīng)由web應(yīng)用116創(chuàng)建的內(nèi)容以供稍后查看或編輯的存儲解決方案。協(xié)作平臺114可另選地或另外地被配置成接收在客戶機(jī)計(jì)算機(jī)102上本地地創(chuàng)建的內(nèi)容以便存儲在協(xié)作平臺114。被上傳至協(xié)作平臺114的內(nèi)容或通過web應(yīng)用116創(chuàng)建或編輯的內(nèi)容可作為數(shù)據(jù)118被存儲在服務(wù)器計(jì)算機(jī)110處。數(shù)據(jù)118可由客戶機(jī)計(jì)算機(jī)102和/或其它計(jì)算機(jī)(未示出)來訪問。
[0035]在一些實(shí)施例中,協(xié)作平臺114允許一個(gè)或多個(gè)用戶創(chuàng)建包括一個(gè)或多個(gè)網(wǎng)頁的網(wǎng)站。該網(wǎng)站以及一個(gè)或多個(gè)網(wǎng)頁可被包括在被保存在服務(wù)器計(jì)算機(jī)110上的數(shù)據(jù)118中,并且可經(jīng)由web瀏覽器108通過一個(gè)或多個(gè)統(tǒng)一資源定位符(“URL”)來訪問。該一個(gè)或多個(gè)網(wǎng)頁可包括一個(gè)或多個(gè)web部件120。web部件120是在協(xié)作平臺114中的網(wǎng)頁的上下文內(nèi)運(yùn)行的服務(wù)器側(cè)控件。web部件120使客戶機(jī)計(jì)算機(jī)102的用戶能夠直接通過瀏覽器108向網(wǎng)頁添加功能。例如,通過web部件120,客戶機(jī)計(jì)算機(jī)102的用戶可通過瀏覽器108來創(chuàng)建或修改網(wǎng)頁的內(nèi)容、外觀和/或行為。
[0036]web部件120可包括作為協(xié)作平臺114的一部分來提供的默認(rèn)web部件和/或由客戶機(jī)計(jì)算機(jī)102的用戶創(chuàng)建的自定義web部件。在一些實(shí)施例中,web部件120具體包括演示文稿web部件122,該演示文稿web部件可被添加到網(wǎng)頁以便提供在網(wǎng)頁中顯示演示文稿內(nèi)容(也被稱為“演示文稿束”或“演示文稿組”)的功能。在一些實(shí)施例中,演示文稿內(nèi)容被格式化為由一個(gè)或多個(gè)演示文稿幻燈片組成的MICROSOFT POWERPOINT演示文稿,這些幻燈片中的每一個(gè)都包括諸如文本、圖像、視頻、超鏈接、動畫、游戲和/或其它交互式或非交互式元素等內(nèi)容。
[0037]構(gòu)想演示文稿內(nèi)容可由演示文稿web部件122以與就像經(jīng)由專用的演示文稿web應(yīng)用或在客戶機(jī)計(jì)算機(jī)102上本地地運(yùn)行的本機(jī)應(yīng)用來顯示演示文稿內(nèi)容那樣相同的方式顯示。即,可通過演示文稿web部件122來維護(hù)諸如幻燈片內(nèi)的元素的動畫和/或幻燈片之間的動畫等演示文稿內(nèi)容。
[0038]還構(gòu)想演示文稿web部件122可以與web部件120中的一個(gè)或多個(gè)其它web部件交互以便向網(wǎng)頁提供各種增強(qiáng)的功能。例如,演示文稿web部件122和地圖web部件可被顯示在同一網(wǎng)頁上以使得當(dāng)用戶經(jīng)由地圖web部件選擇城市或其它位置時(shí),演示文稿web部件122顯示與所選位置相關(guān)聯(lián)的演示文稿內(nèi)容。由演示文稿web部件122顯示的演示文稿內(nèi)容可以是包括與所選位置相關(guān)聯(lián)的一個(gè)或多個(gè)演示文稿幻燈片的演示文稿組?;蛘?,由演示文稿web部件122顯示的演示文稿內(nèi)容可以是與演示文稿組中的所選位置相關(guān)聯(lián)的演示文稿幻燈片,該演示文稿組包括關(guān)于包括所選位置以及一個(gè)或多個(gè)附加位置的各種位置的演示文稿幻燈片。構(gòu)想對演示文稿web部件122以及一個(gè)或多個(gè)其它web部件的其它使用。
[0039]除了演示文稿web部件122之外,web部件120還可包括以下web部件中的一個(gè)或多個(gè):用于顯示和編輯列表數(shù)據(jù)的列表查看web部件,用于添加格式化文本、表格、超鏈接和/或圖像的內(nèi)容編輯器web部件,用于連接到并過濾顯示在另一 web部件中的一列數(shù)據(jù)的表單web部件,用于添加圖片或圖形并調(diào)整(例如,對齊、背景色等)該圖片或圖形的圖像web部件,用于顯示網(wǎng)頁、文件或文件夾的頁面查看器web部件,以及用于在顯示內(nèi)容之前顯示可擴(kuò)展標(biāo)記語言(“XML”)并對該XML應(yīng)用可擴(kuò)展樣式表語言變換(“XSLT”)的可擴(kuò)展標(biāo)記語言web部件。此外,這些web部件120中的任一個(gè)都可包括用于調(diào)整web部件120的功能的預(yù)設(shè)和/或自定義設(shè)置。
[0040]在一些實(shí)施例中,協(xié)作平臺114是可以從華盛頓州雷蒙德市的微軟購得的MICROSOFT SHAREP0INT。在其他實(shí)施例中,協(xié)作平臺114是可以從加利福尼亞州山景城的谷歌購得的GOOGLE DOCS0在還有一些其他實(shí)施例中,不使用協(xié)作平臺114,并且使得web部件120可作為用于向網(wǎng)頁添加各種內(nèi)容的獨(dú)立解決方案來獲得。
[0041]構(gòu)想對服務(wù)器計(jì)算機(jī)110的訪問可由一個(gè)或多個(gè)認(rèn)證因素來保護(hù),這些認(rèn)證因素諸如但不限于所有權(quán)因素(例如,ID卡、安全令牌、蜂窩電話等)、知識因素(例如,口令、通行碼、個(gè)人識別號(“PIN”)、質(zhì)詢響應(yīng))和/或天賦因素(例如,指紋、虹膜圖案、DNA序列、簽名、臉部識別、唯一生物電信號或其它生物測定標(biāo)識符)。此外,可能需要相同的、替換的或進(jìn)一步的認(rèn)證來訪問協(xié)作平臺114、一個(gè)或多個(gè)web應(yīng)用116和/或數(shù)據(jù)118。[0042]根據(jù)各實(shí)施例,客戶計(jì)算機(jī)世界102和/或服務(wù)器計(jì)算機(jī)110是是個(gè)人計(jì)算機(jī)(“PC”),諸如臺式、平板、或膝上型計(jì)算機(jī)系統(tǒng)??蛻魴C(jī)計(jì)算機(jī)102和/或服務(wù)器計(jì)算機(jī)110可包括其他類型的計(jì)算系統(tǒng),包括但不限于:服務(wù)器計(jì)算機(jī)、手持式計(jì)算機(jī)、上網(wǎng)本計(jì)算機(jī)、嵌入式計(jì)算機(jī)系統(tǒng)、個(gè)人數(shù)字助理、移動電話、智能電話或其他計(jì)算設(shè)備。
[0043]應(yīng)該理解,操作環(huán)境100的一些實(shí)現(xiàn)包括多個(gè)客戶端計(jì)算機(jī)102、多個(gè)網(wǎng)絡(luò)104、和/或多個(gè)服務(wù)器計(jì)算機(jī)110。還應(yīng)理解,多個(gè)操作系統(tǒng)106和/或多個(gè)web瀏覽器108可由客戶機(jī)計(jì)算機(jī)102使用,而多個(gè)操作系統(tǒng)112可由服務(wù)器計(jì)算機(jī)110使用。因此,所示實(shí)施例應(yīng)該被理解為示例性的,并且不應(yīng)該被解釋為以任何方式構(gòu)成限制。
[0044]現(xiàn)在轉(zhuǎn)向圖2,將詳細(xì)描述示例性web部件體系結(jié)構(gòu)200的各方面。web部件體系結(jié)構(gòu)200包括演示文稿web部件202 (諸如演示文稿web部件122),該演示文稿web部件202又包括核心組件204以及一個(gè)或多個(gè)主機(jī)設(shè)置206。在一些實(shí)施例中,主機(jī)設(shè)置206是與協(xié)作平臺114相關(guān)聯(lián)的設(shè)置。在一些實(shí)施例中,創(chuàng)建核心組件204以使其能夠被打包為服務(wù)器側(cè)呈現(xiàn)(“SSR”)控件。在其它實(shí)施例中,創(chuàng)建核心組件204以使其能夠被打包為客戶機(jī)側(cè)呈現(xiàn)(“SSR”)控件。為了解釋方便,針對本公開的剩余部分,核心組件204被認(rèn)為是SSR控件。
[0045]核心組件204包括外部應(yīng)用編程接口(“外部API”)208。在一些實(shí)施例中,夕卜部API208是對于內(nèi)部API210的postMessage包裝器。具體而言,外部API208可利用postMessage來允許來自被嵌入網(wǎng)頁的不同對象的內(nèi)部API210與外部API208之間的協(xié)作信息交換。在一些實(shí)施例中,外部API208和內(nèi)部API210用JavaScript語言來編寫。postMessage是超文本標(biāo)記語言版本5 (“HTML5”)的JavaScript函數(shù)。外部API208和內(nèi)部API210的功能將在下文中更詳細(xì)地描述。
[0046]核心組件204還包括被配置成創(chuàng)建內(nèi)聯(lián)框架(“iFrame”)214的iFrame構(gòu)造器212。在一些實(shí)施例中,iFrame構(gòu)造器212被包括為外部API208的一部分。由iFrame構(gòu)造器212創(chuàng)建的iFrame214是被配置成包括外部對象的HTML元素。所示iFrame214被配置成包括被體現(xiàn)為查看器216的外部對象。
[0047]所示iFrame214與同查看器216分開的用戶界面218相關(guān)聯(lián)。在一些實(shí)施例中,用戶界面218由用戶(例如,網(wǎng)站開發(fā)者)添加以便在查看器216之上提供各種功能。這些功能可提供例如與網(wǎng)頁上的其它web部件的交互性。用戶界面218可另選地包括允許用戶顯示和/或操縱被包括在查看器216的幻燈片視圖222中的演示文稿內(nèi)容220的功能。例如,用戶界面218可提供用戶可用來播放演示文稿內(nèi)容220的幻燈片演示、停止幻燈片演示、暫?;脽羝菔?、選擇下一幻燈片、選擇前一幻燈片以及查看關(guān)于當(dāng)前可查看的幻燈片的標(biāo)識信息(例如,Y個(gè)幻燈片中的幻燈片X)的按鈕或其它交互式元素。演示文稿內(nèi)容220可源自客戶機(jī)計(jì)算機(jī)102、數(shù)據(jù)118或另一位置。包括用戶界面218可以是設(shè)計(jì)選擇并且可由或針對特定開發(fā)者自定義設(shè)計(jì)。
[0048]構(gòu)想用戶界面218可被臨時(shí)或永久地從特定視圖隱藏。例如,可隱藏用戶界面218直到將光標(biāo)定位在網(wǎng)頁中的與用戶界面218相關(guān)聯(lián)的區(qū)域上,此時(shí)顯露用戶界面218。用戶界面218可另選地對所有用戶或諸如那些具有受限訪問權(quán)(例如,針對演示文稿內(nèi)容220或針對特定網(wǎng)站或其中所包含的頁面中的所有內(nèi)容的只讀許可)的特定用戶永久地隱藏。
[0049]查看器216也與客戶機(jī)設(shè)置224和導(dǎo)航功能226相關(guān)聯(lián)??蛻魴C(jī)設(shè)置224允許用戶控制關(guān)于組件204的各種功能(如將在下文中更詳細(xì)地描述的)以及幻燈片視圖222的位置。導(dǎo)航功能226可以是以下功能:播放演示文稿內(nèi)容220的幻燈片演示、停止幻燈片演示、暫?;脽羝菔尽⑦x擇下一幻燈片、選擇前一幻燈片以及查看關(guān)于當(dāng)前可查看的幻燈片的標(biāo)識信息(例如,Y個(gè)幻燈片中的幻燈片V)。
[0050]客戶機(jī)設(shè)置224和導(dǎo)航功能226由內(nèi)部API210用來按照內(nèi)部API210在一個(gè)或多個(gè)postMessage228中接收到的來自外部API208的請求操縱演示文稿內(nèi)容。例如,外部API208可接收到使演示文稿內(nèi)容220前進(jìn)至下一幻燈片的指令,并且因此外部API208生成包括該指令的postMessage228并將postMessage228發(fā)送到內(nèi)部API210,該內(nèi)部API210然后調(diào)用一個(gè)web應(yīng)用116 (即,演示文稿web應(yīng)用)的使演示文稿內(nèi)容220前進(jìn)至下一幻燈片的功能。此處,該功能可以是由演示文稿web應(yīng)用用來前進(jìn)至下一幻燈片的特定方法。此外,與該前進(jìn)相關(guān)聯(lián)的任何過渡或其它動畫可由內(nèi)部API210通過調(diào)用演示文稿web應(yīng)用所利用的動畫庫來獲取。
[0051]客戶機(jī)設(shè)置224可以是主機(jī)設(shè)置206的子集。主機(jī)設(shè)置206包括例如演不文稿內(nèi)容220的源(即,指向包括演示文稿內(nèi)容220的特定文件)、演示文稿內(nèi)容220的初始大小(例如,高度和寬度)以及導(dǎo)航功能226中所包括的控件。主機(jī)設(shè)置206中的某一些也可以是客戶機(jī)設(shè)置224。例如,自動前進(jìn)設(shè)置可被包括在主機(jī)設(shè)置206和客戶機(jī)設(shè)置224中。
[0052]現(xiàn)在轉(zhuǎn)向圖3,將進(jìn)一步參考圖1和2來描述用戶可用來選擇關(guān)于演示文稿內(nèi)容220的各種主機(jī)設(shè)置206的設(shè)置用戶界面300。如圖所不,設(shè)置用戶界面300包括演不文稿顯不部分302、工具欄和標(biāo)題欄部分304、導(dǎo)航和交互部分306、外觀部分308和布局部分310。應(yīng)理解,圖3所示的所有設(shè)置都是示例性主機(jī)設(shè)置206,其中一些設(shè)置也可以是示例性客戶機(jī)設(shè)置224。演示文稿內(nèi)容220的初始大小、布局設(shè)置以及是否顯示標(biāo)題欄/工具欄不是客戶機(jī)設(shè)置224的一部分。
[0053]演示文稿顯示部分302包括用戶可用來選擇要顯示在幻燈片視圖222中的演示文稿內(nèi)容220的演示文稿源選擇框312。在一些實(shí)施例中,演示文稿源選擇框312是用可用演示文稿內(nèi)容來預(yù)先填充的下拉菜單。在一些實(shí)施例中,用戶能夠輸入到演示文稿內(nèi)容220的路徑。該路徑可以是例如演示文稿內(nèi)容220的URL位置、演示文稿內(nèi)容220在服務(wù)器計(jì)算機(jī)110的數(shù)據(jù)118中的位置、或者演示文稿內(nèi)容220在客戶機(jī)計(jì)算機(jī)102上的位置(例如,以便上傳至服務(wù)器計(jì)算機(jī)110)。在所示實(shí)施例中,已經(jīng)選擇被命名為“樣本.ppt ”的演示文稿。應(yīng)理解,盡管示出了 *.PPt文件擴(kuò)展名,但可基于演示文稿內(nèi)容220的演示文稿文件格式來使用其它文件擴(kuò)展名。
[0054]工具欄和標(biāo)題欄部分304包括顯示標(biāo)題欄復(fù)選框314和顯示工具欄復(fù)選框316。顯示標(biāo)題欄復(fù)選框314允許用戶切換顯示/隱藏演示文稿的標(biāo)題欄。標(biāo)題欄可包括演示文稿源選擇框312中所選擇的演示文稿的文件名(具有或沒有文件類型擴(kuò)展)。顯示工具欄復(fù)選框316允許用戶切換顯示/隱藏工具欄。在所示實(shí)施例中,顯示標(biāo)題欄復(fù)選框314未被選中,而顯示工具欄復(fù)選框316被選中。
[0055]導(dǎo)航和交互部分306包括導(dǎo)航復(fù)選框318、自動前進(jìn)單選按鈕320A、320B以及自動前進(jìn)時(shí)間選擇框322。導(dǎo)航復(fù)選框318允許用戶切換允許/不允許在幻燈片上用來使演示文稿前進(jìn)的點(diǎn)擊、鍵盤快捷鍵或其它輸入。自動前進(jìn)單選按鈕320A、320B允許用戶選擇是演示文稿自動前進(jìn)(即,選擇自動前進(jìn)單選按鈕320A)還是遵從演示文稿設(shè)置,例如在創(chuàng)建演示文稿期間設(shè)置的關(guān)于幻燈片的自動前進(jìn)時(shí)序或手動前進(jìn)的設(shè)置(即,選擇自動前進(jìn)單選按鈕320B)。自動前進(jìn)單選按鈕320A在被選擇時(shí)允許用戶經(jīng)由自動前進(jìn)時(shí)間選擇框322來指示自動前進(jìn)之間的時(shí)間間隔。示出了兩秒的時(shí)間間隔,但這絕對不應(yīng)被認(rèn)為是限制性的。在一些實(shí)施例中,“使用來自文件的默認(rèn)自動前進(jìn)設(shè)置”復(fù)選框被另選地或另外地呈現(xiàn)在設(shè)置用戶界面300中。當(dāng)該復(fù)選框被選中時(shí),演示文稿內(nèi)容220使用文件中的任何自動前進(jìn)設(shè)置(例如,像幻燈片演示視圖)。當(dāng)該復(fù)選框未被選中時(shí),演示文稿內(nèi)容220不自動前進(jìn)并且每一動畫都需要點(diǎn)擊來在演示文稿內(nèi)容220中進(jìn)展(例如,像閱讀視圖)。
[0056]外觀部分308包括高度單選按鈕324A、324B、固定高度選擇框326、寬度單選按鈕328A、328B以及固定寬度選擇框330。高度單選按鈕324A、324B允許用戶選擇是為演示文稿web部件202設(shè)置固定高度還是調(diào)整高度以適合所選區(qū)域。高度單選按鈕324A在被選擇時(shí)允許用戶經(jīng)由固定高度選擇框326來指示演示文稿web部件202的固定高度。示出了“360”個(gè)像素的固定高度,但這絕對不應(yīng)被認(rèn)為是限制性的。寬度單選按鈕328A、328B允許用戶選擇是為演示文稿web部件202設(shè)置固定寬度還是調(diào)整寬度以適合所選區(qū)域。寬度單選按鈕328A在被選擇時(shí)允許用戶經(jīng)由固定寬度選擇框330來指示演示文稿web部件202的固定寬度。示出了 “640”個(gè)像素的固定寬度,但這絕對不應(yīng)被認(rèn)為是限制性的。
[0057]布局部分310包括隱藏復(fù)選框332、區(qū)域選擇框334以及區(qū)域索引選擇框336。隱藏復(fù)選框332允許用戶切換隱藏?cái)?shù)據(jù)。區(qū)域選擇框334允許用戶選擇網(wǎng)頁中的他們期望插入演示文稿web部件202的區(qū)域。區(qū)域可以是例如網(wǎng)頁的頁眉、頁腳或正文;或者可以是網(wǎng)頁中的特定欄或行。在所示實(shí)施例中,所選區(qū)域是網(wǎng)頁的中欄。區(qū)域索引選擇框336允許用戶選擇所選區(qū)域中的區(qū)段。如在所示實(shí)施例中,這些區(qū)段可由整數(shù)(例如,“0”)來指示。在一些實(shí)施例中,布局部分310例如由協(xié)作平臺114來自動填充。
[0058]設(shè)置用戶界面300還包括“確定”按鈕338、“取消”按鈕340和“應(yīng)用”按鈕342。對“確定”按鈕338的選擇應(yīng)用任何新設(shè)置并關(guān)閉設(shè)置用戶界面300。對“取消“按鈕340的選擇在不保存任何新設(shè)置的情況下關(guān)閉設(shè)置用戶界面300。對“應(yīng)用“按鈕342的選擇應(yīng)用任何新設(shè)置。
[0059]構(gòu)想設(shè)置用戶界面300可以不包括圖3所示的全部設(shè)置,可包括在圖3中未明確地示出的其他設(shè)置,或者可包括完全不同于圖3所示的設(shè)置。
[0060]現(xiàn)在轉(zhuǎn)向圖4,將詳細(xì)描述用于執(zhí)行包括演示文稿web部件的網(wǎng)頁的方法400的各方面。應(yīng)該理解,不一定按任何特定次序來呈現(xiàn)此處公開的方法的操作,并且構(gòu)想了用替換次序來執(zhí)行部分或全部操作是可能的。為了易于描述和說明,按所示次序來呈現(xiàn)各操作??梢蕴砑?、省略和/或同時(shí)執(zhí)行操作,而不脫離所附權(quán)利要求書的范圍。
[0061]還應(yīng)當(dāng)理解,所示方法可在任何時(shí)間結(jié)束且不必完整地執(zhí)行。這些方法的部分或全部操作和/或基本等效的操作可通過執(zhí)行計(jì)算機(jī)存儲介質(zhì)上所包括的計(jì)算機(jī)可讀指令來執(zhí)行,如在下文中所定義的。如在說明書和權(quán)利要求書中使用的術(shù)語“計(jì)算機(jī)可讀指令“及其變型,在本文是用來廣泛地包括例程、應(yīng)用、應(yīng)用模塊、程序模塊、程序、組件、數(shù)據(jù)結(jié)構(gòu)、算法等等。計(jì)算機(jī)可讀指令可以在各種系統(tǒng)配置上實(shí)現(xiàn),包括單處理器或多處理器系統(tǒng)、小型計(jì)算機(jī)、大型計(jì)算機(jī)、個(gè)人計(jì)算機(jī)、手持式計(jì)算設(shè)備、基于微處理器的可編程消費(fèi)電子廣品、其組合等等。
[0062]因此,應(yīng)該理解,本文所述的邏輯操作被實(shí)現(xiàn)為:⑴一系列計(jì)算機(jī)實(shí)現(xiàn)的動作或運(yùn)行于計(jì)算系統(tǒng)上的程序模塊;和/或(2)計(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)。
[0063]出于圖解說明和描述本公開的概念的目的,在此公開的方法被描述為由客戶機(jī)計(jì)算機(jī)102和/或服務(wù)器計(jì)算機(jī)110來執(zhí)行。應(yīng)該理解,這些實(shí)施例是示例性的,并且不應(yīng)被視為以任何方式進(jìn)行限制。
[0064]方法400開始于操作402,其中web瀏覽器108調(diào)用網(wǎng)頁。這可通過web瀏覽器108在URL輸入域中接收網(wǎng)頁的URL來完成。該URL可由客戶機(jī)計(jì)算機(jī)102的用戶手動輸入到URL輸入域中,在執(zhí)行應(yīng)用(例如,本機(jī)應(yīng)用或web應(yīng)用)時(shí)被自動輸入到URL輸入域中,或者在從另一網(wǎng)頁或文檔中選擇超鏈接時(shí)被輸入到URL輸入域中。網(wǎng)頁包括演示文稿web部件,諸如演示文稿web部件202。
[0065]方法400從操作402繼續(xù)至操作404,其中web部件202獲取演示文稿文件數(shù)據(jù)(例如,演示文稿內(nèi)容220 )。演示文稿文件數(shù)據(jù)的源可例如經(jīng)由設(shè)置用戶界面300來在演示文稿源選擇框312中設(shè)置。在操作406中,web瀏覽器108然后運(yùn)行網(wǎng)頁,從而導(dǎo)致在操作408中初始化外部AP1208。
[0066]方法400從操作408繼續(xù)至操作410,其中iFrame構(gòu)造器212 (例如,作為外部API208的一部分)創(chuàng)建iFrame214。方法400然后繼續(xù)至操作412,其中執(zhí)行演示文稿web應(yīng)用以便在iFrame214中顯示演示文稿內(nèi)容220。方法400然后在操作414中結(jié)束。
[0067]現(xiàn)在轉(zhuǎn)到圖5,將描述用于高速緩存演示文稿內(nèi)容220的方法500的各方面。演示文稿內(nèi)容220可以用具有各種寬高比(例如,4:3、16:9、16:10等)的各種大小(例如,像素尺寸)來創(chuàng)建。此外,iFrame214的大小可以是如由用戶指示的任何大小。因此,使得演示文稿內(nèi)容220適合在iFrame214內(nèi)可導(dǎo)致演示文稿內(nèi)容220被拉伸、縮小或以某種其它方式變形;像素化;或由于某種其它原因不適于顯示在iFrame214內(nèi)。例如,原始大小的演示文稿內(nèi)容220可能已被創(chuàng)建以便經(jīng)由本機(jī)或基于web的演示文稿查看器應(yīng)用來全尺寸顯示并且未被定制成作為iFrame的一部分嵌入網(wǎng)頁。方法500允許高速緩存各種大小的演示文稿內(nèi)容220以使得可將合適的大小插入各種比例的iFrame中。
[0068]方法500開始并繼續(xù)至操作502,其中訪問演示文稿內(nèi)容220。響應(yīng)于訪問演示文稿內(nèi)容220,在操作504中,將演示文稿內(nèi)容220縮放至固定數(shù)量的大小(也被稱為“束尺寸“)。盡管構(gòu)想了任何數(shù)量的大小,但出于解釋的目的,假定固定數(shù)量的大小是三個(gè),即小、中和大。這些固定數(shù)量的大小中的每一個(gè)的特定尺寸未被描述,并且可基于特定實(shí)現(xiàn)的需求來選擇。被縮放至固定數(shù)量的大小的演示文稿內(nèi)容220在本文以下內(nèi)容中被統(tǒng)稱為“經(jīng)縮放的演示文稿內(nèi)容”。
[0069]方法500從操作504繼續(xù)至操作506,其中經(jīng)縮放的演示文稿內(nèi)容被高速緩存以用于對演示文稿內(nèi)容220的將來請求。在操作508中,接收到一個(gè)這樣的請求,并且在操作510中,檢索合適大小(即,小、中或大束尺寸)的經(jīng)縮放的演示文稿內(nèi)容以便插入web部件202,尤其是插入iFrame214中。在一些實(shí)施例中,檢索基于目標(biāo)iFrame (即,iFrame214)的尺寸。在一些實(shí)施例中,選擇大于目標(biāo)iFrame的束尺寸,并且然后將其縮小至適合。參考圖6示出和描述用于檢索合適的束尺寸的方法。[0070]方法500從操作510繼續(xù)至操作512,其中將檢索到的經(jīng)縮放的演示文稿內(nèi)容插入到web部件202的iFrame214中。然后,方法500行進(jìn)到操作514,在此處方法500結(jié)束。
[0071]現(xiàn)在轉(zhuǎn)到圖6,將描述用于選擇演示文稿束尺寸的方法600的各方面。例如根據(jù)上述方法500,方法600假定已經(jīng)為演示文稿內(nèi)容220定義三個(gè)束尺寸(小、中和大),并高速緩存這些束尺寸以用于將來請求。方法600開始并繼續(xù)至操作602,其中接收將演示文稿內(nèi)容插入iFrame214的請求。
[0072]方法600從操作602繼續(xù)至操作604,其中確定iFrame214的高度和寬度是否小于或等于為中尺寸束定義的最小高度和最小寬度。如果在操作604中確定iFrame214的高度和寬度小于或等于為中尺寸束定義的最小高度和最小寬度,則方法600繼續(xù)至操作606,其中選擇小束尺寸。然后,方法600行進(jìn)到操作608,在此處方法600結(jié)束。
[0073]然而,如果在操作604中確定iFrame214的高度和寬度不小于或等于為中尺寸束定義的最小高度和最小寬度,則方法600繼續(xù)至操作610,其中確定iFrame214的高度和寬度是否小于或等于為大尺寸束定義的最小高度和最小寬度。如果在操作610中確定iFrame214的高度和寬度小于或等于為大尺寸束定義的最小高度和最小寬度,則方法600繼續(xù)至操作612,其中選擇中束尺寸。然后,方法600行進(jìn)到操作608,在此處方法600結(jié)束。
[0074]如果在操作610中確定iFrame214的高度和寬度不小于或等于為中尺寸束定義的最小高度和最小寬度,則方法600繼續(xù)至操作614,其中選擇大束尺寸。然后,方法600行進(jìn)到操作608,在此處方法600結(jié)束。
[0075]應(yīng)理解,判定操作604、610可分開考慮高度和寬度分量以使得如果iFrame214的高度或?qū)挾确謩e小于或等于為特定尺寸束定義的最小高度或?qū)挾龋瑒t選擇較小的束尺寸(即,對于操作604選擇小束尺寸,而對于操作610選擇中束尺寸)。還應(yīng)理解,可定義比三個(gè)束尺寸選項(xiàng)更多或更少的選項(xiàng),并因此可使用如同操作604、610的更多或更少的操作來確定iFrame214的高度和/或?qū)挾仁欠裥∮诨虻扔跒樘囟ㄊ叽缍x的最小高度和/或最小寬度。
[0076]現(xiàn)在轉(zhuǎn)向圖7,將進(jìn)一步參考圖2描述用于在web部件202中調(diào)用web應(yīng)用的實(shí)現(xiàn)的方法700的各方面。方法700開始并繼續(xù)至操作702,其中在外部API208處接收指令。該指令可以是例如以下指令:前進(jìn)至下一幻燈片、返回到前一幻燈片、結(jié)束演示文稿或以其它方式操縱web部件202的iFrame214中所顯示的演示文稿內(nèi)容220。
[0077]方法700從操作702繼續(xù)至操作704,其中外部API208生成包括在操作702中接收到的指令的postMessage。方法700然后繼續(xù)至操作706,其中外部API208將postMessage發(fā)到內(nèi)部API210。方法700從操作706繼續(xù)至操作708,其中內(nèi)部API210調(diào)用演示文稿web應(yīng)用的實(shí)現(xiàn)來執(zhí)行postMessage中所包括的指令。然后,方法700行進(jìn)到操作710,在此處方法700結(jié)束。
[0078]應(yīng)理解,外部API208不限于只將指令發(fā)送到內(nèi)部API210并進(jìn)而發(fā)送到查看器216。例如,如果用戶導(dǎo)航查看器216,則外部API208可將消息發(fā)送到正在使用外部API208的應(yīng)用。這在下文中參考圖8來示出和描述。
[0079]現(xiàn)在轉(zhuǎn)向圖8,將進(jìn)一步參考圖2描述用于在外部API208和正在調(diào)用外部API208的應(yīng)用之間進(jìn)行通信的方法800的各方面。方法800開始于操作802,其中導(dǎo)航輸入由內(nèi)部API210接收并被提供給外部API208。在操作804,外部API208進(jìn)而將包括導(dǎo)航輸入的消息發(fā)送到調(diào)用外部API208的應(yīng)用。方法800然后繼續(xù)至操作806,其中應(yīng)用然后響應(yīng)于在消息中接收到的導(dǎo)航輸入來執(zhí)行一個(gè)或多個(gè)功能。然后,方法800繼續(xù)到操作808,在此處方法800結(jié)束。
[0080]在一些實(shí)施例中,應(yīng)用是地圖應(yīng)用,且導(dǎo)航輸入是幻燈片前進(jìn)輸入,從而當(dāng)應(yīng)用接收到導(dǎo)航輸入時(shí),作為響應(yīng)該應(yīng)用通過顯示與查看器216中所顯示的幻燈片一致的位置來操縱地圖。構(gòu)想其它用例。
[0081]圖9示出了能夠執(zhí)行此處描述的用于利用演示文稿web部件來在網(wǎng)頁中嵌入演示文稿內(nèi)容的軟件組件的設(shè)備的示例性計(jì)算機(jī)體系結(jié)構(gòu)900。由此,圖9所示的計(jì)算機(jī)體系結(jié)構(gòu)900示出服務(wù)器計(jì)算機(jī)、移動電話、PDA、智能電話、臺式計(jì)算機(jī)、上網(wǎng)本計(jì)算機(jī)、平板計(jì)算機(jī)、和/或膝上型計(jì)算機(jī)的體系結(jié)構(gòu)。計(jì)算機(jī)體系結(jié)構(gòu)900可用于執(zhí)行本文所呈現(xiàn)的軟件組件的任何方面。
[0082]圖9所示的計(jì)算機(jī)體系結(jié)構(gòu)900包括中央處理單元902 (“CPU”)、包括隨機(jī)存取存儲器904 (“RAM”)和只讀存儲器(“ROM”)906的系統(tǒng)存儲器908、以及將存儲器904耦合至CPU902的系統(tǒng)總線910?;据斎?輸出系統(tǒng)被存儲在R0M908中,該系統(tǒng)包含幫助諸如在啟動期間計(jì)算機(jī)體系結(jié)構(gòu)900中的元件之間傳遞信息的基本例程。計(jì)算機(jī)體系結(jié)構(gòu)900還包括大容量存儲設(shè)備912,用于存儲操作系統(tǒng)106、112、協(xié)作平臺114、web應(yīng)用116、數(shù)據(jù)118、web部件120、演不文稿web部件122和web瀏覽器108。
[0083]大容量存儲設(shè)備912通過連接至總線910的大容量存儲控制器(未示出)連接至CPU902。大容量存儲設(shè)備912及其相關(guān)聯(lián)的計(jì)算機(jī)可讀介質(zhì)為計(jì)算機(jī)體系結(jié)構(gòu)900提供非易失性存儲。雖然對此處包含的計(jì)算機(jī)可讀介質(zhì)的描述引用了諸如硬盤或CD-ROM驅(qū)動器之類的大容量存儲設(shè)備,但是本領(lǐng)域的技術(shù)人員應(yīng)該明白,計(jì)算機(jī)可讀介質(zhì)可以是可由計(jì)算機(jī)體系結(jié)構(gòu)900訪問的任何可用計(jì)算機(jī)存儲介質(zhì)或通信介質(zhì)。
[0084]通信介質(zhì)包括諸如載波或其它傳輸機(jī)制等已調(diào)制數(shù)據(jù)信號中的計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù),且包含任何傳遞介質(zhì)。術(shù)語“已調(diào)制數(shù)據(jù)信號”指的是其一個(gè)或多個(gè)特征以在信號中編碼信息的方式被更改或設(shè)定的信號。作為示例而非限制,通信介質(zhì)包括諸如有線網(wǎng)絡(luò)或直接線連接之類的有線介質(zhì),以及諸如聲學(xué)、RF、紅外及其他無線介質(zhì)之類的無線介質(zhì)。上述的任意組合也應(yīng)包含在計(jì)算機(jī)可讀介質(zhì)的范圍內(nèi)。
[0085]作為示例而非限制,計(jì)算機(jī)存儲介質(zhì)可包括以用于存儲諸如計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)等信息的任何方法或技術(shù)實(shí)現(xiàn)的易失性和非易失性、可移動和不可移動介質(zhì)。例如,計(jì)算機(jī)介質(zhì)包括但不限于,RAM、R0M、EPR0M、EEPR0M、閃存或其他固態(tài)存儲器技術(shù)、CD-ROM、數(shù)字多功能盤(“DVD”)、HD-DVD、藍(lán)光(BLU-RAY)或其他光學(xué)存儲、磁帶盒、磁帶、磁盤存儲或其他磁性存儲設(shè)備、或能用于存儲所需信息且可以由計(jì)算機(jī)體系結(jié)構(gòu)900訪問的任何其他介質(zhì)。為了權(quán)利要求書的目的,短語“計(jì)算機(jī)存儲介質(zhì)”及其變型不包括波、信號和/或其他瞬態(tài)和/或無形通信介質(zhì)本身。
[0086]根據(jù)各實(shí)施例,計(jì)算機(jī)體系結(jié)構(gòu)900可以使用通過諸如網(wǎng)絡(luò)104之類的網(wǎng)絡(luò)到遠(yuǎn)程計(jì)算機(jī)的邏輯連接來在聯(lián)網(wǎng)環(huán)境中操作。計(jì)算機(jī)體系結(jié)構(gòu)900可以通過連接至總線910的網(wǎng)絡(luò)接口單元916來連接到網(wǎng)絡(luò)104。應(yīng)當(dāng)明白,網(wǎng)絡(luò)接口單元916還可以被用來連接到其它類型的網(wǎng)絡(luò)和遠(yuǎn)程計(jì)算機(jī)系統(tǒng),例如,被配置成主存諸如演示文稿內(nèi)容等內(nèi)容的遠(yuǎn)程計(jì)算機(jī)系統(tǒng)。計(jì)算機(jī)體系結(jié)構(gòu)900還可包括用于接收和處理來自多個(gè)其他設(shè)備的輸入的輸Λ /輸出控制器918,這些設(shè)備包括鍵盤、鼠標(biāo)、或電子指示筆(在圖9中未示出)。類似地,輸入/輸出控制器918可提供到顯示屏、打印機(jī)、或者其他類型的輸出設(shè)備(在圖9中也未不出)的輸出。
[0087]應(yīng)當(dāng)理解,本文所描述的軟件組件在被加載到CPU902中并被執(zhí)行時(shí)可以將CPU902和總體計(jì)算機(jī)體系結(jié)構(gòu)900從通用計(jì)算系統(tǒng)變換成為方便本文所提出的功能而定制的專用計(jì)算系統(tǒng)。CPU902可以用任意數(shù)量的晶體管或其他分立的電路元件(它們可以分別地或共同地呈現(xiàn)任意數(shù)量的狀態(tài))構(gòu)建。更具體地,CPU902可以響應(yīng)于包含在本文所公開的軟件模塊中的可執(zhí)行指令來作為有限狀態(tài)機(jī)進(jìn)行操作。這些計(jì)算機(jī)可執(zhí)行指令可以通過指定CPU902如何在各狀態(tài)之間轉(zhuǎn)換來變換CPU902,由此變換了構(gòu)成CPU902的晶體管或其它分立硬件元件。
[0088]對本文所提出的軟件模塊的編碼也可變換本文所提出的計(jì)算機(jī)可讀介質(zhì)的物理結(jié)構(gòu)。在本說明書的不同實(shí)現(xiàn)中,物理結(jié)構(gòu)的具體轉(zhuǎn)換可取決于各種因素。這樣的因素的示例可以包括,但不僅限于:用于實(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ù)。
[0089]作為另一示例,本文所公開的計(jì)算機(jī)可讀介質(zhì)可以使用磁或光技術(shù)來實(shí)現(xiàn)。在這些實(shí)現(xiàn)中,本文所提出的軟件可以在磁或光介質(zhì)中編碼了軟件時(shí)變換所述磁或光介質(zhì)的物理狀態(tài)。這些轉(zhuǎn)換可包括更改給定磁性介質(zhì)內(nèi)的特定位置的磁性特征。這些變換還可以包括改變給定光學(xué)介質(zhì)內(nèi)的特定位置的物理特征或特性,以改變這些位置的光學(xué)特性。在沒有偏離本說明書的范圍和精神的情況下,物理介質(zhì)的其他轉(zhuǎn)換也是可以的,前面提供的示例只是為了便于此討論。
[0090]鑒于以上內(nèi)容,應(yīng)當(dāng)理解,在計(jì)算機(jī)體系結(jié)構(gòu)900中發(fā)生許多類型的物理變換以便存儲并執(zhí)行本文所提出的軟件組件。還應(yīng)當(dāng)理解,計(jì)算機(jī)體系結(jié)構(gòu)900可包括其它類型的計(jì)算設(shè)備,包括手持式計(jì)算機(jī)、嵌入式計(jì)算機(jī)系統(tǒng)、個(gè)人數(shù)字助理、以及本領(lǐng)域技術(shù)人員已知的其它類型的計(jì)算設(shè)備。還可構(gòu)想計(jì)算機(jī)體系結(jié)構(gòu)900可以不包括圖9所示的全部組件、可包括在圖9中未明確地示出的其他組件、或者可利用完全不同于圖9所示的體系結(jié)構(gòu)。
[0091]基于上述內(nèi)容,應(yīng)當(dāng)明白,已經(jīng)在此處公開了用于利用演示文稿web部件來在網(wǎng)頁中嵌入演示文稿內(nèi)容的技術(shù)。雖然用計(jì)算機(jī)結(jié)構(gòu)特征、方法和變換動作、特定計(jì)算機(jī)器、以及計(jì)算機(jī)可讀介質(zhì)專用的語言描述了本文中所描述的主題,但是應(yīng)當(dāng)理解,所附權(quán)利要求書中所定義的本發(fā)明不必限于本文中所描述的具體特征、動作、或介質(zhì)。相反,這些具體特征、動作以及介質(zhì)是作為實(shí)現(xiàn)權(quán)利要求的示例形式而公開的。
[0092]以上所述的主題僅作為說明提供,并且不應(yīng)被解釋為限制??蓪Ρ疚闹兴枋龅闹黝}作出各種修改和改變,而不必遵循示出和描述的示例實(shí)施例和應(yīng)用且不背離所附權(quán)利要求書中所闡述的本發(fā)明的真正精神和范圍。
【權(quán)利要求】
1.一種其上存儲有計(jì)算機(jī)可讀指令的計(jì)算機(jī)存儲介質(zhì),所述指令在由計(jì)算機(jī)執(zhí)行時(shí)致使所述計(jì)算機(jī): 創(chuàng)建其中顯示演示文稿內(nèi)容的內(nèi)聯(lián)框架; 在所述內(nèi)聯(lián)框架內(nèi)執(zhí)行web應(yīng)用;以及 作為執(zhí)行所述web應(yīng)用的結(jié)果而在所述內(nèi)聯(lián)框架內(nèi)顯示所述演示文稿內(nèi)容。
2.如權(quán)利要求1所述的計(jì)算機(jī)存儲介質(zhì),其特征在于,所述內(nèi)聯(lián)框架由演示文稿web部件的內(nèi)聯(lián)框架構(gòu)造器來創(chuàng)建,所述內(nèi)聯(lián)框架構(gòu)造器是由被配置成與內(nèi)部應(yīng)用編程接口進(jìn)行通信的外部應(yīng)用編程接口提供的函數(shù),所述內(nèi)部應(yīng)用編程接口調(diào)用所述web應(yīng)用以便在所述內(nèi)聯(lián)框架內(nèi)執(zhí)行以顯示所述演示文稿內(nèi)容;所述計(jì)算機(jī)存儲介質(zhì)還具有在被所述計(jì)算機(jī)執(zhí)行致使所述計(jì)算機(jī)執(zhí)行以下操作的指令:按照所述內(nèi)部應(yīng)用編程接口從所述外部應(yīng)用編程接口接收到的指令來在所述內(nèi)聯(lián)框架內(nèi)操縱所述演示文稿內(nèi)容,用于操縱所述演示文稿內(nèi)容的所述指令包括用于執(zhí)行以下操作的指令:播放所述演示文稿內(nèi)容、停止所述演示文稿內(nèi)容、選擇所述演示文稿內(nèi)容中的下一幻燈片、選擇所述演示文稿內(nèi)容中的前一幻燈片或者查看關(guān)于所述演示文稿內(nèi)容中的當(dāng)前可查看的幻燈片的標(biāo)識信息。
3.如權(quán)利要求1所述的計(jì)算機(jī)存儲介質(zhì),其特征在于,所述內(nèi)聯(lián)框架包括查看器;并且其中用于在所述內(nèi)聯(lián)框架內(nèi)顯示所述演示文稿內(nèi)容的所述指令包括用于在所述查看器內(nèi)顯示所述演示文稿內(nèi)容的指令。
4.如權(quán)利要求4所述的計(jì)算機(jī)存儲介質(zhì),其特征在于,所述內(nèi)聯(lián)框架與在所述內(nèi)聯(lián)框架外部的用戶界面相關(guān)聯(lián),并且被配置成操縱所述查看器內(nèi)顯示的所述演示文稿內(nèi)容。
5.一種用于選擇演示文稿內(nèi)容的大小的計(jì)算機(jī)實(shí)現(xiàn)的方法,所述計(jì)算機(jī)實(shí)現(xiàn)的方法包括執(zhí)行計(jì)算機(jī)實(shí)現(xiàn)的操作`,用于: 將演示文稿內(nèi)容縮放至多個(gè)大?。? 高速緩存所述多個(gè)大小的演示文稿內(nèi)容; 接收對所述演示文稿內(nèi)容的請求; 針對其中將顯示所述演示文稿內(nèi)容的目標(biāo)內(nèi)聯(lián)框架檢索所述多個(gè)大小中的合適大小的演示文稿內(nèi)容;以及 將所述合適大小的演示文稿內(nèi)容插入到所述目標(biāo)內(nèi)聯(lián)框架中。
6.如權(quán)利要求5所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,還包括接收對所述演示文稿內(nèi)容的初始請求;并且其中將所述演示文稿內(nèi)容縮放至所述多個(gè)大小是響應(yīng)于對所述演示文稿內(nèi)容的所述初始請求的。
7.如權(quán)利要求5所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,所述合適大小是小于或等于所述目標(biāo)內(nèi)聯(lián)框架的大小的多個(gè)大小中的至少一個(gè)。
8.如權(quán)利要求5所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,還包括響應(yīng)于接收到對所述演示文稿內(nèi)容的請求: 確定所述目標(biāo)內(nèi)聯(lián)框架的尺寸是否小于或等于所述多個(gè)大小中的第一大小的最小尺寸; 在所述目標(biāo)內(nèi)聯(lián)框架的尺寸小于或等于所述第一大小的最小尺寸的情況下將所述第一大小選為所述合適大?。灰约? 在所述目標(biāo)內(nèi)聯(lián)框架的尺寸不小于或等于所述第一大小的最小尺寸的情況下將所述第二大小選為所述合適大小。
9.如權(quán)利要求5所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其特征在于,還包括響應(yīng)于接收到對所述演示文稿內(nèi)容的請求: 確定所述目標(biāo)內(nèi)聯(lián)框架的尺寸是否小于或等于所述多個(gè)大小中的第一大小的第一最小尺寸; 在所述目標(biāo)內(nèi)聯(lián)框架的尺寸小于或等于所述第一大小的第一最小尺寸的情況下將所述第一大小選為所述合適大??; 在所述目標(biāo)內(nèi)聯(lián)框架的尺寸不小于或等于所述第一最小尺寸的情況下,確定所述目標(biāo)內(nèi)聯(lián)框架的尺寸是否小于或等于第二大小的第二最小尺寸; 在所述目標(biāo)內(nèi)聯(lián)框架的尺寸小于或等于所述第二大小的第二最小尺寸的情況下將所述第二大小選為所述合適大?。灰约? 在所述目標(biāo)內(nèi)聯(lián)框架的尺寸不小于或等于所述第二大小的最小尺寸的情況下將第三大小選為所述合適大小。
10.一種其上存儲有計(jì)算機(jī)可讀指令的計(jì)算機(jī)存儲介質(zhì),所述指令在由計(jì)算機(jī)執(zhí)行時(shí)致使所述計(jì)算機(jī): 在網(wǎng)頁內(nèi)顯示作為演示文稿web部件的一部分的內(nèi)聯(lián)框架; 在所述內(nèi)聯(lián)框架內(nèi)顯示演示文稿內(nèi)容; 在內(nèi)部應(yīng)用編程接口處,在postMessage中接收來自外部應(yīng)用編程接口的指令,所述指令用于操縱所述內(nèi)聯(lián)框架內(nèi)的演示文稿內(nèi)容;以及 根據(jù)由所述內(nèi)部編程接口在所述postMessage中接收到的指令來操縱所述內(nèi)聯(lián)框架內(nèi)的演示文稿內(nèi)容。
【文檔編號】G06F3/14GK103608770SQ201280027967
【公開日】2014年2月26日 申請日期:2012年6月3日 優(yōu)先權(quán)日:2011年6月7日
【發(fā)明者】R·M·洛, C·D·基科恩, M·A·小卡多佐, N·勾拉米 申請人:微軟公司