【正文】
這個(gè)綜合 API 被分成幾個(gè)規(guī)范: Java Speech API 規(guī)范( Java Speech API Specification, JSAPI) Java Speech API 程序員指南 Java Speech API 語(yǔ)法格式規(guī)范( Java Speech API Grammar Format Specification, JSGF) Java Speech API 標(biāo)記語(yǔ)言規(guī)范( Java Speech API Markup Language Specification, JSML) 這個(gè) API 沒(méi)有 Sun 公司的參考實(shí)現(xiàn),但是有許多第三方實(shí)現(xiàn),包括 Speech for Java(可以從 IBM alphaWorks 獲得),它使用 ViaVoice 來(lái)支持語(yǔ)音命令識(shí)別、聽(tīng)寫(xiě)和文本到語(yǔ)音的合成。 Speech Java Speech API 允許開(kāi)發(fā)人員將語(yǔ)音技術(shù)整合到 Java applet 和應(yīng)用程序的用戶界面中。 Java Media Framework( JMF) JMF 是一種 API,可以將音頻、視頻和其它基于時(shí)間的媒體整合到 Java 應(yīng)用程序和 applet 中。 Image I/O 這種 API 定義了一種可讀 /寫(xiě)不同格式圖像的可插式框架。它包括的操作有對(duì)比度增強(qiáng)、剪切、縮放、幾何彎曲和頻率范圍處理。 這個(gè) API 包括一個(gè)詳細(xì)的規(guī)范文檔和 、 包的實(shí)現(xiàn)。這個(gè)領(lǐng)域的其它 API 還有 Java 3D、 Advanced Imaging(高級(jí)圖像處理)、 Image I/O(圖像 I/O)、 Java Media Framework( JMF,Java 媒體框架)和 Speech(語(yǔ)音)。 先進(jìn)的字體度量功能,超過(guò)舊的 類(lèi)中的相應(yīng)功能 排版功能可以實(shí)現(xiàn)單詞換行和調(diào)整多行文本 多媒體選項(xiàng): Java Media API( Java 媒體 API) Java Media API 是一套涵蓋廣泛的多媒體技術(shù)領(lǐng)域的資源。它們包括: 使用抗鋸齒處理和微調(diào)( hinting)以達(dá)到更好的輸出質(zhì)量 可以使用系統(tǒng)安裝的所有字體 可以將對(duì)圖形對(duì)象的操作(旋轉(zhuǎn)、縮放、著色、剪切等等)應(yīng)用到文本上。多數(shù)情況下是使用雙精度值,并且角度是用弧度來(lái)度量的(而不是 Arc2D 類(lèi)中使用的度)。每一個(gè)轉(zhuǎn)換都可以用一個(gè) 3x3 的矩陣來(lái)表示,該矩陣規(guī)定轉(zhuǎn)換的源點(diǎn)和目標(biāo)點(diǎn)之間的映射。仿射轉(zhuǎn)換指的是平行線在轉(zhuǎn)換后還保持平行。例如,(x,y,w,h)將在 (x,y)點(diǎn)上構(gòu)造一個(gè)以寬為 w、高為 h 的矩形為邊界的橢圓,其中 x、 y、 w 和 h 都為浮點(diǎn)值。其中每一個(gè)都是抽象類(lèi),他們都是兩個(gè)名為 Double 和 Float 的非抽象內(nèi)部類(lèi)(它們是抽象外部類(lèi)的子類(lèi))。如果使用第二種選擇,就可以使用 2D API 的所有附加功能。 盡管在 語(yǔ)言的當(dāng)前版本中,這個(gè)對(duì)象真是一個(gè) Graphics2D 對(duì)象。這樣安排的原因是:向后兼容。 API 的其它部分由 層次結(jié)構(gòu)中的其它包提供,包括、 和 。隨著 Java 2D API(它包含一個(gè)真正的功能集)的出現(xiàn),所有的一切都改變了。讓我們看一個(gè)示例。為了集成本機(jī)平臺(tái)的拖放功能,它也可以以一種平臺(tái)相關(guān)的方式運(yùn)行。 Java2 版本引入了 包。 另外,您可以制作自己的 lookandfeel。相反,它們使用輕量級(jí)組件,有和本機(jī)組件一樣的外觀。 Swing 為 Windows 平臺(tái)和 Motif 平臺(tái)分別提供一個(gè) Java lookandfeel(以前稱(chēng)為 Metal),同時(shí)為 Macintosh 平臺(tái)提供一個(gè) Java lookandfeel(作為額外選項(xiàng))。 建立這個(gè)橋梁的機(jī)制被稱(chēng)為 可插式 LookandFeel(它很接近主題的概念,在 linux 社區(qū)中非常流行)。 最好的方法 Swing 沒(méi)有完全遵循 Java 語(yǔ)言作為一個(gè)平臺(tái)的路線。如果不包含 X System Window 的調(diào)用,您就不能在 UNIX 上顯示一個(gè)窗口。為了實(shí)現(xiàn)這個(gè)目標(biāo),本機(jī)組件必須盡量地丟棄。在以前的 中,是無(wú) 法區(qū)分鼠標(biāo)鍵的點(diǎn)擊的,因?yàn)?Macintosh 只有一個(gè)鼠標(biāo)鍵,所以其它的每個(gè)平臺(tái)都要表現(xiàn)得好像自己也只支持一個(gè)鼠標(biāo)鍵一樣。 AWT 只提供了有限的一套組件,是因?yàn)樽钚」帜阜椒ㄖ挥挟?dāng)一個(gè)特殊的組件或功能在每個(gè)平臺(tái)上都可用的時(shí)候才能夠被提供。但隨著復(fù)雜性的增加,情況就不一樣了,這只是因?yàn)榻M件的不同,而且在某些情況下,不管修正了多少錯(cuò)誤,并且 AWT 的部件被重寫(xiě)了多少次,它們總會(huì)表現(xiàn)得有一點(diǎn)不同。當(dāng)然,這也是問(wèn)題開(kāi)始的地方。例如,在 UNIX 平臺(tái)上, 類(lèi)是用窗口小部件 Motif PushButton 實(shí)現(xiàn)的。它不僅是 AWT 所提供的組件的替代品,并且在這些組件的基礎(chǔ)上有了很大進(jìn)步。在本文中,我們將討論 JFC 的每個(gè)主要組件,并討論一些可選的擴(kuò)展。在 Java2 平臺(tái)上,這些擴(kuò)展中的大部分都可以在平臺(tái)的核心中找到它們的一席之地,成為 Java 基礎(chǔ)類(lèi)( Java Foundation Classes, JFC)的一部分。 在 Java2 平臺(tái)發(fā)行之前,抽象窗口工具包( Abstract Window Toolkit, AWT)是 Java 平臺(tái)的圖形功能的范圍。在本文中,我們將探究這個(gè)進(jìn)步,詳細(xì)審視當(dāng)前 版本的功能,最后展望一下未來(lái),看看發(fā)行版 會(huì)提供些什么。s Guide Java Speech API Grammar Format Specification (JSGF) Java Speech API Markup Language Specification (JSML) There is no Sun reference implementation for this API, but there are numerous thirdparty implementations, including Speech for Java (available from IBM alphaWorks), which uses ViaVoice to support voicemand recognition, dictation, and texttospeech synthesis. Java 2 用戶界面 自從 Java 語(yǔ)言出現(xiàn)的早期到現(xiàn)在,圖形和用戶界面功能已取得了飛躍式的發(fā)展。 the rest are currently optional extensions, but some of them will no doubt find their way into the core in the future. The other APIs in this area are Java 3D, Advanced Imaging, Image I/O, the Java Media Framework (JMF), and Speech. Java 3D The Java 3D API provides a set of objectoriented interfaces that support a simple, highlevel programming model, enabling developers to build, render, and control the behavior of 3D objects and visual environments. The API includes a detailed specification document and implementation for packages and . Advanced Imaging Operations covered by this specification enhance a user39。 a few geometric shapes such as ovals, arcs, and polygons。t use the native ponents of the platform like the AWT does. Instead, they use lightweight ponents that