Solaris 8 のソフトウェア開発 (追補)

拡張された API と開発しやすさの向上

AWT の拡張機能

J2SE 1.3.0 には、新しいロボット API が組み込まれています。これは、Abstract Window Toolkit (AWT) や Swing のテストの自動化を行うために設計されたものです。ロボット API を使用すると、Java プログラミング言語で書かれたコードで、低レベルのネイティブのマウスやキーボードの入力イベントが生成できます。イベントはオペレーティングシステムレベルで生成されるため、他の AWT への実際のユーザー入力と区別することはできません。

ロボット API は主としてテストの容易性を向上させるため設計されたものですが、次のような利点もあります。

J2SE 1.3.0 では、印刷に対する API も改善されています。新しい印刷 API では、開発者はプラットフォーム固有の機能を使用して AWT コンポーネントから簡単に印刷できます。新しい API を使用すると、開発者は印刷ジョブのプロパティを制御することができます。制御可能なプロパティには、出力先、コピー数、ページ範囲、ページサイズ、方向、印刷の品質などがあります。

Java 2D 技術の拡張

J2SE 1.3.0 では、同じアプリケーションによる複数のモニター上の GUI フレームとウィンドウのレンダリングがサポートされるようになりました。Java 2DTM API では、マルチスクリーンの次の 3 つの構成がサポートされています。

J2SE 1.3.0 の新しい動的フォントロード API を使用すると、開発者は実行時に TrueType フォントの作成やロードが行えます。開発者は Java 2D API を使用して、動的にロードされたフォントに対し、サイズ、スタイル、変形などの希望する機能を与えることができます。

J2SE 1.3.0 の Java 2D API では、Portable Graphics Network (PGN) フォーマットがサポートされるようになりました。このフォーマットは、ラスターイメージを劣化することなく可搬性のある方法で保存できる、柔軟で広範囲な非独占的なファイルフォーマットです。PGN ではグレースケール、索引付きのカラー、トゥルーカラーイメージをサポートしており、アルファチャネルを利用できます。

Java Platform Debugger Architecture (JPDA)

JPDA 技術とは複層構造のデバッグアーキテクチャで、プラットフォーム、仮想マシンの実装、および J2SE バージョンの枠を超えて実行できるデバッガアプリケーションを、ツール開発者が簡単に作成できます。

JPDA には次の 3 つの層があります。

国際化

J2SE 1.3.0リリースおける国際化の向上によって、開発者は自国ユーザー向けにアプリケーションを今まで以上に柔軟にローカライズできるようになりました。ここでは、2 つの新しい機能について説明します。

入力方式とは、アプリケーションに対してテキスト入力を生成するため、キー入力や話しかけるなどのユーザーの操作を解釈するソフトウェアコンポーネントです。国際的なロケールでは、入力方式はテキストの入力に重要な役割を果たします。キーボードから直接入力できる英文テキストと異なり、日本語や中国語などの言語でのテキスト入力には、さらに高度な入力方式のフレームワークが必要となります。J2SE 1.3.0 では、開発者がそうした作業に対応するために必要となる強力なツール群が提供されています。

最新のテキスト編集コンポーネントでは、テキストが最終的に表示される文書の文脈内に、入力されたテキストが表示されます。これを「入力位置内 (on-the-spot)」入力といい、Java 2 Platform では常にサポートされてきました。

J2SE 1.3.0 では、中国などの国で好評な「入力位置下 (below-the-spot)」という、第二の入力スタイルに対するサポートが追加されています。「入力位置下」テキスト編集では、入力済みのテキストは別の編集ウィンドウに表示され、そのウィンドウはテキストの挿入位置の近くに自動的に配置されます。

開発者としては、入力方式のフレームワークの一部として表示されるウィンドウを変更したり、カスタマイズしたいと考える可能性があります。その場合、J2SE 1.3.0 では、入力方式のエンジンである Service Provider Interface (SPI) に対応する新しい API が提供されているため、開発者は自在に変更やカスタマイズができます。SPI を使用して、開発者は、ソフトウェアの必要性に応じて独自の入力方式のエンジンを作成できます。

国際ロケールに対する新たなサポートの例は他にもあります。J2SE 1.3.0 では、アラビア語やヘブライ語などのロケール用に、ツールバーやメニューバーを右から左という方向になるように、アプリケーションのフレームやダイアログボックスをレンダリングすることができます。

プラットフォームライブラリやツールのその他の機能拡張

J2SE 1.3.0 では、Sun と協力関係にある企業との協議の結果や開発者からの要望に応えて、新たな機能がプラットフォームや Java 2 SDK ツールスイートに追加されています。拡張機能には、次のものがあります。