J2SE 5.0 では、BufferedImage コンストラクタで作成されたすべてのイメージが管理対象のイメージとなり、ビデオメモリー内にキャッシュすることができるようになりました。または、リモート X サーバーの場合、X サーバー側にキャッシュできます。以前の実装では、Component createImage(int, int) メソッドまたは GraphicsConfiguration createCompatibleImage メソッドで作成された互換性のあるイメージのみを管理していました。管理されるイメージは、管理されないイメージに比べて、一般的にパフォーマンスが良好です。 
この変更に対応するバグレポート: 4881082
Image クラスには、ハードウェアの高速化に関連する 3 つの新しいメソッドがあります。以前は VolatileImage 内でのみ定義された getCapabilities メソッドによって、イメージが現在高速化されているかどうかを判断できるようになります。ほかの 2 つのメソッド、 setAccelerationPriority および getAccelerationPriority では、イメージの高速化の重要性の程度についてのヒントを設定または取得できます。
GraphicsConfiguration クラスには、透明な VolatileImage を作成できる 2 つの新メソッド、createCompatibleVolatileImage(int, int, int) および createCompatibleVolatileImage(int, int, ImageCapabilities, int) があります。
setAccelerationPriority によって設定された値は無視され、createCompatibleVolatileImage メソッドで作成されたイメージは常にハードウェアの高速化が行われるわけではありません。Linux および Solaris システムでは、OPAQUE VolatileImages のみがハードウェア高速化されます。Microsoft Windows システムの場合、J2SE 5.0 の createCompatibleVolatileImage で作成されたイメージのハードウェアの高速化が行われるのは、ハードウェアが高速化をサポートし、しかも次の条件の 1 つが真の場合のみです。
OPAQUE である。TRANSLUCENT であり、実行時に特に透過性高速化が有効にされている (sun.java2d.translaccel=true)。この変更に対応するバグレポート: 4607536 および 5008045。
J2SE 5.0 には、Java 2D 用の新しい OpenGL ベースのパイプラインが含まれています。このパイプラインにより、テキスト、イメージ、ライン、塗りつぶしのプリミティブなどの単純なレンダリング操作と同様に、複雑な変換、ペイント、合成およびクリッピングなどの操作にもハードウェアの高速化が提供されます。このパイプラインは、Solaris、Linux、Microsoft Windows など、すべてのプラットフォームで利用可能で、現在のところ、デフォルトでは無効にされています。
メッセージを表示させないで OpenGL ベースのパイプラインを有効にするには、コマンド行に次のシステムプロパティーを指定します。
    -Dsun.java2d.opengl=true
OpenGL ベースのパイプラインが特定の 1 つのスクリーンに対して正常に初期化されたかどうかに関する、コンソールへの詳細な出力を行うには、大文字の T を使用して、「True」を指定します。
    -Dsun.java2d.opengl=True
Solaris/Linux の場合、最小の要件は次のとおりです。
Microsoft Windows の場合、最小の要件は次のとおりです。
Solaris SPARC プラットフォーム用の高速化 OpenGL ライブラリは、次の Sun のサイトから直接利用できます。
http://www.oracle.com/us/sun/index.htm 次の Sun のフレームバッファーは、OpenGL ベースの Java 2D パイプラインとともに機能します。Solaris x86 プラットフォーム用の高速化 OpenGL ライブラリは、Sun のサイトから利用することができません。ただし、Xi Graphics などのサードパーティーは、Solaris x86 用の OpenGL ライブラリをサポートします。
ほとんどの Linux ディストリビューションには、The Mesa 3D Graphics Library が含まれています。このライブラリは、OpenGL 仕様のソフトウェアの実装です。Mesa はハードウェア高速化を利用しないため、OpenGL ベースの Java 2D パイプラインは、デフォルトの X11 ベースのパイプラインに比べてかなり低速で実行されることになります。そのため、OpenGL ベースのパイプラインで適切なパフォーマンスを実現するために、使用しているグラフィックスハードウェア業者提供の、高速化 OpenGL ドライバをインストールすることをお勧めします。
次の Web サイトには、ダウンロード可能な高速化 OpenGL ドライバがあります。
OpenGL ベースのパイプラインで適切なパフォーマンスを実現するために、使用しているグラフィックスハードウェア業者提供の、高速化 OpenGL ドライバをインストールすることをお勧めします。次の Web サイトには、OpenGL ベースの Java 2D パイプラインとともに機能する、ダウンロード可能な高速化 OpenGL ドライバがあります。
注: Microsoft Windows で使用する Nvidia および ATI 両方の最新のドライバは、使用しているアプリケーションのレンダリング機能に悪影響を及ぼす可能性があることが確認されています。これらのドライバのバグについては現在調査中であり、将来ドライバを更新するときに解決できるように製造元と協働しています。
この変更に対応するバグレポート: 4641868 および 4683270
Solaris および Linux システムで、CUPS (共通 UNIX プリンタシステム) プリンタとして構成されたプリンタを使用できるようになりました。この拡張機能によって、ほとんどの PostScript プリンタとラスタプリンタも含めて、CUPS にサポートされるすべてのプリンタが、Java プラットフォームで使用できるようになりました。つまり、Linux とともに低価格のプリンタを簡単に使用できます。CUPS は、IPP (インターネットプリンティングプロトコル、Internet Printing Protocol) に基づいています。
詳細については、http://www.cups.org を参照してください。
この変更に対応するバグレポート: 4200154
2D の実装では、バイキュービック補間処理がサポートされるようになり、要求に応じていつでも使うことができます。以前のバージョンでは、RenderingHints クラスによって定義された VALUE_INTERPOLATION_BICUBIC ヒントが優先されず、代わりにバイリニア補間処理が使用されました。現在では、バイキュービックレンダリングのヒントが優先され、新しい定数の TYPE_BICUBIC が AffineTransformOp に追加されました。 
この変更に対応するバグレポート: 4390880 および 4468862
現在では、Type 1 フォントから Font オブジェクトを作成することと、Type 1 または TrueType フォントデータのどちらかを含むファイルから直接 Font オブジェクトを作成することが可能になりました。
この新しい機能をサポートするために、Font クラスには、ファイルから Font オブジェクトを作成する新しい  createFont メソッドがあります。既存の createFont メソッドは、ストリームから Font オブジェクトを作成します。新しい定数の Font.TYPE1_FONT で、どちらかの createFont メソッドに Type 1 フォントを指定します。
この変更に対応するバグレポート: 4641861
テキストレンダリングのコードに対する多くの内部的な変更によって、コードの堅牢さ、パフォーマンス、およびスケーラビリティーが著しく向上しました。
この変更に対応するバグレポート: 4097028
論理フォントを使用する 2D テキストレンダリングでは、多言語テキストをレンダリングするために、サポートされるすべての書記法がインストール済みのホスト OS フォントを利用できるようになりました。たとえば、タイ語のロケール環境で実行中でありながら韓国語のフォントがインストールされている場合は、タイ語と韓国語の両方がレンダリングされます。